|
|
(137 intermediate revisions by 12 users not shown) |
Line 1: |
Line 1: |
| == '''Object Oriented Design''' ==
| | <big>'''Wiki Text book !'''</big> |
| | | * [[CSC 216]] learning exercise |
| | | * [[Expertiza documentation]] |
| ''Object-oriented design is a programming paradigm that uses "objects" and their interactions to design computer programs. It is based on several techniques, including encapsulation, modularity, polymorphism, and inheritance.''
| | * [[CSC 379]] |
| | | * [[CSC/ECE 506 Fall 2007]] |
| | | * [[CSC/ECE 517 Fall 2007]] |
| | | * [[CSC/ECE 517 Summer 2008]] |
| == The Software Life Cycle ==
| | * [[CSC/ECE 517 Fall 2010]] |
| <br>
| | * [[ECE 633]] |
| ''The development of software is usually broken down into five parts: Analysis, Design, Implementation, Testing, and Deployment.''
| | * [[KCU]] |
| | | * [[Progress reports]] |
| <br> | |
| | |
| '''Analysis'''- decision-making process in which a decision is made on what the project is suppose to accomplish. | |
| | |
| <br> | |
| | |
| '''Design'''- the plan is developed for how the system will be implemented.
| |
| | |
| <br>
| |
| | |
| '''Implementation'''- the program is written and compiled to implement the classes and methods that were decided on in the design.
| |
| | |
| <br>
| |
| | |
| '''Testing'''- tests are run to verify that the program works correctly.
| |
| | |
| <br>
| |
| | |
| '''Deployment'''- users install program and use it for its intended purpose
| |
| | |
| | |
| == Aggregation vs. Association ==
| |
| <br>
| |
| | |
| An '''aggregation''' is a set of objects that make up a unit. Some examples of aggregation include:
| |
| | |
| <br>
| |
| | |
| An '''association''' is two or more objects that work together, but one is not part of another. Some examples of association include:
| |