Categories
Ebooks
-
Business and economy
- Bitcoin
- Businesswoman
- Coaching
- Controlling
- E-business
- Economy
- Finances
- Stocks and investments
- Personal competence
- Computer in the office
- Communication and negotiation
- Small company
- Marketing
- Motivation
- Multimedia trainings
- Real estate
- Persuasion and NLP
- Taxes
- Social policy
- Guides
- Presentations
- Leadership
- Public Relation
- Reports, analyses
- Secret
- Social Media
- Sales
- Start-up
- Your career
- Management
- Project management
- Human Resources
-
For children
-
For youth
-
Education
-
Encyclopedias, dictionaries
-
E-press
- Architektura i wnętrza
- Biznes i Ekonomia
- Home and garden
- E-business
- Finances
- Personal finance
- Business
- Photography
- Computer science
- HR & Payroll
- Computers, Excel
- Accounts
- Culture and literature
- Scientific and academic
- Environmental protection
- Opinion-forming
- Education
- Taxes
- Travelling
- Psychology
- Religion
- Agriculture
- Book and press market
- Transport and Spedition
- Healthand beauty
-
History
-
Computer science
- Office applications
- Data bases
- Bioinformatics
- IT business
- CAD/CAM
- Digital Lifestyle
- DTP
- Electronics
- Digital photography
- Computer graphics
- Games
- Hacking
- Hardware
- IT w ekonomii
- Scientific software package
- School textbooks
- Computer basics
- Programming
- Mobile programming
- Internet servers
- Computer networks
- Start-up
- Operational systems
- Artificial intelligence
- Technology for children
- Webmastering
-
Other
-
Foreign languages
-
Culture and art
-
School reading books
-
Literature
- Antology
- Ballade
- Biographies and autobiographies
- For adults
- Dramas
- Diaries, memoirs, letters
- Epic, epopee
- Essay
- Fantasy and science fiction
- Feuilletons
- Work of fiction
- Humour and satire
- Other
- Classical
- Crime fiction
- Non-fiction
- Fiction
- Mity i legendy
- Nobelists
- Novellas
- Moral
- Okultyzm i magia
- Short stories
- Memoirs
- Travelling
- Narrative poetry
- Poetry
- Politics
- Popular science
- Novel
- Historical novel
- Prose
- Adventure
- Journalism, publicism
- Reportage novels
- Romans i literatura obyczajowa
- Sensational
- Thriller, Horror
- Interviews and memoirs
-
Natural sciences
-
Social sciences
-
School textbooks
-
Popular science and academic
- Archeology
- Bibliotekoznawstwo
- Cinema studies
- Philology
- Polish philology
- Philosophy
- Finanse i bankowość
- Geography
- Economy
- Trade. World economy
- History and archeology
- History of art and architecture
- Cultural studies
- Linguistics
- Literary studies
- Logistics
- Maths
- Medicine
- Humanities
- Pedagogy
- Educational aids
- Popular science
- Other
- Psychology
- Sociology
- Theatre studies
- Theology
- Economic theories and teachings
- Transport i spedycja
- Physical education
- Zarządzanie i marketing
-
Guides
-
Game guides
-
Professional and specialist guides
-
Law
- Health and Safety
- History
- Road Code. Driving license
- Law studies
- Healthcare
- General. Compendium of knowledge
- Academic textbooks
- Other
- Construction and local law
- Civil law
- Financial law
- Economic law
- Economic and trade law
- Criminal law
- Criminal law. Criminal offenses. Criminology
- International law
- International law
- Health care law
- Educational law
- Tax law
- Labor and social security law
- Public, constitutional and administrative law
- Family and Guardianship Code
- agricultural law
- Social law, labour law
- European Union law
- Industry
- Agricultural and environmental
- Dictionaries and encyclopedia
- Public procurement
- Management
-
Tourist guides and travel
- Africa
- Albums
- Southern America
- North and Central America
- Australia, New Zealand, Oceania
- Austria
- Asia
- Balkans
- Middle East
- Bulgary
- China
- Croatia
- The Czech Republic
- Denmark
- Egipt
- Estonia
- Europe
- France
- Mountains
- Greece
- Spain
- Holand
- Iceland
- Lithuania
- Latvia
- Mapy, Plany miast, Atlasy
- Mini travel guides
- Germany
- Norway
- Active travelling
- Poland
- Portugal
- Other
- Russia
- Romania
- Slovakia
- Slovenia
- Switzerland
- Sweden
- World
- Turkey
- Ukraine
- Hungary
- Great Britain
- Italy
-
Psychology
- Philosophy of life
- Kompetencje psychospołeczne
- Interpersonal communication
- Mindfulness
- General
- Persuasion and NLP
- Academic psychology
- Psychology of soul and mind
- Work psychology
- Relacje i związki
- Parenting and children psychology
- Problem solving
- Intellectual growth
- Secret
- Sexapeal
- Seduction
- Appearance and image
- Philosophy of life
-
Religion
-
Sport, fitness, diets
-
Technology and mechanics
Audiobooks
-
Business and economy
- Bitcoin
- Businesswoman
- Coaching
- Controlling
- E-business
- Economy
- Finances
- Stocks and investments
- Personal competence
- Communication and negotiation
- Small company
- Marketing
- Motivation
- Real estate
- Persuasion and NLP
- Taxes
- Guides
- Presentations
- Leadership
- Public Relation
- Secret
- Social Media
- Sales
- Start-up
- Your career
- Management
- Project management
- Human Resources
-
For children
-
For youth
-
Education
-
Encyclopedias, dictionaries
-
History
-
Computer science
-
Other
-
Foreign languages
-
Culture and art
-
School reading books
-
Literature
- Antology
- Ballade
- Biographies and autobiographies
- For adults
- Dramas
- Diaries, memoirs, letters
- Epic, epopee
- Essay
- Fantasy and science fiction
- Feuilletons
- Work of fiction
- Humour and satire
- Other
- Classical
- Crime fiction
- Non-fiction
- Fiction
- Mity i legendy
- Nobelists
- Novellas
- Moral
- Okultyzm i magia
- Short stories
- Memoirs
- Travelling
- Poetry
- Politics
- Popular science
- Novel
- Historical novel
- Prose
- Adventure
- Journalism, publicism
- Reportage novels
- Romans i literatura obyczajowa
- Sensational
- Thriller, Horror
- Interviews and memoirs
-
Natural sciences
-
Social sciences
-
Popular science and academic
-
Guides
-
Professional and specialist guides
-
Law
-
Tourist guides and travel
-
Psychology
- Philosophy of life
- Interpersonal communication
- Mindfulness
- General
- Persuasion and NLP
- Academic psychology
- Psychology of soul and mind
- Work psychology
- Relacje i związki
- Parenting and children psychology
- Problem solving
- Intellectual growth
- Secret
- Sexapeal
- Seduction
- Appearance and image
- Philosophy of life
-
Religion
-
Sport, fitness, diets
-
Technology and mechanics
Videocourses
-
Data bases
-
Big Data
-
Biznes, ekonomia i marketing
-
Cybersecurity
-
Data Science
-
DevOps
-
For children
-
Electronics
-
Graphics/Video/CAX
-
Games
-
Microsoft Office
-
Development tools
-
Programming
-
Personal growth
-
Computer networks
-
Operational systems
-
Software testing
-
Mobile devices
-
UX/UI
-
Web development
-
Management
Podcasts
- Ebooks
- Programming
- .NET - Programming
- Domain-Driven Design dla .NET Core. Jak rozwiązywać złożone problemy podczas projektowania architektury aplikacji
E-book details
Domain-Driven Design dla .NET Core. Jak rozwiązywać złożone problemy podczas projektowania architektury aplikacji
Wdrożenie zasad projektowania dziedzinowego (DDD) jest szansą na uzyskanie doskonałych wyników projektowania oprogramowania dla złożonych wymagań biznesowych. Aby podejście DDD ujawniło swoje zalety, konieczne jest zrozumienie potrzeb użytkowników i zidentyfikowanie właściwych problemów do rozwiązania. Dopiero potem można przystąpić do budowania modeli. Zaangażowanie zainteresowanych stron biznesowych w ten proces nie zawsze jednak przebiega efektywnie. Konieczne jest zrozumienie natury modeli dziedzinowych opartych na zachowaniu oraz tego, jaką rolę odgrywają one w budowie zwinnych i zmodularyzowanych systemów.
Dzięki tej książce zrozumiesz praktyczne znaczenie złożoności dziedziny i behawioralnych aspektów języka dziedzinowego. Poznasz podstawowe zasady DDD i nauczysz się używać takich narzędzi jak EventStorming, Event Sourcing i CQRS. Dowiesz się, jak stosuje się DDD do różnych stylów architektonicznych, takich jak REST, systemy reaktywne i mikrousługi. Nauczysz się pracować we frameworku .NET Core 2.2, aby przetłumaczyć modele dziedzinowe na wykonywalny kod C#, oraz Vue.js, aby zbudować frontend aplikacji. Nie zabrakło tutaj również zagadnień refaktoryzacji kodu, numerowania wersji zdarzeń i migracji. W rezultacie poszczególne zespoły w organizacji będą mogły pracować elastyczniej i efektywniej dzięki ulepszonym usługom i oddzielonym interakcjom.
W książce między innymi:
- angażowanie interesariuszy biznesowych do rozwiązywania złożoności dziedziny
- koncepcja kontekstu ograniczonego i agregatu
- projektowanie modeli tymczasowych na podstawie zachowania
- wzorzec CQRS i modele odczytu wykorzystujące rzutowania
- jednokierunkowy przepływ interfejsu użytkownika w Vue.js
- praktyczne stosowanie zasad projektowania dziedzinowego
Programowanie dziedzinowe: tak się trafia w sedno potrzeb!
O autorze 11
O recenzentach 13
Przedmowa 15
Rozdział 1. Dlaczego projektowanie dziedzinowe? 19
- Zrozumieć problem 20
- Przestrzeń problemu i przestrzeń rozwiązania 20
- Co poszło nie tak z wymaganiami? 22
- Jak radzić sobie ze złożonością? 23
- Rodzaje złożoności 23
- Klasyfikowanie złożoności 26
- Podejmowanie decyzji i błędy poznawcze 29
- Wiedza 32
- Wiedza dziedzinowa 32
- Unikanie ignorancji 34
- Podsumowanie 36
- Dalsza lektura 36
Rozdział 2. Język i kontekst 37
- Język wszechobecny 37
- Język dziedzinowy 38
- Wyraźne określanie rzeczy dorozumianych 41
- Język i kontekst 47
- Podsumowanie 51
Rozdział 3. EventStorming 53
- EventStorming 54
- Język modelowania 55
- Wizualizacja 57
- Porady dotyczące organizowania warsztatów EventStorming 58
- Kogo zaprosić? 58
- Przygotowanie przestrzeni 59
- Warsztaty 61
- Nasz pierwszy model 68
- Podsumowanie 73
- Dalsza lektura 74
Rozdział 4. Projektowanie modelu 75
- Model dziedziny 75
- Co reprezentuje model? 76
- Anemiczny model dziedziny 77
- Co należy uwzględnić w modelu dziedziny? 78
- EventStorming na poziomie projektu 82
- Poszerzanie wiedzy 82
- Przygotowanie do warsztatów 83
- Notacja rozszerzona 83
- Modelowanie dziedziny referencyjnej 88
- Podsumowanie 91
- Dalsza lektura 92
Rozdział 5. Implementacja modelu 93
- Wymagania techniczne 93
- Rozpoczęcie implementacji 94
- Tworzenie projektów 94
- Framework 95
- Przełożenie modelu na kod 96
- Encje 97
- Dodawanie zachowania 100
- Zapewnianie poprawności 101
- Ograniczenia dla wartości wejściowych 102
- Obiekty wartości 103
- Zdarzenia dziedzinowe w kodzie 127
- Zdarzenia dziedzinowe jako obiekty 128
- Generowanie zdarzeń 131
- Zdarzenia zmieniają stan 134
- Podsumowanie 139
Rozdział 6. Działanie za pomocą poleceń 141
- Wymagania techniczne 141
- Otoczenie modelu dziedziny 142
- Udostępnianie internetowego interfejsu API 142
- Warstwa aplikacji 149
- Obsługa poleceń 152
- Wzorzec procedury obsługi poleceń 152
- Usługa aplikacji 156
- Podsumowanie 165
Rozdział 7. Granica spójności 167
- Wymagania techniczne 167
- Spójność modelu dziedziny 168
- Granice transakcji 168
- Wzorzec Agregat 173
- Ochrona niezmienników 181
- Analiza ograniczeń dla polecenia 182
- Egzekwowanie reguł 189
- Encje wewnątrz agregatu 192
- Podsumowanie 201
Rozdział 8. Utrwalanie agregatów 203
- Wymagania techniczne 203
- Utrwalanie agregatów 204
- Repozytorium i jednostki pracy 204
- Implementacja dla RavenDB 206
- Implementacja Entity Framework Core 221
- Podsumowanie 232
Rozdział 9. CQRS - strona odczytu 233
- Wymagania techniczne 234
- Dodawanie profilów użytkowników 234
- Zagadnienia dotyczące dziedziny profilu użytkownika 235
- Strona aplikacji dla profilu użytkownika 242
- Strona zapytań 250
- CQRS i konflikt między odczytami a zapisami 250
- Zapytania i modele odczytu 252
- Implementowanie zapytań 254
- API zapytań 254
- Implementacja zapytań dla RavenDB 257
- Implementacja zapytań dla frameworku encji 264
- Podsumowanie 270
Rozdział 10. Event Sourcing 271
- Wymagania techniczne 272
- Dlaczego Event Sourcing 273
- Problemy z utrwalaniem stanu 273
- Czym jest Event Sourcing? 277
- Event Sourcing wokół nas 278
- Agregaty pozyskiwane ze zdarzeń 279
- Strumienie zdarzeń 279
- Magazyny zdarzeń 281
- Utrwalanie oparte na zdarzeniach 283
- Podsumowanie 299
- Dalsza lektura 300
Rozdział 11. Rzutowania i kwerendy 303
- Zdarzenia i zapytania 304
- Budowanie modeli odczytu na podstawie zdarzeń 305
- Rzutowania 306
- Subskrypcje 308
- Implementacja rzutowań 311
- Subskrypcje nadganiające 311
- Rzutowania międzyagregatowe 320
- Rzutowanie zdarzeń z dwóch agregatów 321
- Wzbogacanie modeli odczytu 331
- Kwerendowanie w rzutowaniach 332
- Konwertowanie zdarzeń 335
- Magazyn trwały 340
- Punkty kontrolne 340
- Utrwalanie modeli odczytu 344
- Zakończenie 349
- Podsumowanie 353
Rozdział 12. Kontekst ograniczony 355
- Pułapka pojedynczego modelu 356
- Zaczynaj od rzeczy małych 356
- Znowu złożoność 357
- Wielka kula błota 359
- Konstruowanie systemów 363
- Granice językowe 364
- Autonomia zespołu 369
- Podsumowanie 373
Rozdział 13. Podział systemu 375
- Kiedy, co i jak? 375
- Kiedy dzielić? 376
- Co dzielić? 378
- Jak podzielić? 380
- Różne spojrzenia na projektowanie systemów 382
- Proces projektowania 383
- Dzielenie encji 387
- Budowa systemu modułowego 387
- Moduły wewnątrz jednego rozwiązania 389
- Struktura modułu 392
- Budowanie systemu 403
- Podłączanie modułów do aplikacji 404
- Integracja 405
- Interfejs użytkownika 412
- Interfejs użytkownika ponad granicami 413
- Mikrousługi 417
- Kiedy nie stosować systemów rozproszonych 418
- Jak stosować systemy rozproszone 419
- Podsumowanie 422
- Dalsza lektura 423
- Title: Domain-Driven Design dla .NET Core. Jak rozwiązywać złożone problemy podczas projektowania architektury aplikacji
- Author: Alexey Zimarev
- Original title: Hands-On Domain-Driven Design with .NET Core: Tackling complexity in the heart of software by putting DDD principles into practice
- Translation: Lech Lachowski
- ISBN: 978-83-283-7766-0, 9788328377660
- Date of issue: 2021-07-19
- Format: Ebook
- Item ID: praddd
- Publisher: Helion