Download presentation
Presentation is loading. Please wait.
Published byPhoebe Hawkins Modified over 9 years ago
2
OOPLs Help companies reduce complexity Increase competition in open markets Speeds up development Improves maintenance, resusability, modifiability of software
3
O-O improves efficiency in development and maintainance Decreases complexity Scalable Distributed Systems
4
AT&T Bell Labs project using OOPL found 30% reduction in development time 20% reduction in staff effort Able to reuse the code in many other projects
5
Object and Class Object being a black box Objects are individual instances of a class
6
Properties Inheritance Polymorphism Dynamic Binding Encapsulation Information Hiding
7
Smalltalk C++ Java Eiffel
8
Pure OOL Run-time binding Objects can do 3 things Hold state Receive a message Send a message to itself or another object
9
Compatible with C Fast and efficient Utilizes compile-time binding High run-time efficiency with small code size Trades off some power to reuse classes
10
Portable, can be used on any web- enabled computer Mixture of C++ and Smalltalk Syntax of C++ but improved upon it Garbage Collection Virtual Machine
11
Portable Open System Design by Contract Automatic Documentation Multiple Inheritance Repeated Inheritance Statically Typed Dynamically Bound
12
Eiffel – Statically typed C++ - Statically typed (however the language supports C-style “casts” which really amount to invitations to violate type rules Java – typed, mostly statically but dynamic typing is required for generic container structures Smalltalk – Dynamically typed
13
Eiffel – Combination of interpretation and compilation in same environment C++ - Usually complied Java – Usually mix of interpretation and “on-the-fly” compilation Smalltalk – Historically interpreter-based, currently mix of interpretation and compliation
14
Eiffel – Efficiency and portability C++ - Efficiency, maintainability, portability and functionality Java – Maintainability, Usability, Functionality, and Portability Smalltalk – Functionality and Maintainability
15
Eiffel can generate many views, graphical or textual Class interfaces Inheritance hierarchies High level “bubbles and arrows” Diagrams
16
Eiffel – Multiple and repeated inheritance, widely used C++ Multiple inheritance (though discouraged by many for various problems) Java – Single inheritance (but multiple interface facility) Smalltalk – Single Inheritance
17
Java RMI (Remote Method Invocation) Communicates between networking and distributed computing Uses a proxy object Can have many types Client can find out what service was returned
18
Used worldwide for commercial, DoD, and other government projects Less complexity = increase in maintainability OOPL must treat the O-O paradigm to gain the benefits
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.