W tej serii postów na blogu Eric Lippert opisuje problem z projektowaniem obiektowym, wykorzystując jako przykład kreatorów i wojowników: abstract class Weapon { } sealed class Staff : Weapon { } sealed class Sword : Weapon { } abstract class Player { public Weapon Weapon { get; set; } } …
Tworzę interfejs w Javie dla niestandardowej procedury obsługi błędów. Chcę przekazać obiekt błędu argumentu, ale potrzebuję go, aby był dzieckiem Exceptionklasy. Czy mogę używać mojej zdefiniowanej nazwy klasy w interfejsie? Czy nie zmniejszy to interfejsu, ponieważ nie będzie zależny od żadnej implementacji? Próbuję zrobić coś takiego: public class CustomException { …
Z Agile Software Development, zasad, wzorców i praktyk: Pearson New International Edition : Czasami metody przywoływane przez różne grupy klientów nakładają się. Jeśli nakładanie się jest niewielkie, interfejsy dla grup powinny pozostać osobne. Wspólne funkcje powinny być deklarowane we wszystkich nakładających się interfejsach. Klasa serwera odziedziczy wspólne funkcje z każdego …
Myślałem, że jednym z podstawowych elementów OOP jest to, że mamy przedmioty, którymi jesteśmy zainteresowani, a następnie wysyłamy do nich wiadomości. Może więc wydawać się naturalne, że mam kolekcję przedmiotów i muszę je ułożyć w jeden sznurek, aby to zrobić: ["x", "o", "o"].join(" | ") # joining a tic-tac-toe row …
Tak, diagramy mogą być czasami nieodpowiednie. Kiedy są nieodpowiednie? Kiedy tworzysz je bez kodu, aby je zweryfikować, a następnie zamierzasz ich przestrzegać. Nie ma nic złego w rysowaniu diagramu, aby zbadać pomysł. Zwinne tworzenie oprogramowania: zasady, wzorce i praktyki - Robert C. Martin Co on dokładnie przez to rozumie? Czy …
W praktyce oznacza to użycie niestandardowego (niezmiennego) w classstosunku do stringjakiegoś innego rodzaju prymitywnego. Przykłady: Publikowanie: międzynarodowy standardowy numer książki. Finanse: międzynarodowy numer identyfikacyjny papierów wartościowych. Zalety: Może zapewnić format identyfikatora. Zostaje pierwszorzędnym członkiem modelu. Niedogodności: Dodaje tarcie związane z trwałością (np. Entity Framework). Więcej kodów.
Mam nadzieję, że te kłótnie wyjaśnią moje pytanie - jednak całkowicie zrozumiem, jeśli nie, więc daj mi znać, jeśli tak jest, a ja postaram się wyjaśnić. Poznaj BoxPong , bardzo prostą grę, którą stworzyłem, aby zapoznać się z tworzeniem gier obiektowych. Przeciągnij pole, aby kontrolować piłkę i zbierać żółte rzeczy. …
Widziałem dyskusję przy tym pytaniu dotyczącą sposobu tworzenia instancji klasy implementującej z interfejsu. W moim przypadku piszę bardzo mały program w Javie, który korzysta z instancji TreeMapi, zgodnie z opinią wszystkich, powinien być utworzony w następujący sposób: Map<X> map = new TreeMap<X>(); W moim programie wywołuję funkcję map.pollFirstEntry(), która nie …
Celem mojego zadania jest zaprojektowanie małego systemu, który może uruchamiać zaplanowane zadania cykliczne. Powtarzającym się zadaniem jest coś takiego: „wysyłaj e-maile do administratora co godzinę od 8:00 do 17:00, od poniedziałku do piątku”. Mam klasę podstawową o nazwie RecurringTask . public abstract class RecurringTask{ // I've already figured out this …
W teorii języków programowania typ jest zbiorem wartości. Np. Typ „int” jest zbiorem wszystkich wartości całkowitych. W językach OOP klasa jest typem, prawda? Gdy klasa jest zdefiniowana z więcej niż jednym członkiem, np class myclass{ int a; double b; } Mówiąc o klasie, mamy na myśli „ (a,b)gdzie ajest liczbą …
Gdy czytam niektóre podręczniki algorytmów, są one pełne sprytnych procedur dla niektórych problemów (sortowanie, najkrótsza ścieżka) lub niektórych ogólnych metod (algorytmy rekurencyjne, dzielenie i podbijanie, programowanie dynamiczne ...). Znalazłem tam niewiele śladów programowania obiektowego; (Dlaczego są bardziej zorientowane na procedury?). Potem pomyślałem: Jaki jest związek między algorytmami a OOP? Czy …
Mam klasy, która ma trzy metody A(), B()i C(). Te metody modyfikują własną instancję. Podczas gdy metody muszą zwracać instancję, gdy instancja jest osobną kopią (tak jak Clone()), mam wolny wybór do zwrócenia voidlub tej samej instancji ( return this;) podczas modyfikowania tej samej instancji w metodzie i nie zwracania …
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 5 lat temu . Rozumiem pojęcie obiektu i jako programista Java czuję, że paradygmat OO przychodzi mi w praktyce …
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ę się nauczyć OOP. Znam Python i wiem bardzo mało rzeczy na temat OOP. Ale …
Myślałem dziś wieczorem, zastanawiając się nad aplikacją, którą muszę zmienić i przyszło mi to do głowy. Entity Framework Entities to POCO (Plain old CLR Objects), a modele używane w ASP.NET MVC są zwykle również POCO. Zasadniczo oznacza to tylko właściwości, bez metod. Teraz programowanie OO normalnie pozwala obiektowi obudować jego …
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.