Chapter 1: Introduction to Object Oriented Design

Slides:



Advertisements
Similar presentations
Programming Paradigms Introduction. 6/15/2005 Copyright 2005, by the authors of these slides, and Ateneo de Manila University. All rights reserved. L1:
Advertisements

©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 12Slide 1 Software Design l Objectives To explain how a software design may be represented.
Unified Modeling Language
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.
7M701 1 Class Diagram advanced concepts. 7M701 2 Characteristics of Object Oriented Design (OOD) objectData and operations (functions) are combined 
Object-Oriented Databases
Java Programming, 3e Concepts and Techniques Chapter 1 An Introduction to Java and Program Design.
1 9 Concepts of Database Management, 4 th Edition, Pratt & Adamski Chapter 9 Database Management Approaches.
1 Introduction to C++ Programming Concept Basic C++ C++ Extension from C.
1 A Short Introduction to (Object-Oriented) Type Systems Kris De Volder.
Chapter 5: Modeling Systems Requirements: Events and Things
Introduction To System Analysis and design
Java Programming, 2E Introductory Concepts and Techniques Chapter 1 An Introduction to Java and Program Design.
Programming Languages: Telling the Computers What to Do Chapter 16.
Design Patterns Discussion of pages: xi-11 Sections: Preface, Forward, Chapter
PZ01A Programming Language design and Implementation -4th Edition Copyright©Prentice Hall, PZ01A -- Introduction Programming Language Design and.
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.
11 1 Chapter 11 Object Oriented Databases Database Systems: Design, Implementation, and Management, Sixth Edition, Rob and Coronel.
1 Introduction Programming Language Design and Implementation (4th Edition) by T. Pratt and M. Zelkowitz Prentice Hall, 2001 Sections
Slide 20.1 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. An Introduction to Object-Oriented Systems Analysis and Design with.
Elements of OO Abstraction Encapsulation Modularity Hierarchy: Inheritance & Aggregation 4 major/essential elements3 minor/helpful elements Typing Concurrency.
The basics of the programming process The development of programming languages to improve software development Programming languages that the average user.
Introduction to OOP CPS235: Introduction.
Slide 1 Systems Analysis and Design With UML 2.0 An Object-Oriented Approach, Second Edition Chapter 2: Introduction to Object-Oriented Systems Analysis.
C H A P T E R T H R E E Type Systems and Semantics Programming Languages – Principles and Paradigms by Allen Tucker, Robert Noonan.
Chapter 3 AS3 Programming. Introduction Algorithms + data structure =programs Why this formula relevant to application programs created in flash? The.
Next Back MAP MAP F-1 Management Information Systems for the Information Age Second Canadian Edition Copyright 2004 The McGraw-Hill Companies, Inc. All.
서울대한양대 ( 안 산 ) 충남대 1년1년 컴퓨터기초 (C) 컴퓨터프로그래밍 (C, Java) 컴퓨터프로그래밍 (C) 2. 봄 프로그래밍 원리 (Scheme, ML) Structure & Interpretation of Computer Programs 프로그래밍 방법론.
6.0 Objects First with Java A Practical Introduction using BlueJ David J. Barnes Michael Kölling.
1 Design Object Oriented Solutions Object Oriented Analysis & Design Lecturer: Mr. Mohammed Elhajj
Slide 1 Unified Modeling Language, Version 2.0 Object-Oriented SAD.
5 Chapter 5: Modeling Systems Requirements: Events and Things Systems Analysis and Design in a Changing World.
Principles of Programming & Software Engineering
Object-Oriented Design
Programming paradigms
Visit for more Learning Resources
DATA REQIREMENT ANALYSIS
Roberta Roth, Alan Dennis, and Barbara Haley Wixom
The Movement To Objects
Objects First with Java A Practical Introduction using BlueJ
Sections Basic Concepts of Programming
Chapter 1 Introduction to Computers, Programs, and Java
Object-Oriented Software Engineering Using UML, Patterns, and Java,
The Object-Oriented Thought Process Chapter 1
Object-Oriented Database Management System (ODBMS)
Object-Orientated Programming
Object Oriented Concepts
Computer Programming.
A tool for presentation of Architecture
A tool for presentation of Architecture
MANAGING DATA RESOURCES
University of Houston-Clear Lake
Chapter 20 Object-Oriented Analysis and Design
Object oriented analysis and design
Need for the subject.
Chapter 1 Introduction(1.1)
DEV-08: Exploring Object-oriented Programming
Object-oriented Design in Processing
Systems Analysis – ITEC 3155 Modeling System Requirements – Part 2
Extended Learning Module G
ICT Gaming Lesson 2.
Object-Oriented Programming
Programming Languages and Paradigms
Chapter 5.
Chapter 2. Problem Solving and Software Engineering
UML  UML stands for Unified Modeling Language. It is a standard which is mainly used for creating object- oriented, meaningful documentation models for.
Programming Logic and Design Eighth Edition
Presentation transcript:

