|
| Topic: Programming Architecture |
Type: Whitepapers |
White Paper: OOP Architecture
Without a good architecture, software systems can be hard to understand, predict, manage, and optimize. When developers do not maintain a good architecture, they increase the risk of the project’s failure, or decrease the maintainability of a large scale application. This results in higher long term maintenance costs. The idea behind object-oriented programming is that a computer program may be seen as a collection of individual objects, as opposed to a traditional view in which a program may be seen as a collection of functions. Each object is capable of receiving messages, processing data, and sending messages to other objects. Each object can be viewed as an independent entity with a distinct role or responsibility. Object-oriented programming (OOP) will promote greater flexibility and maintainability in development, and is widely popular in large-scale software engineering. OOP is generally easier to learn for those new to computer programming than previous approaches. Since the OOP approach is often simpler to develop and to maintain, it lends itself to more direct analysis, coding, and understanding of complex situations and procedures than other programming methods. This in turn, leads to a decrease in the learning curve associated with introducing a new team member to the application. In OOP, it is common to separate the application into different layers of functionality. Each layer has a specific focus and subset of tasks that it will accomplish. Generally, each layer will be partially dependent on the previous layers, however, the layers are designed in such a way that any one layer could be taken out and replaced with another layer, as long as both the inputs and outputs of the new layer are the same as the old layer. The object model that J Wautier Consulting would implement would consist of the following layers:
- Presentation Layer
- Framework/Shared Services Layer
- Business Layer
- Integration Layer
- Data Access Layer
... more >>
|
|
|