Basic Object Oriented Engineering
Introduction 1
1 In the OO there are standards but still is not well bounded and research is incomplete
2 Key benefits are reusability and extensibility
3 Pre-written key components can be used
4 OO methods. Not only OO programming, but design, requirement analysis, business modelling, system design, database design and project mgt.
Introduction 2
1 Few systems live up to the “pure concept” of OO
2 Always ask how is a system OO?
3 E.g. even Apple, Windows try to make use of OO concepts in the WIMP (Windows, Icons, Menus, and Pointers). This is visible in the GUI and GUI style of programming
OO Influences
1 Distributed IS (using CORBA, COM, DCOM, ACTIVE X, JAVA Beans)
2 A.I.
3 Web Based Programming
4 OMG standardization
Objects
1 Basic units of construction used for system visualisation, design,
conceptualisation and or programming
2 An object is an instance of a class type E.g. object John Smith is an Instance of class person
3 Objects have attributes like size, state, weight, position, colour
4 Objects can perform “services”. These are called operations or methods
5 Rules specifying how object features are related are called Invariants
Polymorphism
1 Ability of objects to use the same expression to denote different operations
2 I.e. A method operation of an object can be “overridden” and called by a subclass derived object to produce an entirely different result!!!
Abstraction
1. The key behind Software Engineering is the ability to represent something without getting excessively involved in the details that are not so essential. Objects should abstract both details and processes.
Abstract Classes – Have no instances Concrete Classes – Have Instances.
Basic OO Methodology Principles I
1 Identity: Each object has a “unique” identity but distinguishes the object throughout it’s life
2 Encapsulation: Data structures and method implementation details of an object are hidden from other objects in the system (This is similar to the ADT concept). Some object methods can also be hidden by being declared as Private etc.
Basic OO Methodology Principles 2
1 Message Passing: Objects should be able to communicate only through message passing. This eliminates data duplication and ensures that changes to an object’s code should not affect another object.
2 An object can be recognized through its unique identity.
3 Inheritance: It is possible to derive a Class and Sub Class from another Class. The Class above is called the “Super Class”.
Binding Strategies
1 Dynamic Binding
2 Late Binding
3 Early or Static Binding
Benefits
Decomposability Composability Understandability Continuity Protection Linguistic Modular Units Few Interfaces Small Interfaces Explicit Interfaces
10 Info. Hiding
Welcome back to Kaizenlog.com, you may want to subscribe to my RSS feed , Twitter You can contact us by using the contact form or submitting a comment. You can also share this post with your friends by clicking on the 'ShareThis' button above. Thanks for visiting!
Print This Post

Entries (RSS)