Chapter 1: Introduction to Object Oriented Design

1.1 Introduction

1.2 Traditional Technology Approach

Information view

Procedure View

Problems when using traditional technology

1.3 Object – Oriented Technology Approach

Information and procedure views combined

1.4 Object – Oriented Approach and the Real World

1.5 Five Primary Concepts of Object-Oriented Technologies

1.5.1 Information

1.5.2 Procedures

1.5.3 Classes

1.5.4 Objects

1.5.5 Messages

1.6 How the five primary concepts interact

1.7 Object-Oriented Examples

1.8 A business example

1.8.1 Eighteen Months to get a new product to market

Figure 1-6 Ice Blue Snowboards

1.8.2 Inventory control

1.8.3 Scalability and Expandability

1.9 Types of Object-Oriented Technologies

1.9.1 Object-Oriented Programming Languages

1.9.2 Object-Oriented Database Systems

1.10 Object-Oriented Technologies & Client/Server Environments

1.11 Future of Object – Oriented Technologies

1.12 Questions

Sample Questions

Suggested answer:

One type of object-oriented technology is an object-oriented programming language. An object-oriented programming language is a programming language used to develop object-oriented systems. For example, just as English, French, and Italian are different languages you can use to write a paper, java and C++ are two different languages you can use to write a program. An object oriented programming language must be used in order to develop an object-oriented system.

A second type of object-oriented technology is an object-oriented database system. Object-oriented databases work with traditional database information and also with complex data types such as diagrams, schematic drawings, video, sound and text documents.

Short-Answer Questions

Chapter 2: Object Model I

2.1 Introduction

2.2 The Evolution of object model

The Generations of Programming Languages

2.3 Foundations of the object model

2.4 Object-Oriented Programming

2.5 Object-Oriented design

2.6 Object-Oriented Analysis

2.7 Elements of the Object Model

2.8 The meaning of Abstraction

Examples of Abstraction

Figure 2-1 Abstraction of a Temperature Sensor

2.9 The meaning of Encapsulation

Related Candidate Abstractions: Crop, Conditions, Plan Controller

Examples of Encapsulation

2.10 The meaning of Modularity

Two additional issues that can affect modularization decision

Examples of Modularity

Chapter 3: Object Model II

3.1 What is Hierarchy?

3.1.1 Single Inheritance

3.1.2 Multiple Inheritance

3.1.3 Aggregation

3.2 What is Typing?

3.2.1 Issues when using strong typing

Solving these issues

3.2.2 Benefits of using strong typed languages

There are a number of important benefits to be derived from using strongly typed languages:

Without type checking, a program in most languages can ‘crash’ in mysterious ways at runtime.

In most systems, the edit-compile-debug cycle is so tedious that early error detection is indispensable.

Type declarations help to document programs.

Most compilers can generate more efficient object code if types are declared.

3.2.3 Static and Dynamic Typing

3.3 What is concurrency?

Examples of Concurrency

3.4 What is Persistence?

3.5 Applying the Object Model

3.5.1 Benefits of the Object Model