en
Eric Evans

Domain-Driven Design: Tackling Complexity in the Heart of Software

Повідомити про появу
Щоб читати цю книжку, завантажте файл EPUB або FB2 на Букмейт. Як завантажити книжку?
  • Кузнецов Фёдорцитує4 роки тому
    If you’re trying to add automation to complicated human enterprise, then your software cannot dodge this complexity—all it can do is control it.
  • Dauren Chapaevцитує4 роки тому
    Play with the model as you talk about the system. Describe scenarios out loud using the elements and interactions of the model, combining concepts in ways allowed by the model. Find easier ways to say what you need to say, and then take those new ideas back down to the diagrams and code.
  • Олег Мешечковцитує4 роки тому
    The greatest value of custom software comes from the total control of the CORE DOMAIN.
  • Олег Мешечковцитує4 роки тому
    Distillation is the process of separating the components of a mixture to extract the essence in a form that makes it more valuable and useful. A model is a distillation of knowledge. With every refactoring to deeper insight, we abstract some crucial aspect of domain knowledge and priorities.
  • Dauren Chapaevцитує4 роки тому
    A project faces serious problems when its language is fractured. Domain experts use their jargon while technical team members have their own language tuned for discussing the domain in terms of design.

    The terminology of day-to-day discussions is disconnected from the terminology embedded in the code (ultimately the most important product of a software project).

    And even the same person uses different language in speech and in writing, so that the most incisive expressions of the domain often emerge in a transient form that is never captured in the code or even in writing.

    Translation blunts communication and makes knowledge crunching anemic.

    Yet none of these dialects can be a common language because none serves all needs.
  • Dauren Chapaevцитує4 роки тому
    The heart of software is its ability to solve domain-related problems for its user.
  • Dauren Chapaevцитує4 роки тому
    The premise of this book is twofold:

    1.For most software projects, the primary focus should be on the domain and domain logic.

    2.Complex domain designs should be based on a model.

    Domain-driven design is both a way of thinking and a set of priorities, aimed at accelerating software projects that have to deal with complicated domains. To accomplish that goal, this book presents an extensive set of design practices, techniques, and principles.
  • Олег Мешечковцитує4 роки тому
    Generally speaking, there is a correspondence of one team per BOUNDED CONTEXT. One team can maintain multiple BOUNDED CONTEXTS, but it is hard (though not impossible) for multiple teams to work on one together
  • Олег Мешечковцитує4 роки тому
    It is important always to draw the CONTEXT MAP to reflect the current situation at any given time. Once that's done, though, you may very well want to change that reality. Now you can begin to consciously choose CONTEXT boundaries and relationships
  • Олег Мешечковцитує4 роки тому
    The FACADE does not change the model of the underlying system. It should be written strictly in accordance with the other system's model. Otherwise, you will at best diffuse responsibility for translation into multiple objects and overload the FACADE and at worst end up creating yet another model, one that doesn't belong to the other system or your own BOUNDED CONTEXT. The FACADE belongs in the BOUNDED CONTEXT of the other system. It just presents a friendlier face specialized for your needs
fb2epub
Перетягніть файли сюди, не більш ніж 5 за один раз