Zamknięte . To pytanie musi być bardziej skoncentrowane . Obecnie nie przyjmuje odpowiedzi. Chcesz poprawić to pytanie? Zaktualizuj pytanie, aby skupiało się tylko na jednym problemie, edytując ten post . Zamknięte 2 lata temu . Próbuję zrozumieć, w jaki sposób polimorfizm jest wykorzystywany w prawdziwym projekcie, ale mogę znaleźć tylko …
Nauczyłem się C # przez ostatnie sześć miesięcy i teraz zagłębiam się w Javę. Moje pytanie dotyczy tworzenia instancji (naprawdę w każdym języku), a więcej: zastanawiam się, dlaczego to zrobili w ten sposób. Weź ten przykład Person Bob = new Person(); Czy istnieje przyczyna dwukrotnego określenia obiektu? Czy kiedykolwiek będzie …
W większości kodu Java widzę, że ludzie deklarują takie obiekty Java: Map<String, String> hashMap = new HashMap<>(); List<String> list = new ArrayList<>(); zamiast: HashMap<String, String> hashMap = new HashMap<>(); ArrayList<String> list = new ArrayList<>(); Dlaczego preferuje się definiowanie obiektu Java za pomocą interfejsu, a nie implementacji, która będzie faktycznie używana?
Podejrzewam, że popełniłem tutaj błąd ucznia i szukam wyjaśnienia. Wiele klas w moim rozwiązaniu (C #) - śmiem twierdzić, że większość - skończyłem pisać odpowiedni interfejs. Np. Interfejs „ICalculator” i klasa „Calculator”, która go implementuje, nawet jeśli nigdy nie zastąpię tego kalkulatora inną implementacją. Ponadto większość z tych klas znajduje …
Od polimorfizmu na WIkipedii W informatyce polimorfizm to funkcja języka programowania, która umożliwia obsługę wartości różnych typów danych przy użyciu jednolitego interfejsu. Z pisania kaczek na Wikipedii W programowaniu komputerowym z obiektowymi językami programowania typowanie dynamiczne jest stylem dynamicznego pisania, w którym aktualny zestaw metod i właściwości obiektu określa prawidłową …
Rozważ dwóch projektantów interfejsu użytkownika, którzy chcą zaprojektować „atrakcyjne dla użytkownika” projekty. „Przyciąganie użytkownika” to koncepcja, która nie jest obiektywna i dotyczy wyłącznie projektantów. W ten sposób projektant A mógłby na przykład wybrać czerwony kolor, podczas gdy projektant B wybiera niebieski. Projektant A utwórz układ zupełnie inny niż projektant B …
Czy szukam skutecznego sposobu, który również nie jest obelgą, aby wprowadzić koncepcje OOP do istniejących członków zespołu? Moi koledzy z zespołu nie są nowi w językach OO. Robimy C ++ / C # od dawna, więc sama technologia jest znana. Jednak rozglądam się i bez większego wysiłku (głównie w formie …
Istnieje klasyczny problem OOP łączenia łańcuchów metod z metodami „pojedynczego punktu dostępu”: main.getA().getB().getC().transmogrify(x, y) vs main.getA().transmogrifyMyC(x, y) Pierwszy wydaje się mieć tę zaletę, że każda klasa odpowiada tylko za mniejszy zestaw operacji i czyni wszystko o wiele bardziej modułowym - dodanie metody do C nie wymaga żadnego wysiłku w A, …
W obecnej formie to pytanie nie pasuje do naszego formatu pytań i odpowiedzi. Oczekujemy, że odpowiedzi poparte będą faktami, referencjami lub wiedzą specjalistyczną, ale to pytanie prawdopodobnie będzie wymagało debaty, argumentów, ankiet lub rozszerzonej dyskusji. Jeśli uważasz, że to pytanie można poprawić i ewentualnie ponownie otworzyć, odwiedź centrum pomocy w …
Często słyszałem, jak mówiono, że obiekty nie zostały dostarczone pod względem ponownego wykorzystania kodu. Czy sie zgadzasz? Jeśli uważasz, że nie, dlaczego nie?
W Javie dostępne są cztery modyfikatory dostępu do metod: public - każda klasa może korzystać z tej metody. protected - klasy w tym samym pakiecie i podklasy w dowolnym pakiecie mogą korzystać z tej metody. private - tylko ta klasa może korzystać z tej metody. no modifier („pakiet prywatny”) - …
Po prostu przeczytaj te linie Jeśli Twoje dane mają charakter obiektowy, użyj magazynów obiektów („NoSQL”). Będą znacznie szybsze niż relacyjna baza danych. Jeśli Twoje dane mają charakter relacyjny, warto narzucić relacyjną bazę danych. od- http://seldo.com/weblog/2011/06/15/orm_is_an_antipattern Skąd więc mam wiedzieć, czy moje dane mają charakter relacyjny czy obiektowy?
Dylemat Czytałem wiele książek o najlepszych praktykach na temat praktyk zorientowanych obiektowo, a prawie każda książka, którą przeczytałem, miała tę część, w której mówiły, że enumy to zapach kodu. Myślę, że przegapili tę część, w której wyjaśniają, kiedy wyliczenia są ważne. Jako taki szukam wytycznych i / lub przypadków użycia, …
Zasada jednolitej odpowiedzialności stwierdza, że „klasa powinna mieć jeden powód zmiany”. We wzorze MVC zadaniem kontrolera jest mediacja między widokiem a modelem. Oferuje interfejs dla widoku do raportowania działań wykonanych przez użytkownika w GUI (np. Zezwalanie na widok do wywołania controller.specificButtonPressed()) i jest w stanie wywoływać odpowiednie metody w modelu …
Obecnie mam dwie klasy pochodzące, Ai B, że obaj mają równe wspólnego i próbuję ustalić, czy należy przejść do klasy podstawowej. Nigdy nie jest przywoływany z klasy podstawowej i powiedzmy, że jeśli w pewnym momencie drogi zostanie wyprowadzona inna klasa C, która nie ma _field1, to nie naruszono by zasady …
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.