Projektowanie zorientowane na domeny (DDD) to podejście do tworzenia oprogramowania o złożonych potrzebach poprzez połączenie wdrożenia z ewoluującym modelem.
Przedmówię to pytanie, mówiąc, że jestem stosunkowo nowy w DDD, więc mogę popełnić tutaj kilka podstawowych błędów! Pracuję nad projektem, który obejmuje pojęcia rachunków i transakcji (w sensie finansowym). Konto może zawierać wiele Transakcji. Wydaje mi się, że zarówno Konto, jak i Transakcja to Podmioty, a Konto to Łączny katalog …
Kiedy po raz pierwszy dowiedziałem się o Domain Driven Design, zapoznałem się również z repozytorium i wzorcami jednostek pracy, które kiedyś wydawały się być na najwyższym poziomie dla fajnych dzieciaków, które rzucały zapytania SQL, takie jak jaskiniowcy, na bazy danych. Im bardziej zagłębiłem się w ten temat, tym bardziej dowiedziałem …
Naprawdę podoba mi się pomysł projektowania opartego na domenach, ale ucząc się Go, zastanawiam się, czy istnieje odpowiednik DDD, który jest przeznaczony dla bardziej funkcjonalnego języka?
Jest to nieco podobne do tego pytania, ale bardziej ogólne. Ogólnie rzecz biorąc, czy w przypadku ORM, takich jak EF 4.1 obsługujących POCO, ma sens, aby jednostki domeny były obiektami utrwalonymi w bazie danych? W przypadku starszych ORM, takich jak EF 4 lub Linq-to-SQL, „obiekty bazy danych” były generowane automatycznie …
Studiowałem DDD i obecnie staram się znaleźć sposób na zastosowanie tych koncepcji w rzeczywistym kodzie. Mam około 10 lat doświadczenia w warstwie N, więc bardzo prawdopodobne jest, że walczę z tym, że mój model mentalny jest zbyt powiązany z tym projektem. Stworzyłem aplikację sieci Web Asp.NET i zaczynam od prostej …
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 …
Lubię to: Campaign: type: object properties: id: type: string description: "A GUID identifier" referenceId: type: string description: "A consumers identifier they have used to map their own systems logic to this object." name: type: string description: "'Great Campaign 2017' as an example" Jestem zaniepokojony referencją . Domena systemowa to platforma, …
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ąż …
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.
Oto uproszczony wymóg: Użytkownik tworzy Questionz wieloma Answers. Questionmusi mieć co najmniej jeden Answer. Wyjaśnienie: pomyśl Questioni Answerjak w teście : jest jedno pytanie, ale kilka odpowiedzi, z których kilka może być poprawnych. Użytkownik jest aktorem, który przygotowuje ten test, dlatego tworzy pytania i odpowiedzi. Staram się modelować ten prosty …
Przeczytałem niezliczoną liczbę postów na temat różnic między obiektami a obiektami Value i chociaż myślę, że przynajmniej koncepcyjnie rozumiem, jak te dwie rzeczy się różnią, wydaje się, że w niektórych z tych postów autorzy uważają określoną koncepcję domeny za VO po prostu dlatego, że jest niezmienny (a zatem jego stan …
Zaczynam od DDD i rozumiem, że do zapewnienia spójności ponadnarodowej używa się zagregowanych korzeni. Nie powinniśmy modyfikować wielu agregatów w jednej usłudze aplikacji. Chciałbym jednak wiedzieć, jak poradzić sobie z następującą sytuacją. Mam zagregowany katalog główny o nazwie Produkty. Istnieje również zagregowany katalog główny o nazwie Grupa. Oba mają identyfikatory …
Po przeczytaniu kilku artykułów o odnawialny vs iniekcyjne obiektów i jak te pojęcia odnoszą się do usług DDD jest, podmiotów i przedmiotów wartości, pozostało mi pewne wątpliwości dotyczące korzystania newables w moim kodu szczególnie w moich testów jednostkowych. Głównymi kandydatami na newables były obiekty Entities i Value, co oznacza, że …
Mam problem z narysowaniem wyraźnej linii między prezentacją a warstwą aplikacji w projektowaniu opartym na domenach. Gdzie powinny iść pliki Kontrolery, Widoki, Układy, JavaScript i CSS? Czy jest to warstwa aplikacji czy prezentacji? A jeśli wszystkie pójdą razem na tej samej warstwie, co zawiera ta druga? Czy to jest puste
Oto mały problem Posiadaj obiekt z obiektem wartości. Żaden problem. Zamieniam obiekt wartości na nowy, a następnie nhibernate wstawia nową wartość i osierocam starą, a następnie usuwa ją. Ok, to jest problem. Ubezpieczony jest moją jednostką w mojej domenie. Ma zbiór adresów (obiekty wartości). Jednym z adresów jest MailingAddress. Kiedy …
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.