Object-Oriented process is Object-Oriented analyze -> Object-Oriented design -> Object-Oriented program.
1. Application depends on requirement
Generally speaking, technique appeared later than requirement. When people’s requirements come out, enterprises will be to develop or to apply a new technique. Why? That’s because the common purpose of enterprises is profit. It is risk for an enterprise to develop a new technique before requirement. If the new technique could not be applied, the enterprise will lost a lot of money. It is different from institutes. So enterprises do not feed many researchers. High degrees could not make more profit for a company, especially medium and small company.
2. Software process
Validate requirement -> Decide technique -> Analyze roles -> Develop process
Software is a mapping from realistic business to computer logic.
We are programming for software life-force and nation’s productivity.
Traditional programming: Loose Mess Bad Low
To resolve this, the core is methodology.
Set up frame, then analysis, break up the functions.
Object-Oriented Methods
The core is abstract. Abstract objects of real business. An object is an instance of a class, and objects are elements of systems. Object includes attributions and behaviors. Objects can communicate with other objects and the method is to access attributions or behaviors of others.
Encapsulation
Combine data and behavior in one package and hide the implementation of the data from the user of the object. Make data steady.
Hide the details of implementation of a class
Make users access data using an interface
Make the code more maintainable
Inheritance
The idea behind inheritance is that you can create new classes that are built on existing classes.
Inheritance makes code more reliable and simple
Improve ability of reuse
Polymorphism
Polymorphism is the ability to have many different forms. Make up while casting.
When we analyze a system, the progress is to abstract the objects, to allocate responsibilities for objects and to define the relationships between objects.
Relationships between objects
Dependence ("uses–a")
Aggregation ("has–a")
Inheritance ("is–a")