Pytania otagowane jako object-oriented-design

Projektowanie obiektowe to proces planowania systemu interakcji obiektów w celu rozwiązania problemu z oprogramowaniem.


3
Czy istnieje wzorzec projektowy do zarządzania głębokimi relacjami wiele do wielu?
Mam problem ze zdefiniowaniem tego wzorca danych, na który natrafiłem podczas pracy nad kilkoma aplikacjami. Składa się ona z: Typ obiektu, który składa się z wielu samych obiektów Drugi typ obiektu, w którym każda instancja „ma wiele” pierwszego obiektu I każdy z podobiektów pierwszego obiektu można modyfikować według każdego powiązania …

1
Kiedy powinienem podklasować wyjątek w Pythonie?
W moim kodzie jest około siedmiu miejsc, w których zgłaszam wyjątek. Wszystkie te wyjątki są traktowane tak samo: wydrukuj błąd do pliku dziennika, przywróć domyślny stan oprogramowania i zakończ. Podczas przeglądu kodu mój starszy inżynier, którego bardzo cenię, powiedział, że powinienem podklasować wszystkie te wyjątki. Jego argumentem jest to, że …

3
Czysty kod i obiekty hybrydowe oraz zazdrość o cechy
Niedawno dokonałem poważnych zmian w moim kodzie. Jedną z głównych rzeczy, które próbowałem zrobić, było podzielenie moich klas na obiekty danych i obiekty robocze. Zostało to zainspirowane między innymi przez tę sekcję Clean Code : Hybrydy To zamieszanie czasami prowadzi do niefortunnych hybrydowych struktur danych, które są w połowie obiektowymi …

2
Kiedy postępuję zgodnie z SRP, jak powinienem postępować z zatwierdzaniem i zapisywaniem jednostek?
Czytam ostatnio Clean Code i różne artykuły online o SOLID, a im więcej o tym czytam, tym bardziej czuję, że nic nie wiem. Załóżmy, że buduję aplikację internetową przy użyciu ASP.NET MVC 3. Powiedzmy, że mam UsersControllertaką Createakcję: public class UsersController : Controller { public ActionResult Create(CreateUserViewModel viewModel) { } …


5
Czy pogwałcenie zasady otwartego i zamkniętego aktualizowania stałej reprezentującej rzeczywistą wartość?
Mam klasę obliczającą roczny dochód netto pracowników. Ma stałą reprezentującą procent podatku. Ale pewnego dnia stawka podatku się zmieniła, więc muszę naprawić kod. Czy czynność ustalenia tej stałej wskazuje na naruszenie zasady otwartego-zamkniętego , ponieważ postuluje, że klasa powinna być zamknięta na modyfikacje?


2
Czy interfejs tylko pobierający ma zapach kodu?
(Widziałem to pytanie , ale pierwsza odpowiedź dotyczy bardziej właściwości automatycznych niż projektowania, a druga mówi, że ukryj kod przechowywania danych przed konsumentem , czego nie jestem pewien, czy tego chcę / mój kod robi, więc chciałbym usłyszeć inną opinię) Mam dwóch bardzo podobnych podmiotów, HolidayDiscountoraz RentalDiscount, że stanowią rabaty …


4
Podejście DDD do podstawowych operacji CRUD w złożonej aplikacji zorientowanej na domenę
Moja firma przepisuje naszą aplikację internetową od zera. Jest to aplikacja dla dużych przedsiębiorstw ze złożoną domeną w branży finansowej. Używamy ORM (Entity Framework) do utrwalania. Zasadniczo połowa naszych aplikacji skupia się na gromadzeniu nieprzetworzonych danych od użytkownika, przechowywaniu ich, a następnie druga połowa aplikacji, która zawiera większość naszej rzeczywistej …

1
Logika biznesowa a warstwa usług
Przeczytałem tę odpowiedź: https://softwareengineering.stackexchange.com/a/234254/173318 proszę o poprawienie mojego zrozumienia. Reguły biznesowe odnoszą się do listy etapów biznesowych w świecie rzeczywistym (bez kodów). Logika biznesowa odnosi się do procesu przekształcania reguł biznesowych w kody i tych grup / rodzajów kodów adresowanych jako „Logika biznesowa”. Do czego służy warstwa usługi? jeśli przeczytam …


4
Jak jasno zdefiniować granice ograniczonego kontekstu
Po około miesiącu czytania i poszukiwania DDD postanowiłem rozpocząć własny projekt i stworzyłem DDD z tymi ograniczonymi kontekstami> Klienci Produkty Zamówienia Dane do faktury Każdy ograniczony kontekst ma spoczynkowy interfejs API jako warstwę prezentacji, warstwę domeny, warstwę trwałą. Jak na razie kod działa płynnie, ale pochodząc ze świata monolitycznego, wciąż …

1
Kiedy stosować cechy, a nie dziedziczenie i kompozycję?
Istnieją trzy powszechne sposoby AFAIK na wdrożenie wielokrotnego użytku, jeśli chodzi o OOP Dziedziczenie: zwykle w celu przedstawienia związku jest (kaczka jest ptakiem) Skład: zwykle reprezentuje relację „ma związek” (samochód ma silnik) Cechy (np. Słowo kluczowe cecha w PHP): ... naprawdę nie jestem tego pewien Chociaż wydaje mi się, że …

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.