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


1
Verwenden von Friend-Klassen, um private Member-Funktionen in C ++ zu kapseln - bewährte Methoden oder Missbrauch?
Ich bemerkte also, dass es möglich ist, das Einfügen privater Funktionen in Kopfzeilen zu vermeiden, indem man Folgendes ausführt: // In file pred_list.h: class PredicateList { int somePrivateField; friend class PredicateList_HelperFunctions; public: bool match(); } // In file pred_list.cpp: class PredicateList_HelperFunctions { static bool fullMatch(PredicateList& p) { return p.somePrivateField == …

6
DDD meets OOP: Wie implementiert man ein objektorientiertes Repository?
Eine typische Implementierung eines DDD-Repository sieht nicht besonders gut aus, zum Beispiel eine save()Methode: package com.example.domain; public class Product { /* public attributes for brevity */ public String name; public Double price; } public interface ProductRepo { void save(Product product); } Infrastrukturteil: package com.example.infrastructure; // imports... public class JdbcProductRepo implements …

4
Struktur mit unsinnigem Standardwert
In meinem System häufig mit Flughafen - Codes arbeiten I ( "YYZ", "LAX", "SFO", etc.), sind sie immer in dem exakt gleichen Format (3 Buchstaben, als Groß dargestellt). Das System verarbeitet in der Regel 25 bis 50 dieser (unterschiedlichen) Codes pro API-Anforderung, wobei insgesamt über tausend Zuweisungen vorgenommen werden. Sie …




1
Missbrauchen wir statische Methoden?
Vor ein paar Monaten habe ich angefangen, in einem neuen Projekt zu arbeiten, und als ich den Code durchgesehen habe, habe ich die Menge der verwendeten statischen Methoden gemerkt. In ihnen sind nicht nur Utility-Methoden collectionToCsvString(Collection<E> elements), sondern auch viele Geschäftslogiken enthalten. Als ich den Verantwortlichen nach den Hintergründen fragte, …




6
Wie vermeide ich Downcasting?
Meine Frage betrifft einen Sonderfall der Superklasse Animal. Meine AnimalDose moveForward()und eat(). Sealerstreckt Animal. Dogerstreckt Animal. Und es gibt ein besonderes Wesen , das auch erstreckt Animalgenannt Human. Humanimplementiert auch eine Methode speak()(nicht implementiert von Animal). In einer Implementierung einer abstrakten Methode, die akzeptiert, Animalmöchte ich die speak()Methode verwenden. Das …



2
Warum unterstützt Java keine private / geschützte Vererbung wie C ++? [geschlossen]
Aus heutiger Sicht passt diese Frage nicht zu unserem Q & A-Format. Wir erwarten, dass die Antworten durch Fakten, Referenzen oder Fachwissen gestützt werden, aber diese Frage wird wahrscheinlich Debatten, Argumente, Abstimmungen oder erweiterte Diskussionen hervorrufen. Wenn Sie der Meinung sind, dass diese Frage verbessert und möglicherweise erneut geöffnet werden …

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.