NET Domain Driven Design Combat series summary One, quote
In fact, I've seen a lot of books about domain-driven design last year, including Microsoft. NET Enterprise Application framework design, domain driven Design C # 2008 implementation, domain driven design: Software core complexity response, domain driven design and ASP. But last year's study was limited to reading, when it looked down that the field-driven design was not so difficult, And feel that some areas of the drive design content is not good, but feel a little flashy feeling, so last year also gave up the domain-driven design series to share, but to this year, in the blog park to see there are many people writing field-driven articles, as well as the introduction of the field-driven design related benefits, this time I think, Is the domain-driven design really that good? But I do not feel good, at this time I think I have no actual combat without deep feelings? That's why I picked up the field-driven design in March this year, and I'm going to share a series of articles about domain-driven design implementations.
Second, all the thematic catalogue of this series
At the beginning of the plan to write, I thought the domain-driven design related theoretical knowledge of good, but when the real intention to write, found that the knowledge before the reserve almost forget almost, but only to re-pick up the book to review again, but this review quickly, because before have already read an article. Here to share is to tell you that there is no real practice of the things are easy to forget, then more determined I want to write this series of articles. This is what I have always insisted on writing this series of power. Now that the series is over, I do experience the beauty of domain-driven design, and the development and change of software design today. Here is a list of all the topics in this series, in order to help you better collect and index yourself, the experience of practice will be shared in the next section.
[. NET domain driven design Combat series] topic one: Pre-preparation EF Codefirst
[. NET domain driven design Combat Series] topic two: Building an online bookstore with a service-oriented architecture based on domain-driven design
[. NET domain driven design Combat series] Topic III: Pre-preparation of the statute model (specification pattern)
[. NET domain-driven Design Combat series] Topic IV: Pre-Preparation Work unit mode (unit of Works)
[. NET domain-driven Design Combat Series] Topic V: Online Bookstore Protocol model, the introduction of work unit mode and the realization of shopping cart
[. NET domain driven design Combat series] topic Six: DDD Practice case: The realization of order function in the online bookstore
[. NET domain-driven Design Combat series] Topic VII: DDD Practice Case: Introducing event-driven and middleware mechanisms to implement background management functions
[. NET domain driven design Combat series] Topic eight: DDD Case: Online Bookstore implementation of distributed Message Queuing and distributed cache
[. NET domain driven design Combat series] Topic IX: DDD Case: Online bookstore AOP and site map implementation
[. NET domain driven design Combat series] Topic Ten: DDD Extension content: Comprehensive analysis of CQRS pattern implementation
Iii. Summary
Through the practice of field-driven design, I have a clear understanding of the domain-driven design and shortcomings. Not all software is suitable for application domain drivers, such as in some companies or a three-tier framework for software development, so there is no bad, for some simple business logic and small changes in the late requirements of the software, can use the three-tier framework for development, Because the three-tier framework is not conducive to expansion, although the dependencies between the layers are relatively large. But the benefits are simple and fast. For some small projects with a three-layer framework is excellent. But for some large projects, the three-tier framework may not be suitable, especially for large web sites. At this point you can consider using domain-driven design, domain-driven design-respected rich domain models, and the business logic of related entities in the domain entities. The domain-driven design idea is more granular, so that the dependence between the layers is reduced, and the dependency injection framework is introduced to achieve the low-coupling, cohesion-poly principle. And through the storage mode, can make the storage for other databases can also be easily extended. The use of domain-driven design can also be more implementation of test-driven development, back in the previous project, where there will be unit testing this thing AH.
Through this series of the most profound feeling, in addition to the field-driven design has a further understanding, there is a bit more profound feeling is to do the software must be the content of their own learning to practice, and through the blog or other ways to summarize, so as to better accumulate. Although the way through the blog is not often used to forget, but a lot of things you summed up is not summed up is not the same, summed up can have a systematic comb of knowledge, so that you can understand the knowledge point, although forgotten, it is also recorded in the brain at an angle, when the problem is re-encountered, You can get it back by writing your own blog post, and get back to the understanding is not less than the previous understanding, may be more, but do not summarize the words, the kind of forgetting may be really forgotten, equal to not see the same. So, for the software to do, really need more practice. Therefore, it is advised that we can sum up, more practice, abandon the impetuous mentality, want to do a good job of technology, the need for a quiet heart to the special research and practice. Recently, a project that has just come into contact with a number of non-relational data content. So next, I'm going to open a new series of non-relational databases to summarize my experience over the period. These include MongoDB, Redis and other non-relational database related content.
Finally attached, complete DDD practice cases for all topics:
DDD Practice Case: DDD Practice case: Online Bookstore
Classification:. NET domain Driven Design series Tags: DDD, Summary
NET Domain Driven Design Combat series summary