πŸ“
pypc-tlbx
  • py_poc_toolbox
  • pages
    • Sphinx
    • pre-commit
    • line_profiler
    • Postgres
    • ΠŸΠΈΡ‚ΠΎΠ½-ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ ΠΈ PyPI
    • ElasticSearch
    • Π Π°Π½Π΄ΠΎΠΌ
    • DDD
  • Devops
    • Supervisor
    • Jenkins
    • Docker
    • Jenkins + Docker
Powered by GitBook
On this page
  • Π‘ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠ΅ DDD
  • ΠœΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Ρ‹

Was this helpful?

  1. pages

DDD

PreviousΠ Π°Π½Π΄ΠΎΠΌNextSupervisor

Last updated 5 years ago

Was this helpful?

DDD - domain-driven-development - ΡΡ‚ΠΈΠ»ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, ΠΏΡ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ бизнСс Π»ΠΎΠ³ΠΈΠΊΠ° отдСляСтся ΠΎΡ‚ ΠΊΠΎΠ΄Π° прилоТСния, Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ раздСляя систСму Π½Π° слои. БизнСс Π»ΠΎΠ³ΠΈΠΊΠ° ΠΏΠΈΡˆΠ΅Ρ‚ΡΡ максимально понятной для экспСрта ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Π½ΠΎΠΉ области, ΠΊΠΎΠ΄ прилоТСния лишь Π΄Π΅Ρ€Π³Π°Π΅Ρ‚ эту бизнСс Π»ΠΎΠ³ΠΈΠΊΡƒ, Π½Π΅ зная Π½ΠΈΡ‡Π΅Π³ΠΎ ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ.

Π‘ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠ΅ DDD

  1. Entities - бизнСс сущности, Ρ‚ΠΎ Π²ΠΎΠΊΡ€ΡƒΠ³ Ρ‡Π΅Π³ΠΎ ΠΏΠΈΡˆΡƒΡ‚ΡΡ бизнСс сцСнарии

  2. Aggregates - Π°Π³Π³Ρ€Π΅Π³Π°Ρ‚Ρ‹ - сущности, ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… строятся Entities, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, для бизнСс сущности Π—Π°ΠΊΠ°Π·: ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ Π·Π°ΠΊΠ°Π·Π° Π±ΡƒΠ΄ΡƒΡ‚ являтся Π°Π³Π³Ρ€Π΅Π³Π°Ρ‚Π°ΠΌΠΈ

  3. Value Objects - лСгковСстныС сущности, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π΄Π°Ρ‚Π°, являСтся каркасом для Π°Π³Π³Ρ€Π΅Π³Π°Ρ‚ΠΎΠ²

  4. Factories - Ρ„Π°Π±Ρ€ΠΈΠΊΠΈ - Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎ ΠΏΠ°Ρ‚Ρ‚Π΅Ρ€Π½Π°ΠΌ Π€Π°Π±Ρ€ΠΈΡ‡Π½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΈ Π€Π°Π±Ρ€ΠΈΠΊΠ° - классы, ΠΈΠ½ΠΊΠ°ΠΏΡΡƒΠ»ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠ΅ созданиС сущностСй

  5. Services - сСрвисы - здСсь ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ бизнСс сцСнарии

  6. Repositories - Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ - абстракция Π½Π°Π΄ Π»ΡŽΠ±Ρ‹ΠΌ пСрсистСнцСм (Π±Π΄/celery-worker); Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² контСкстС Π±Π΄ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ΅Ρ‚ бизнСс-сущности Π² записи Π±Π΄ ΠΈ суСт ΠΈΡ… Π² Π±Π΄

ΠœΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Ρ‹

- видас ΠΏΡ€ΠΎ ddd Π² ΠΏΠΈΡ‚ΠΎΠ½Π΅

- Π΅Ρ‰Π΅ ΠΏΡ€ΠΎ ddd Π² ΠΏΠΈΡ‚ΠΎΠ½Π΅

- видас ΠΏΡ€ΠΎ ddd Π½Π° c#

- Π΅Ρ‰Π΅ ΠΏΡ€ΠΎ ddd Π½Π° c#

- ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° с ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Ρ‹ΠΌ описаниСм ΠΊΠ°ΠΊ всС устроСно

Борис Π¦Π΅ΠΌΠ°, Wargaming.net «Как ΠΌΡ‹ ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΠ»ΠΈ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π½Π°ΡˆΠΈΡ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ²Β»
Robert Smallshire - Domain Driven Design Patterns in Python
АлСксСй ΠœΠ΅Ρ€ΡΠΎΠ½ β€” Domain-driven design: Ρ€Π΅Ρ†Π΅ΠΏΡ‚ для ΠΏΡ€Π°Π³ΠΌΠ°Ρ‚ΠΈΠΊΠ°
Максим ΠΡ€ΡˆΠΈΠ½ΠΎΠ² β€” БыстрорастворимоС ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅
Modular Monolith with DDD