CSE 2341 Object Oriented Programming with C++ Note Set #4

Slides:



Advertisements
Similar presentations
When is Orientated Programming NOT? Mike Fitzpatrick.
Advertisements

Chapter 13 – Introduction to Classes
Programming Paradigms and languages
Department of Computer Engineering Faculty of Engineering, Prince of Songkla University 1 5 – Abstract Data Types.
OBJECT ORIENTED PROGRAMMING M Taimoor Khan
Chapter 1 Object-Oriented System Development
Object-Oriented Metrics. Characteristics of OO ● Localization ● Encapsulation ● Information hiding ● Inheritence ● Object abstraction.
Object-oriented Programming Concepts
Feb. 23, 2004CS WPI1 CS 509 Design of Software Systems Lecture #5 Monday, Feb. 23, 2004.
Object-Orientated Design Unit 3: Objects and Classes Jin Sa.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
WEL COME PRAVEEN M JIGAJINNI PGT (Computer Science) MCA, MSc[IT], MTech[IT],MPhil (Comp.Sci), PGDCA, ADCA, Dc. Sc. & Engg.
1 ES 314 Advanced Programming Lec 2 Sept 3 Goals: Complete the discussion of problem Review of C++ Object-oriented design Arrays and pointers.
Developed by Reneta Barneva, SUNY Fredonia Component Level Design.
Chapter 22 Object-Oriented Design
Computer Science 240 Principles of Software Design.
C++ fundamentals.
OBJECT ORIENTED PROGRAMMING IN C++ LECTURE
Inheritance. © 2004 Pearson Addison-Wesley. All rights reserved 8-2 Inheritance Inheritance is a fundamental object-oriented design technique used to.
Introduction to Classes, Objects, Methods and Attributes Lecture # 2.
Introduction to Object-oriented programming and software development Lecture 1.
Liang, Introduction to Java Programming, Sixth Edition, (c) 2007 Pearson Education, Inc. All rights reserved Chapter 12 Object-Oriented.
GENERAL CONCEPTS OF OOPS INTRODUCTION With rapidly changing world and highly competitive and versatile nature of industry, the operations are becoming.
An Object-Oriented Approach to Programming Logic and Design
©Ian Sommerville 2000 Software Engineering, 6th edition. Slide 1 Component-based development l Building software from reusable components l Objectives.
Guided Notes Ch. 9 ADT and Modules Ch. 10 Object-Oriented Programming PHP support for OOP and Assignment 4 Term project proposal C++ and Java Designer.
Object Oriented Programming Concepts. Object Oriented Programming Type of programming whereby the programmer defines the data types of a data structure.
Copyright 2003 Scott/Jones Publishing Standard Version of Starting Out with C++, 4th Edition Chapter 13 Introduction to Classes.
1 Life Cycle of Software Specification Design –Risk Analysis –Verification Coding Testing –Refining –Production Maintenance.
CSE 303 – Software Design and Architecture LECTURE 4.
1 COMP 350: Object Oriented Analysis and Design Lecture 1Introduction References: Craig Larman Chapter 1.
Part VII: Design Continuous
Frameworks CompSci 230 S Software Construction.
Dale Roberts Object Oriented Programming using Java - Introduction Dale Roberts, Lecturer Computer Science, IUPUI Department.
Summing Up Object Oriented Design. Four Major Components: Abstraction modeling real-life entities by essential information only Encapsulation clustering.
CS 3050 Object-Oriented Analysis and Design. Objectives What is “Object-Oriented?” Object-Oriented Approach Vs. Structured Approach How Has the Object-Oriented.
Programming Paradigms Lecturer Hamza Azeem. What is PP ? Revision of Programming concepts learned in CPLB Learning how to perform “Object-Oriented Programming”
Lecture 2 Intro. To Software Engineering and Object-Oriented Programming (1/2)
9-Dec Dec-15  INTRODUCTION.  FEATURES OF OOP.  ORGANIZATION OF DATA & FUNCTION IN OOP.  OOP’S DESIGN.
Java Fundamentals Usman Ependi UBD
CSE 303 – Software Design and Architecture
Basic Concepts of OOP.  Object-Oriented Programming (OOP) is a type of programming added to php5 that makes building complex, modular and reusable web.
Author: DoanNX Time: 45’.  OOP concepts  OOP in Java.
Lecture 2 Intro. To Software Engineering and Object-Oriented Programming (2/2)
Object Oriented Paradigm OOP’s. Problems with Structured Programming As programs grow ever larger and more complex, even the structured programming approach.
 Description of Inheritance  Base Class Object  Subclass, Subtype, and Substitutability  Forms of Inheritance  Modifiers and Inheritance  The Benefits.
Lecture 2 Intro. To Software Engineering and Object-Oriented Programming (1/2)
1 Object-Oriented Programming Using C++ CLASS 17 Honors.
Why is Design so Difficult? Analysis: Focuses on the application domain Design: Focuses on the solution domain –The solution domain is changing very rapidly.
 The Object Oriented concepts was evolved for solving complex problems. Object- oriented software development started in the 1980s. Object-oriented design.
What is an Object Objects are key to understanding object-oriented technology. An object can be considered a "thing" that can perform a set of related.
Object Oriented Programming
INTRODUCTION TO OBJECT-ORIENTED PROGRAMMING
CHAPTER 5 GENERAL OOP CONCEPTS.
Chapter 11 Object-Oriented Design
OOP What is problem? Solution? OOP
For University Use Only
Object Oriented Concepts -I
INTRODUCTION TO OBJECT-ORIENTED PROGRAMMING (OOP) & CONCEPTS
C++.
Object Oriented Analysis and Design
OOP vs Structured Programming
Object Oriented Design Patterns - Structural Patterns
Need for the subject.
Design Tips.
What Is Good Software(Program)?
Information Hidding Dr. Veton Kepuska.
2.1 Introduction to Object-Oriented Programming
Executable Specifications
Notes on software design
Presentation transcript:

CSE 2341 Object Oriented Programming with C++ Note Set #4

Procedural/structures vs. OOP First Class Quick Look Procedural/structures vs. OOP First Class

Procedural vs OOP Procedural Object Oriented Programming (OOP) focused on procedures that take place in a program data is secondary to functionality Object Oriented Programming (OOP) concerned with understanding the objects involved in a problem and how they interact.

Problems with Procedural Programming excessive global data larger solutions are complex and convoluted can be very difficult to understand, modify, and extend

OOP focuses on the objects and their interaction based on the problem domain packages together the data and methods to operate on that data sometimes called attributes and behavior

Concept Point Create a Point class that represents a point in 2D space int x int y getX() setX(newX) interface distance(anotherPoint) Private Data and Methods to operate on that data

Objects Range of possibilities is limited by programmers imagination Usually very specific or very general general purpose: Vector class, some datatype not part of language such as date, GUI objects specific purpose: objects created for a specific application domain such as inventory

Benefits of OOP Data abstraction Compatibility Flexibility details of classes only visible to its methods Compatibility easier to combine software components Flexibility classes provide units for task allocation

Benefits of OOP Reuse Extensibility Maintenance easier to develop reusable software Extensibility inheritance allows new classes to be built from old ones Maintenance The natural modularity of the class structures makes it easier to contain the effects of change

Fini ?