To dość niejasne pytanie, ale na pytanie, na które nigdy nie czułem, odpowiedziano w zadowalający sposób, czytając o właściwym projekcie. Zasadniczo, gdy dowiadujesz się o programowaniu obiektowym, abstrakcji, faktorowaniu itp., Święty graal projektowania - i powód, dla którego zawsze twierdzą, że używasz danych technik programistycznych - jest taki, że twój …
Mam pytanie dotyczące „najlepszych praktyk” na temat OOP w C # (ale w pewnym sensie dotyczy to wszystkich języków). Zastanów się nad klasą biblioteki z obiektem, który ma być udostępniony publicznie, powiedzmy za pośrednictwem modułu dostępu do właściwości, ale nie chcemy, aby publiczność (ludzie używający tej klasy biblioteki) to zmieniła. …
Właśnie przeczytałem fragment książki „Growing Object-Oriented Software”, która wyjaśnia kilka powodów, dla których kpiny z konkretnej klasy nie są zalecane. Oto przykładowy kod testu jednostkowego dla klasy MusicCentre: public class MusicCentreTest { @Test public void startsCdPlayerAtTimeRequested() { final MutableTime scheduledTime = new MutableTime(); CdPlayer player = new CdPlayer() { @Override …
Moja mama zrobiła pracę magisterską w Fortranie, a teraz (ponad dekadę później) musi nauczyć się języka C ++ do symulacji płynów. Jest w stanie zrozumieć całe programowanie proceduralne, ale bez względu na to, jak bardzo staram się wytłumaczyć jej przedmioty, to się nie trzyma. (Dużo pracuję z Javą, więc wiem, …
Czy rozumiem poprawnie, że nie można przestrzegać zasady substytucji Liskowa w językach, w których obiekty mogą się sprawdzać, tak jak w przypadku języków pisanych kaczorkiem? Na przykład, w Ruby, jeśli klasa Bdziedziczy z klasy A, a następnie za każdy przedmiot xz A, x.classjedzie do powrotu A, ale jeśli xjest przedmiotem …
Mam dwa przedmioty reprezentujące „Bar / Klub” (miejsce, w którym pijesz / spędzasz czas z przyjaciółmi). W jednym scenariuszu potrzebuję nazwy paska, adresu, odległości, hasła W innym scenariuszu potrzebuję nazwy paska, adresu, adresu URL strony internetowej, logo Mam więc dwa obiekty reprezentujące to samo, ale z różnymi polami. Lubię używać …
Edytować: Aby uniknąć dalszych nieporozumień: nie mówię o usługach internetowych i tym podobnych. Mówię o wewnętrznej strukturze aplikacji, nie chodzi o to, jak komputery się komunikują. Chodzi o języki programowania, kompilatory i sposób rozszerzenia paradygmatu programowania imperatywnego. Oryginalny: W dziedzinie programowania imperatywnego w ciągu ostatnich 20 lat (lub więcej) widzieliśmy …
Czytam Obiekty PHP, Wzorce i Praktykę . Autor próbuje modelować lekcję na uczelni. Celem jest przedstawienie rodzaju lekcji (wykładu lub seminarium) oraz opłat za lekcję w zależności od tego, czy jest to lekcja godzinowa, czy stała. Tak więc wynik powinien być Lesson charge 20. Charge type: hourly rate. Lesson type: …
Obecnie zajmuję się programowaniem w środowisku akademickim, więc mogę korzystać z wszystkiego, co chcę. Korzystam z biblioteki grafów boost do kilku rzeczy i zastanawiam się, czy warto zainwestować w głębsze zrozumienie GP. Jestem ciekawy - czy programowanie ogólne (GP) jest często używane w przemyśle? Domyślam się, że większość programistów jest …
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 6 lat temu . Chcę dodać rejestrowanie do aplikacji, nad którą aktualnie pracuję. Wcześniej dodawałem rejestrowanie, to nie jest …
Uważam, że nawet podczas pracy ze strukturą MVC (np. CodeIgniter) regularnie uciekam się do przekazywania zagnieżdżonych tablic zamiast obiektów. To nie podąża za moim rozumieniem zorientowanego obiektowo. Na przykład, jeśli miałbym przenieść kod do Javy, nie marzyłbym o przekazywaniu tablic (lub wektorów lub cokolwiek) w ten sposób. Zastanawiałem się, czy …
Jest już dość pomocne pytanie w tym zakresie („ Wzory projektowe inne niż OOP? ”), Ale jestem bardziej ciekawy przejściowego punktu widzenia dla kogoś, kto dopiero zaczyna pracę z dynamicznymi i słabo typowanymi językami. To znaczy: załóżmy, że programuję w C ++, C # lub Javie od wielu lat i …
Przygotowuję prezentację, która pokazuje różnice między programowaniem strukturalnym a programowaniem obiektowym i chcę zilustrować, dlaczego ludzie potrzebują OOP, na przykładzie, w którym zastosowanie koncepcji OOP znacznie ułatwi kodowanie, dzięki czemu odbiorcy naprawdę poczują, że potrzebują OOP. Jakieś pomysły ??
Więc wciąż jestem na ogrodzeniu, czy mam ich używać, czy nie. Wydaje mi się, że jest to skrajne naruszenie enkapsulacji, jednak okazuje się, że jestem w stanie osiągnąć pewien stopień enkapsulacji, jednocześnie zyskując większą elastyczność w kodzie. Poprzednie projekty Java / Swing korzystałem do pewnego stopnia z klas zagnieżdżonych, jednak …
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 4 lata temu . jakie spostrzeżenia lub pytania doprowadziłyby cię do ustalenia umiejętności OOAD danej osoby.
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.