Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Agile HsinChu ft. DDDTW - 初探 DDD

Agile HsinChu ft. DDDTW - 初探 DDD

簡單介紹 DDD ,讓大家能對 DDD 有初步的暸解

Avatar for river0825

river0825

June 20, 2021

More Decks by river0825

Other Decks in Programming

Transcript

  1. River Currently working as a dept lead, and also a

    speaker and volunteer in the DDDTW community. Years of software development experience. Like to study kinds of open source tools and bring them to work to increase efficiency. Believe that smart laziness is the most important characteristic of engineers. About Me
  2. Ubiquitous Language Programmers should speak the language of domain experts

    to avoid miscommunication, delays, and errors. To avoid mental translation between domain language and code, design your software to use the language of the domain. Reflect in code how users of the software think and speak about their work. The Art of Agile Development - James Shore & Shane Warden
  3. Domain Model 領域模型 //type 1 patient.setShotType(ShotType.TYPE_FLU); patient.setDose(dose); patient.setNurse(nurse); //type 2

    patient.giveCOVIDShot(); //type 3 Vacine vaccine = vaccines.standarCOVIDDose(); nurse.administerVaccine(patient, vaccine); Nurses administer COVID-19 vaccines to patients in standard doses. Nurse Vaccines Patient
  4. Subdomain 子領域 Core Subdomain The interesting problems. Supporting Subdomain The

    boring problems. Generic Subdomain The solved Problems
  5. Bounded Context - 提供完整的語意脈絡 The setting in which a word

    or a statement appears that determines its meaning. 一個可以讓身處其中的單字或句子獲 得完整意義的環境。
  6. DDD The First 15 Years Domain-Driven Design - Eric Evans

    Implementing Domain-Driven Design - Vaughn Vernon IT 邦幫忙鐵人賽 Think in Domain-Driven Design - Fong 複雜軟件設計之道 領域驅動設計 全面解析與實戰 - 彭晨陽 Introducing EventStorming - Alberto Brandolini Domain Storytelling - Stefan Hofer / Henning Schwentner Reference