Als «object-oriented» getaggte Fragen

Eine Methode, mit der ein System als eine Reihe von Objekten modelliert werden kann, die modular gesteuert und bearbeitet werden können




7
Wie kann ich meine Fortschritte als Junior-Einzelentwickler überprüfen lassen? [Geschlossen]
Ich arbeite derzeit für eine 2-Personen-Firma als Hauptentwickler. Mein Chef holt die Kunden, verspottet einige PNG-Designvorlagen und übergibt sie mir. Dieses System hat gut funktioniert und ich genieße es wirklich. Die Arten von Projekten, an denen ich arbeite, sind für kleine und mittlere Unternehmen bestimmt und sie möchten normalerweise ein …

5
ID oder Objekt übergeben?
Soll der Parameter beim Bereitstellen einer Geschäftslogikmethode zum Abrufen einer Domänenentität ein Objekt oder eine ID akzeptieren? Zum Beispiel sollten wir dies tun: public Foo GetItem(int id) {} oder dieses: public Foo GetItem(Foo foo) {} Ich glaube an die Weitergabe von Objekten in ihrer Gesamtheit, aber was ist mit diesem …

11
Nur-Konstruktor-Unterklassen: Ist dies ein Anti-Pattern?
Ich hatte eine Diskussion mit einem Kollegen, und es kam zu widersprüchlichen Vorstellungen über den Zweck der Unterklassenbildung. Meine Intuition ist, dass wenn eine primäre Funktion einer Unterklasse darin besteht, einen begrenzten Bereich möglicher Werte ihrer Eltern auszudrücken, es wahrscheinlich keine Unterklasse sein sollte. Er argumentierte für die gegenteilige Intuition: …


11
Sind abstrakte Klassen / Methoden überholt?
Ich habe viele abstrakte Klassen / Methoden erstellt. Dann habe ich angefangen, Schnittstellen zu verwenden. Jetzt bin ich mir nicht sicher, ob Interfaces abstrakte Klassen nicht überflüssig machen. Sie benötigen eine vollständig abstrakte Klasse? Erstellen Sie stattdessen eine Schnittstelle. Sie benötigen eine abstrakte Klasse mit einer Implementierung? Erstellen Sie eine …


5
Wie definiert man, dass eine Methode eine stärkere Verpflichtung überschreiben kann als die Definition, dass eine Methode aufgerufen werden kann?
Von: http://www.artima.com/lejava/articles/designprinciples4.html Erich Gamma: Ich denke, das stimmt auch nach zehn Jahren noch. Vererbung ist eine coole Möglichkeit, das Verhalten zu ändern. Aber wir wissen, dass es spröde ist, weil die Unterklasse leicht Annahmen über den Kontext treffen kann, in dem eine Methode aufgerufen wird, die sie überschreibt. Aufgrund des …

8
Sollten die Fähigkeiten eines Objekts ausschließlich durch die von ihm implementierten Schnittstellen identifiziert werden?
Mit isdem instanceofOperator von C # und dem Operator von Java können Sie auf die von einer Objektinstanz implementierte Schnittstelle (oder, noch schlimmer, ihre Basisklasse) verzweigen. Ist es angemessen, diese Funktion für Verzweigungen auf hoher Ebene zu verwenden, basierend auf den Fähigkeiten, die eine Schnittstelle bietet? Oder sollte eine Basisklasse …

2
Warum definieren Methoden mit einer unbegrenzten Anzahl von Parametern häufig Überladungen mit weniger Parametern?
Beispielsweise weist die System.IO.Path.CombineMethode in .NET die folgenden Überladungen auf: Combine(params String[]) Combine(String, String) Combine(String, String, String) Combine(String, String, String, String) Was ist der Sinn der letzten drei? Die erste würde sie alle abdecken, als ob Sie genau hinschauen, verwendet es das paramsSchlüsselwort. Das Argument der Abwärtskompatibilität würde nur die …


5
Wann sollte ich eine Java-Swing-Klasse erweitern?
Nach meinem derzeitigen Verständnis der Vererbungsimplementierung sollte eine Klasse nur erweitert werden, wenn eine IS-A- Beziehung vorhanden ist. Wenn die übergeordnete Klasse über spezifischere untergeordnete Typen mit unterschiedlicher Funktionalität verfügen kann, jedoch gemeinsame, im übergeordneten Element abstrahierte Elemente aufweist. Ich stelle dieses Verständnis in Frage, weil mein Java-Professor uns empfiehlt, …


Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.