Basic OOP Concepts and Terms

Slides:



Advertisements
Similar presentations
Systems Analysis and Design 8th Edition
Advertisements

Solutions to Review Questions. 4.1 Define object, class and instance. The UML Glossary gives these definitions: Object: an instance of a class. Class:
Unified Modeling Language
Object-Oriented Analysis and Design
Chapter 1 Object-Oriented System Development
Introduction To System Analysis and Design
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
Irwin/McGraw-Hill Copyright © 2004 The McGraw-Hill Companies. All Rights reserved Whitten Bentley DittmanSYSTEMS ANALYSIS AND DESIGN METHODS6th Edition.
Basic OOP Concepts and Terms
OBJECT ORIENTED ANALYSIS & DESIGN Vassilka Kirova Department of Computer & Information Science NJIT.
7M701 1 Class Diagram advanced concepts. 7M701 2 Characteristics of Object Oriented Design (OOD) objectData and operations (functions) are combined 
Systems Analysis & Design Sixth Edition Systems Analysis & Design Sixth Edition Toolkit Part 5.
Scott Grissom, copyright 2004Ch 2 OO Design Slide 1 Object Oriented Design Chapter 2 focuses on: objects, classes inheritance polymorphism UML class diagrams.
2-1 © Prentice Hall, 2004 Chapter 2: Introduction to Object Orientation (Adapted) Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra,
Object Oriented Concepts. Movement toward Objects Instead of data-oriented or process-oriented Analysis, many firms are now moving to object-oriented.
Introduction To System Analysis and design
Object Oriented Programming Lecturer: Andreas P. Adi
1 A Student Guide to Object- Orientated Systems Chapter 4 Objects and Classes: the basic concepts.
OBJECT AND CLASES: THE BASIC CONCEPTS Pertemuan 8 Matakuliah: Konsep object-oriented Tahun: 2009.
OBJECT ORIENTED PROGRAMMING CONCEPTS ISC 560. Object-oriented Concepts  Objects – things names with nouns  Classes – classifications (groups) of similar.
CHAPTER ONE Problem Solving and the Object- Oriented Paradigm.
Unified Modeling Language, Version 2.0
Introduction To System Analysis and Design
An Introduction to Java Chapter 11 Object-Oriented Application Development: Part I.
System Analysis System Analysis - Mr. Ahmad Al-Ghoul System Analysis and Design.
Systems Analysis & Design 7 th Edition Chapter 5.
IT 21103/41103 System Analysis & Design. Chapter 05 Object Modeling.
Systems Analysis and Design 8 th Edition Chapter 6 Object Modeling.
Chapter 8 - Additional Inheritance Concepts and Techniques1 Chapter 8 Additional Inheritance Concepts and Techniques.
Basic OOP Concepts and Terms. In this class, we will cover: Objects and examples of different object types Classes and how they relate to objects Object.
Introduction To OOP 1.0 Fundamentals Of Java Programming Language 2.0 Exception Handling 3.0 Classes, Inheritance And Polymorphism © 2011 | PN AZRINA.
CIS 112 Exam Review. Exam Content 100 questions valued at 1 point each 100 questions valued at 1 point each 100 points total 100 points total 10 each.
Object-Oriented Modeling: Static Models. Object-Oriented Modeling Model the system as interacting objects Model the system as interacting objects Match.
 Week08.  Review Schedule Weeks 8-14  This week o Review last class o Introduce Class Diagrams o ICE-03 Sheridan SYST Engineering Quality Systems.
