Gossip-driven design

Source: Internet
Author: User

Eric Evans's "domain-driven design-the way to cope with core software complexity" was hailed by many. Just like the gof4 Design Pattern of the year. I was also recommended by others to look at the design model. After reading the design pattern, I learned a little about object-oriented. Object-oriented is basically the first choice for designing excellent software. Of course, there is SOA, but there is no conflict. I am afraid that object-oriented will be the darling of the software industry for a long time. After reading the design pattern, we became aware of object-oriented programming. It is also a hot book. I picked a quick version because I didn't have much time to finish reading the entire book. I have to write some feelings, because it is also very important to me. We recommend that you and colleagues in the software industry read this book.

When talking about the field-driven architecture, we have to talk about object-oriented architecture. Objects have three basic features: encapsulation, inheritance, and polymorphism. This is a very remarkable three features, not only the patent of the object, but also the characteristics of architecture design. Small to front-end applications include HTML, CSS, and JavaScript. This is actually the encapsulation responsibility. html display controls, CSS are responsible for layout, and javscript is responsible for behavior. It is important to clearly divide the responsibilities of the responsible personnel. It will involve the maintenance issues in the future and the division of labor and coordination issues. I tried to create elements using pure Javascript. Later I found it wrong, because Javascript is responsible for dynamic behavior rather than displaying controls. Good encapsulation also facilitatesProgramReadability. To achieve the system architecture, the domain model is segmented, and a good cohesion model (the concept of replacing the layer with a model) is also divided into a large model. The Division of different models is an encapsulation. There are more inheritance features, including a inheritance relationship between CSS and database ing, and inheritance is also used in XML documents. Polymorphism plays an important role in object orientation and is the driving force behind changes. Polymorphism can be imagined as simply replacing a CSS file reference. And cannot. These are all partial minor changes that drive qualitative changes. Polymorphism is the pivot of lever. There are still some principles and so on.

Computers can only recognize binary data from the beginning, and now they have intelligence. The change is not only the computer itself, but also the programming style and habits. Binary programming is useless. LaterProgramming LanguageAfter being converted to assembly, C, C ++, Java, and C # were available #.C LanguageThe emergence of Java brings about the process-oriented, the emergence of Java brings about object-oriented, there are also a series of development methods change. From this change, we can explore deeper thoughts. In fact, the emergence of this series of development tools or languages has reduced the difficulty for programmers to develop systems. C language reduces programming difficulty on the basis of compilation, so people are free to think about modularization, process the entire development process, and think of reuse. Of course binary or assembly will also be reused, but that is not a level concept. Object-oriented is just a process-oriented syntactic sugar. However, if the syntactic sugar is only in the C language, it may not bring a big change in programmer programming habits, inheritance, polymorphism, encapsulation is also a matter of application after the emergence of object-oriented languages, including object-oriented design. Because Java and other sequences of languages are simpler, people are free to think.CodeHow to better reuse. With the maturity of the object language, various frameworks are emerging, programming becomes simple, and a better reuse mode is emerging. This is the design mode. With the simplified development of web and winform programs, domain-driven model development and application are born.

As a matter of fact, process orientation is the first time a leap. With process-oriented, programmers can consider how to effectively deal with computers. Object-oriented processing is how programmers can better deal with the outside world (business) and computers. The field-driven model emphasizes the contact between programmers and the external world. The whole process is a step-by-step process of drawing programmers out of the computer.

The field driver stressed that the world outside is wonderful. Come and see the world. Don't nest in the code. The outside world is what you should pay more attention to. What interfaces, persistence, and networks should be abandoned. Now, you just want to do what you want. You don't have to stick to it. Everything changes only according to the field. The focus is on the field, not the messy interface, persistence, and network. The programmer's mind has already been added to the WTO. It is the so-called "where is the heart? Where is the time?" and "when the heart is in the world", it's better to stay in love and know the world than to get bored all day long, don't ask the world to be familiar with the world. So fun is coming, and good software products have emerged. In fact, programmers could have walked into the Ghost World by themselves, but it's been a long time and getting used to it, and then there's nothing wrong with it. Finally, Eric Evans collapsed and joined the WTO first, I broke the rule with a bunch of programmers. People suddenly realized that there was no need to collapse. Now let's have a good time.

The above is all nonsense, but domain-Driven Modeling requires us to focus on areas closely related to our systems (in fact, this world ). As for how to do it in the field, it is another thing. The so-called master leads the door and practices depend on himself.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.