Extended Learning Module G Object-Oriented Technologies
STUDENT LEARNING OUTCOMES Explain the primary difference between the traditional technology approach and the object-oriented technology approach. List and describe the five primary object-oriented concepts. Explain how classes and objects are related.
STUDENT LEARNING OUTCOMES Discuss the three fundamental principles of object-oriented technologies. Describe two types of object-oriented technologies.
MODULE ORGANIZATION Traditional Technology Approach Learning Outcome #1 Object-Oriented Technology Approach Five Primary Concepts of Object-Oriented Technologies Learning Outcomes #2 and #3 Real-World Object-Oriented Examples
MODULE ORGANIZATION Three Fundamental Principles of Object-Oriented Technologies Learning Outcome #4 Putting It All Together: A Business Example Types of Object-Oriented Technologies Learning Outcome #5
TRADITIONAL TECHNOLOGY APPROACH Traditional technology approach – has two primary views of any system – information and procedures – and keeps these two views separate and distinct at all times
TRADITIONAL TECHNOLOGY APPROACH – Information View Information view – all of the information stored within a system
TRADITIONAL TECHNOLOGY APPROACH – Procedure View Procedure – manipulates or changes information Procedure view – contains all of the procedures within a system CRUD – (Create, Read, Update, Delete) – four primary procedures, or ways, a system can be updated
Problems with Traditional Technology Approach Leads to disconnects between information and procedures Have correct information but no procedures to update it Have correct procedures but no information on which to apply them
OBJECT-ORIENTED TECHNOLOGY APPROACH Object-oriented (OO) approach – combines information and procedures into a single view
OBJECT-ORIENTED TECHNOLOGY APPROACH In the real world, you actually view a given process as a combination of information and the procedures you need to act on that information
5 CONCEPTS OF OO TECHNOLOLGIES Information (number one) Information are key characteristics stored within a system. Examples include: Student Last Name Student First Name Final Course Grade
5 CONCEPTS OF OO TECHNOLOLGIES Procedures (number two) Procedure – manipulates or changes information. Examples include: CRUD Student Last Name Calculate Final Course Grade
5 CONCEPTS OF OO TECHNOLOLGIES Class (number three) Class – contains information and procedures and acts as a template to create objects Information decomposition – breaking down the information and procedures for ease of use and understandability
Classes in OO Technologies
5 CONCEPTS OF OO TECHNOLOLGIES Object (number four) Object – an instance of a class An object is the actual item represented by the class Alana and Samuel in Figure G.4 on the following slide are objects Every member is a separate object
Objects in OO Technologies
5 CONCEPTS OF OO TECHNOLOLGIES Messages (number five) Message – how objects communicate with each other One object can send a message to another object asking it to perform a certain procedure
How the 5 OO Concepts Are Related Information and procedures create classes Classes create objects Objects communicate with other objects via messages
REAL WORLD OO EXAMPLE
REAL WORLD OO EXAMPLE A stereo includes objects Amplifier CD player Speakers Etc Each works together for the system to function
3 FUNDAMENTAL OO PRINCIPLES The three fundamental principles of object-oriented technologies are: Inheritance Encapsulation Polymorphism
Inheritance Inheritance – the ability to define superclass and subclass relationships among classes Take a minute and review Figure G.6 on the following slide to determine which class is the superclass which is the subclass
Inheritance
Inheritance The Car class is the superclass and the Bronco and Porsche are the subclasses Another way to say it… the Bronco and Porsche subclasses inherit all of the information and procedures from the Car superclass
Inheritance Reuse – the business benefit gained from using inheritance is the ability to easily expand and maintain a system
Encapsulation Encapsulation – information hiding Interface – any device that calls procedures and can include such things as a keyboard, mouse, and touch screen
Polymorphism Polymorphism – to have many forms The word “bark” can mean tree bark or a dog’s bark Figure G.7 (following slide) shows how to calculate area with different calculations
Polymorphism
A BUSINESS EXAMPLE The following is a list of common competitor problems 18 months to market Inventory control Scalability and expandability
18 Months to Market Takes 18 months to get a new product on the market Businesses typically have separate systems for each business function Each system must be updated with the new product information
18 Months to Market Reduce time to market – use the OO approach Create Snowboard class Design an interface Use inheritance Create one object that communicates with all other objects across all other systems
18 Months to Market
Inventory Control Businesses need sufficient inventory To meet production needs While minimizing costs associated with Storing the inventory Transporting the inventory Maintaining the inventory
Scalability & Expandability Scalability – refers to how well your system can adapt to increased demands Expandability – refers to how easy it is to add features and functions to a system
TYPES OF OO TECHNOLOGIES Program – set of instructions that cause a computer to behave in a specific manner Programming language – tool developers use to write a program OO programming language – programming language used to develop OO systems
TYPES OF OO TECHNOLOGIES Object-oriented database – works with traditional database information and also complex data types such as diagrams, schematic drawings, video, sound, and text documents
OO Technologies & Client/Server Network Spreading objects across a network makes logical sense: Client objects work with local information Server objects work with global information
OO Technologies & Client/Server Network
Future of OO Technologies OO tools will perform tasks and provide functionality that we haven’t even thought of yet