CSC 131 Fall 2006 Lecture # 6 Object-Oriented Concepts.
Basic Concepts of Object Orientation Object-Oriented Analysis CIM2566 Bavy LI.
1 Unified Modeling Language, Version 2.0 Chapter 2.
Chapter 4 Basic Object-Oriented Concepts. Chapter 4 Objectives Class vs. Object Attributes of a class Object relationships Class Methods (Operations)
Chapter 2: Introduction to Object Orientation Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich, Jeffrey A.
Copyright © 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Starting Out with Programming Logic & Design Second Edition by Tony Gaddis.
Programming Paradigms Different paradigms Procedural paradigm, e.g. Pascal Basic Functional paradigm, e.g. Lisp Declarative paradigm, e.g. Prolog Object-Oriented.
Lesson 1 1 LESSON 1 l Background information l Introduction to Java Introduction and a Taste of Java.
COP 4331 – OOD&P Lecture 7 Object Concepts. What is an Object Programming language definition: An instance of a class Design perspective is different.
Chapter 5 – System Modeling Lecture 1 1Chapter 5 System modeling.
1 Design Object Oriented Solutions Object Oriented Analysis & Design Lecturer: Mr. Mohammed Elhajj
Slide 1 Unified Modeling Language, Version 2.0 Object-Oriented SAD.
2-1 © Prentice Hall, 2004 Chapter 2: Introduction to Object Orientation Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph.
Object-oriented programming (OOP) is a programming paradigm using "objects" – data structures consisting of data fields and methods together with their.
Object Oriented Programming
The Basics of OOP Design
Sachin Malhotra Saurabh Choudhary
Chapter 1: Introduction to Systems Analysis and Design
Business System Development
DATA REQIREMENT ANALYSIS
The Movement To Objects
Object-Oriented Analysis and Design
Systems Analysis and Design With UML 2
Introduction to OOSD– UFCFC Lecture Notes Week 1
Week 13: Wrap-up Refining Class Diagram and Implementation
Systems Analysis – ITEC 3155 Modeling System Requirements – Part 2
ITEC 3220A Using and Designing Database Systems
Chapter 1: Introduction to Systems Analysis and Design
Chapter 5.
2.1 Introduction to Object-Oriented Programming
Week 15: Refining Class Diagram and Implementation
Chapter 1: Introduction to Systems Analysis and Design
From Class Diagram to Contract Diagram
Presentation transcript:

Basic OOP Concepts and Terms

In this class, we will cover: Objects and examples of different object types Classes and how they relate to objects Object attributes and methods Object interactions and messages Encapsulation and information hiding Inheritence and polymorphism The three-tier architecture design An introduction to UML

Objects Most basic component of OO design. Objects are designed to do a small, specific piece of work. Objects represent the various components of a business system

Examples of Different Object Types GUI objects objects that make up the user interface e.g. buttons, labels, windows, etc. Problem Domain objects Objects that represent a business application A problem domain is the scope of what the system to be built will solve. It is the business application. e.g. An order-entry system A payroll system A student system

Sample Problem Domain Company ABC needs to implement an order-entry system that takes orders from customers for a variety of products. What are the objects in this problem domain? Hint: Objects are usually described as nouns.

Possible Objects for this Problem Domain Customer Order Product

Classes and Objects Classes Objects Define what all objects of the class represent It is like a blueprint. It describes what the objects look like They are a way for programs to model the real world Objects Are the instances of the class

Object Attributes and Methods Classes contain two things: Fields (attributes, data members, class variables): Data items that differentiate one object of the class from another. e.g. employee name, student number Characteristics of an object that have values What are some possible attributes for the customer object? Methods (behaviors): Named, self-contained blocks of code that typically operate on the fields Describe what an object can do Can be thought of as the verbs in a problem domain What are some possible methods for the customer object?

Object Interactions and Messages Objects interact with other objects in a variety of relationships e.g. one-to-one, one-to-many Messages The means by which objects interact Example: User initiates interaction via messages to GUI objects GUI objects interact with problem domain objects via messages Problem domain objects interact with each other and GUI objects via messages GUI objects respond to user via messages

Encapsulation and Information Hiding Objects have attributes and methods combined into one unit Information Hiding Hiding the internal structure of objects, protecting them from corruption Identity Unique reference for each object Persistent objects Defined as available for use over time

Inheritance and Polymorphism One class of objects takes on characteristics of another class and extends them Superclass  subclass Generalization/specialization hierarchy Also called an inheritance hierarchy Result of extending class into more specific subclasses This is an important concept!!

Inheritance and Polymorphism literally means “many forms” in Java means using the same message (or method name) with different classes different objects can respond in their own way to the same message e.g. toString()

Learning OO Development Introducing Three-Tier Design Objects that interact in OO system are separated into three categories of classes: Problem domain classes Specific to a particular business application GUI classes Define objects that make up the UI to the application Data access classes Work with DBMS to store/retrieve object information

Unified Modeling Language (UML) Standard OOA&D modeling notation Uses model-driven approach Enables creation of graphical models of the system requirements and system design Components include Class diagrams Use Case diagrams Sequence diagrams Statecharts