Development history of "design pattern" object-oriented

Source: Internet
Author: User
Tags ip number

Because my IP number is very special, resulting in the recent inability to surf the internet, not even wireless. So, a lot of things have been delayed. Today incredibly can use wireless, let me ecstatic, immediately pen, write down this article. The main content is the evolutionary history of object-oriented development.


The ancient development

In the earliest machine language programming, programmers are still struggling with the capacity of computer memory and external memory.

With the increasing popularity of high-performance computers, programming has also developed to a higher level, the emergence of a variety of high-level languages, software programming has entered the era of contention.

At the beginning of the high-level language programming, mostly noodle code, with the complexity of the code, resulting in extremely chaotic code, more and more do not adapt to the needs of development.


Process-oriented development

And later appeared in the process-oriented development, is to understand the requirements into a business process, and then analyze these processes, they are interwoven together, then divided into a functional module, and finally through a function to achieve demand.

Advantages

In general, process-oriented development, the code is divided into a number of modules, enhanced reusability, convenient debugging and modification. But the structure is also relatively complex.

Disadvantages

First, the process focuses on the business process, but no matter how well the analysis is done, it will never be possible to get all the requirements from the user, and the demand is the most variable thing. Business process development needs to be constrained by many conditions, even the efficiency and operation of the program will affect the business process in turn. Sometimes users proactively change business processes in order to better achieve their business goals, and changes in a process often result in a series of changes. Therefore, the variability of the process makes the original complex code difficult to modify.

Second, the process is implemented by dividing the function modules through the invocation of functions, but when the requirements change, the function needs to be changed. And the function that you change, how many places in call it, relate how much data, this is very not easy to figure out the place.

Perhaps the developer himself made it clear, but does the next maintainer of the code know all the calls between functions? Changes to the function are most likely to cause unnecessary bugs to appear. Most of the time spent in maintenance and commissioning is not about modifying bugs, but rather on finding bugs and figuring out how to avoid bad side effects when you modify your code. Just like the student evaluation system developed by Brother Siang, the search for bugs is the hardest. Therefore, the various indications are that the process-oriented development can not adapt to the development of software.

In General , process-oriented development makes it difficult to modify the original complex code, and most of the time spent on maintenance and debugging is looking for bugs. So, it can't adapt well to change.


Object-oriented development

The emergence of object-oriented is a good solution to the problem caused by the change of demand.

definition

Object-oriented focuses on objects, and the advantage of objects is that they can define what they are responsible for and do what is required of them. The object is itself responsible for itself, and clearly defines its own responsibility.

Object-oriented development is to understand the requirements of the object, so that these objects call each other, in line with the business needs. When demand changes, although it is not possible to predict what will happen, it is often possible to predict where the change has occurred. One of its features is the ability to encapsulate these areas of change, making it easier to isolate the effects of code from changes.

VS Process oriented

Clearly, objects are more stable and more closed than processes. Business processes on the surface there is only one entrance, one exit, but in reality, every step of the process can change the content of a certain data, change the state of a device, and influence the outside world. And the object is completely through the interface with the outside world, the interface inside the matter is not related to the outside world.

In General , process-oriented development is relatively easy, but it is not easy to deal with changes, object-oriented development is difficult, but it can better deal with the ever-changing world. Therefore, the modern software needs object-oriented development, which belongs to its era, but who is the future of the world?! We wait and see.

Summary

By learning to design patterns This book, let me understand that object-oriented development is to better solve the problem caused by changes in demand, let me fundamentally understand the great advantages of object-oriented technology.

Development history of "design pattern" object-oriented

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.