Bisher habe ich nur objektorientierte Programmiersprachen (C ++, Ruby, Python, PHP) verwendet und lerne jetzt C. Ich finde es schwierig, die richtige Art und Weise zu finden, Dinge in einer Sprache zu tun, für die es kein Konzept gibt 'Objekt'. Mir ist klar, dass es möglich ist, OOP-Paradigmen in C …
Wenn ich ein Objekt speichern und abrufen möchte, sollte ich eine andere Klasse erstellen, um damit umzugehen, oder wäre es besser, dies in der Klasse selbst zu tun? Oder vielleicht beides mischen? Was wird nach dem OOD-Paradigma empfohlen? Beispielsweise Class Student { public string Name {set; get;} .... public bool …
Ich fand dieses Zitat in " Die Freude an Clojure " auf S. 32, aber jemand hat mir letzte Woche beim Abendessen dasselbe gesagt und ich habe es auch an anderen Orten gehört: Ein Nachteil der objektorientierten Programmierung ist die enge Kopplung zwischen Funktion und Daten. Ich verstehe, warum unnötige …
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 …
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 …
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: …
Gibt es ein denkbares Entwurfsmuster für ein objektorientiertes Programm? Ich frage dies, weil ich vor kurzem eine Implementierung einer DoorKlasse mit a gesehen habe Lock. Es war Teil eines Tests und die Antwort besagte, dass der Code dem Null-Objektmuster folgt: class Lock { public: virtual void close() = 0; virtual …
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 …
Programmierung ist mir nicht fremd. Ich habe zuerst mit Markup angefangen (HTML, jetzt lach mich bitte nicht aus), als ich 12 war, und ein bisschen BASIC, als ich 13 war (ich wusste zu diesem Zeitpunkt viel über Flowcharts, Pseudocodes), aber dann wurde ich ermahnt Biologie in der High School und …
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 …
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 …
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 …
Ich schreibe ein Programm in Python, das im Grunde genommen Strings manipuliert, und ich habe mich gefragt, ob ich es mit OOP-Prinzipien machen soll oder nicht. Der Kunde hat mir gesagt, dass ihm der Code egal ist, er möchte nur, dass die Sache erledigt wird . Ich weiß, dass objektorientierter …
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, …
Sagen wir, ich habe eine CarKlasse: public class Car { public string Engine { get; set; } public string Seat { get; set; } public string Tires { get; set; } } Nehmen wir an, wir erstellen ein System für einen Parkplatz. Ich werde einen Großteil der CarKlasse verwenden, also …
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.