In dieser Reihe von Blog-Posts beschreibt Eric Lippert ein Problem im objektorientierten Design am Beispiel von Zauberern und Kriegern. abstract class Weapon { } sealed class Staff : Weapon { } sealed class Sword : Weapon { } abstract class Player { public Weapon Weapon { get; set; } } …
Ich bin in letzter Zeit besorgt über die Verwendung von abstrakten Klassen. Manchmal wird im Voraus eine abstrakte Klasse erstellt, die als Vorlage für die Funktionsweise der abgeleiteten Klassen dient. Das bedeutet mehr oder weniger, dass sie einige Funktionen auf hoher Ebene bieten, aber bestimmte Details auslassen, die von abgeleiteten …
Ich erstelle eine Schnittstelle in Java für die benutzerdefinierte Fehlerbehandlung. Ich möchte ein Argumentfehlerobjekt übergeben, aber ich brauche es, um ein Kind der ExceptionKlasse zu sein. Ist es in Ordnung, meinen definierten Klassennamen in einer Schnittstelle zu verwenden? Wird es nicht weniger zu einer Schnittstelle, da es nicht von einer …
Ich dachte, einer der Eckpfeiler von OOP ist, dass wir Objekte haben, mit denen wir uns befassen möchten, und dann senden wir ihnen Nachrichten. Es mag also natürlich erscheinen, dass ich eine Sammlung von Gegenständen habe und sie in eine Zeichenfolge einfügen muss, um dies zu tun: ["x", "o", "o"].join(" …
Aus agiler Softwareentwicklung, Prinzipien, Mustern und Praktiken: Pearson New International Edition : Manchmal überschneiden sich die von verschiedenen Gruppen von Clients aufgerufenen Methoden. Wenn die Überlappung gering ist, sollten die Schnittstellen für die Gruppen getrennt bleiben. Die gemeinsamen Funktionen sollten in allen überlappenden Schnittstellen deklariert werden. Die Serverklasse erbt die …
Ja, Diagramme können manchmal unangemessen sein. Wann sind sie unangemessen? Wenn Sie sie ohne Code erstellen, um sie zu validieren, und dann beabsichtigen, ihnen zu folgen. Es ist nichts Falsches daran, ein Diagramm zu zeichnen, um eine Idee zu untersuchen. Agile Softwareentwicklung: Prinzipien, Muster und Praktiken - Robert C. Martin …
In der Praxis bedeutet dies, einen benutzerdefinierten (unveränderlichen) classüber einen stringoder einen anderen primitiven Typ zu verwenden. Beispiele: Veröffentlichung: International Standard Book Number. Finanzen: Internationale Wertpapieridentifikationsnummer. Vorteile: Kann das Format eines Bezeichners sicherstellen. Wird ein erstklassiges Mitglied des Modells. Nachteile: Fügt Persistenzreibung hinzu (z. B. Entity Framework). Mehr Code.
Ich hoffe, dass diese Streifzüge meine Frage klarstellen werden - ich würde es vollkommen verstehen, wenn sie es nicht tun. Lassen Sie mich wissen, ob dies der Fall ist, und ich werde versuchen, mich klarer zu machen. Lernen Sie BoxPong kennen , ein sehr einfaches Spiel, das ich entwickelt habe, …
Ich habe die Diskussion bei dieser Frage gesehen, wie eine Klasse, die von einer Schnittstelle implementiert wird, instanziiert wird. In meinem Fall schreibe ich ein sehr kleines Programm in Java, das eine Instanz von verwendet TreeMap, und nach Meinung aller sollte es wie folgt instanziiert werden: Map<X> map = new …
Das Ziel meiner Aufgabe ist es, ein kleines System zu entwerfen, das geplante wiederkehrende Aufgaben ausführen kann. Eine wiederkehrende Aufgabe ist etwa "Senden Sie von Montag bis Freitag stündlich von 8.00 bis 17.00 Uhr eine E-Mail an den Administrator". Ich habe eine Basisklasse namens RecurringTask . public abstract class RecurringTask{ …
In der Programmiersprachentheorie ist ein Typ eine Menge von Werten. Beispielsweise ist der Typ "int" die Menge aller ganzzahligen Werte. In OOP-Sprachen ist eine Klasse ein Typ, oder? Wenn eine Klasse mit mehr als einem Mitglied definiert ist, z class myclass{ int a; double b; } Wenn wir über eine …
Während ich einige Algorithmenlehrbücher lese, sind sie voller cleverer Verfahren für einige Probleme (Sortieren, kürzester Weg) oder einige allgemeine Methoden (rekursive Algorithmen, Teilen und Erobern, dynamische Programmierung ...). Ich habe dort nur wenige Spuren objektorientierter Programmierung gefunden; (Warum sind sie eher prozessorientiert?). Dann dachte ich: Welche Beziehung besteht zwischen Algorithmen …
Ich habe eine Klasse, die drei Methoden hat A(), B()und C(). Diese Methoden ändern die eigene Instanz. Während die Methoden eine Instanz zurückgeben müssen, wenn die Instanz eine separate Kopie ist (genau wie Clone()), habe ich die freie Wahl, voiddieselbe Instanz ( return this;) zurückzugeben, wenn dieselbe Instanz in der …
Geschlossen . Diese Frage muss fokussierter sein . Derzeit werden keine Antworten akzeptiert. Möchten Sie diese Frage verbessern? Aktualisieren Sie die Frage so, dass sie sich nur auf ein Problem konzentriert, indem Sie diesen Beitrag bearbeiten . Geschlossen vor 5 Jahren . Ich verstehe das Konzept eines Objekts und als …
Was ist der empfohlene Ansatz für Hilfsfunktionen? Ich möchte eine Technik auswählen und damit arbeiten, um meine neue "Klasse" zu erstellen. Hier sind die Gestaltungsmöglichkeiten, über die ich nachgedacht habe: Option 1: Hilfsfunktion im äußeren Bereich, Aufruf mit Instanzkontext function createPane (pane) { // logic to create pane var proto …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.