Extended Learning Module G

Slides:



Advertisements
Similar presentations
Understand and appreciate Object Oriented Programming (OOP) Objects are self-contained modules or subroutines that contain data as well as the functions.
Advertisements

Data Structures.
Chapter 22 Object-Oriented Systems Analysis and Design and UML Systems Analysis and Design Kendall and Kendall Fifth Edition.
Classes & Objects Computer Science I Last updated 9/30/10.
Object-Oriented Databases v OO systems associated with – graphical user interface (GUI) – powerful modeling techniques – advanced data management capabilities.
Object Oriented System Development with VB .NET
Basic OOP Concepts and Terms
Lecturer: Dr. AJ Bieszczad Chapter 66-1 Object-Oriented analysis and design Special nature of OO development Use cases Design with UML OO system design.
BACS 287 Basics of Object-Oriented Programming 1.
The chapter will address the following questions:
Chapter 1: Introduction to Visual Basic.NET: Background and Perspective Visual Basic.NET Programming: From Problem Analysis to Program Design.
The Design Discipline.
Systems Analysis and Design in a Changing World, Fifth Edition
Introduction to Object-oriented programming and software development Lecture 1.
11 1 Object oriented DB (not in book) Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Learning objectives: What.
GENERAL CONCEPTS OF OOPS INTRODUCTION With rapidly changing world and highly competitive and versatile nature of industry, the operations are becoming.
BCS 2143 Introduction to Object Oriented and Software Development.
O BJECT O RIENTATION F UNDAMENTALS Prepared by: Gunjan Chhabra.
GRASP Principles. How to Design Objects The hard step: moving from analysis to design How to do it? –Design principles (Larman: “patterns”) – an attempt.
Unified Modeling Language, Version 2.0
5 Systems Analysis and Design in a Changing World, Fourth Edition.
11 Chapter 11 Object-Oriented Databases Database Systems: Design, Implementation, and Management 4th Edition Peter Rob & Carlos Coronel.
1 Object-Oriented Systems Development Bahrami © Irwin/ McGraw-Hill Chapter 2: Object Basics Object-Oriented Systems Development Using the Unified Modeling.
McGraw-Hill/Irwin © 2008 The McGraw-Hill Companies, All Rights Reserved Chapter 7 Storing Organizational Information - Databases.
5 Systems Analysis and Design in a Changing World, Fifth Edition.
1 Programming Paradigms Object Orientated Programming Paradigm (OOP)
Learners Support Publications Object Oriented Programming.
Programming Paradigms Lecturer Hamza Azeem. What is PP ? Revision of Programming concepts learned in CPLB Learning how to perform “Object-Oriented Programming”
Chapter 1 Revealed Distributed Objects Design Concepts CSLA.
WEL COME PRAVEEN M JIGAJINNI PGT (Computer Science)
Next Back MAP MAP F-1 Management Information Systems for the Information Age Second Canadian Edition Copyright 2004 The McGraw-Hill Companies, Inc. All.
Copyright © 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Starting Out with Programming Logic & Design Second Edition by Tony Gaddis.
Introduction to Java. Java  An Object-Oriented, platform-neutral, secure language.  Object Oriented – software development method – a program is thought.
CHAPTER 6 OBJECT ANALYSIS.
Slide 1 Unified Modeling Language, Version 2.0 Object-Oriented SAD.
5 Systems Analysis and Design in a Changing World, Fourth Edition.
5 Chapter 5: Modeling Systems Requirements: Events and Things Systems Analysis and Design in a Changing World.
Principles of Programming & Software Engineering
Object-Orientated Programming
Object Oriented Programming
Sachin Malhotra Saurabh Choudhary
Programming Logic and Design Seventh Edition
DATA REQIREMENT ANALYSIS
JAVA By Waqas.
Roberta Roth, Alan Dennis, and Barbara Haley Wixom
The Movement To Objects
Systems Analysis and Design
CHAPTER 5 GENERAL OOP CONCEPTS.
Systems Analysis and Design With UML 2
The Object-Oriented Thought Process Chapter 1
Object-Oriented Database Management System (ODBMS)
Data Abstraction: The Walls
Object Oriented Concepts -I
INTRODUCTION TO OOP Objective:
Computer Programming.
MANAGING DATA RESOURCES
The Object-Oriented Thought Process Chapter 07
Chapter 20 Object-Oriented Analysis and Design
Abstraction in Object-Oriented Programming
Systems Analysis – ITEC 3155 Modeling System Requirements – Part 2
Chapter 1: Introduction to Object Oriented Design
Introduction to Object-Oriented Programming
Workshop for Programming And Systems Management Teachers
Basic OOP Concepts and Terms
Object Oriented Analysis and Design
Chapter 22 Object-Oriented Systems Analysis and Design and UML
Abstraction and Objects
Introduction to Computers
The OOTP is intended to get you thinking about how OO concepts are used in designing object-oriented systems. Note: not talking about OO technologies that.
Chapter 20 Object-Oriented Concepts and Principles
Presentation transcript:

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