Object Oriented Programming

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

Agenda Definitions Evolution of Programming Languages and Personal Computers The C Language.
Department of Computer Engineering Faculty of Engineering, Prince of Songkla University 1 5 – Abstract Data Types.
OBJECT ORIENTED PROGRAMMING M Taimoor Khan
Classes & Objects Computer Science I Last updated 9/30/10.
Object-Oriented Analysis and Design
Liang, Introduction to Java Programming, Sixth Edition, (c) 2007 Pearson Education, Inc. All rights reserved Chapter 1 Object-Oriented.
Chapter 1 Object-Oriented System Development
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
Java Programming, 3e Concepts and Techniques Chapter 1 An Introduction to Java and Program Design.
Object-oriented Programming Concepts
1 Object-Oriented Design. 2 Objectives F To become familiar with the process of program development. F To the relationship types: association, aggregation,
Visual Basic Introduction IDS 306 from Shelly, Cashman & Repede Microsoft Visual Basic 5: Complete Concepts and Techniques.
WEL COME PRAVEEN M JIGAJINNI PGT (Computer Science) MCA, MSc[IT], MTech[IT],MPhil (Comp.Sci), PGDCA, ADCA, Dc. Sc. & Engg.
C++ fundamentals.
1 INTRODUCTION TO OOP Objective: Know the difference between functional programming and OOP Know basic terminology in OOP Know the importance of OOP Know.
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
Copyright 2002 Prentice-Hall, Inc. Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Chapter 20 Object-Oriented.
11 Chapter 11 Object-Oriented Databases Database Systems: Design, Implementation, and Management 4th Edition Peter Rob & Carlos Coronel.
CS3773 Software Engineering Lecture 04 UML Class Diagram.
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.
Learners Support Publications Object Oriented Programming.
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”
Java Fundamentals Usman Ependi UBD
Basic Concepts of Object Orientation Object-Oriented Analysis CIM2566 Bavy LI.
Liang, Introduction to Java Programming, Sixth Edition, (c) 2007 Pearson Education, Inc. All rights reserved Chapter 11 Object-Oriented.
WEL COME PRAVEEN M JIGAJINNI PGT (Computer Science)
Copyright © 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Starting Out with Programming Logic & Design Second Edition by Tony Gaddis.
Banaras Hindu University. A Course on Software Reuse by Design Patterns and Frameworks.
COP 4331 – OOD&P Lecture 7 Object Concepts. What is an Object Programming language definition: An instance of a class Design perspective is different.
CSE 2341 Object Oriented Programming with C++ Note Set #4
Welcome to OBJECT ORIENTED PROGRAMMING Prepared By Prepared By : VINAY ALEXANDER PGT(CS) KV jhagrakhand.
 By the end of this lecture, you should …  Understand the three pillars of Object- Oriented Programming: Inheritance, Encapsulation and Polymorphism.
Object-oriented programming (OOP) is a programming paradigm using "objects" – data structures consisting of data fields and methods together with their.
 The Object Oriented concepts was evolved for solving complex problems. Object- oriented software development started in the 1980s. Object-oriented design.
Introduction to Object-oriented Programming
Programming paradigms
Object-Orientated Programming
INTRODUCTION TO OBJECT-ORIENTED PROGRAMMING
Sachin Malhotra Saurabh Choudhary
OOP: Object-oriented programming
Business System Development
The Movement To Objects
OBJECT ORIENTED CONCEPT
CHAPTER 5 GENERAL OOP CONCEPTS.
Sections Basic Concepts of Programming
Systems Analysis and Design With UML 2
Programming in Java Sachin Malhotra, Chairperson, PGDM-IT, IMS Ghaziabad Saurabh Chaudhary, Dean, Academics, IMS Ghaziabad.
Chapter 11 Object-Oriented Design
Object-Oriented Database Management System (ODBMS)
Distribution and components
Introduction to Object-Oriented Programming
INTRODUCTION TO OBJECT-ORIENTED PROGRAMMING (OOP) & CONCEPTS
PRINCIPALES OF OBJECT ORIENTED PROGRAMMING
VISUAL BASIC.
Object-Oriented Programming
Chapter 20 Object-Oriented Analysis and Design
Appendix A Object-Oriented Analysis and Design
ITEC 3220A Using and Designing Database Systems
Basic OOP Concepts and Terms
Object Oriented Analysis and Design
Object Oriented Design & Analysis
Appendix A Object-Oriented Analysis and Design
UML  UML stands for Unified Modeling Language. It is a standard which is mainly used for creating object- oriented, meaningful documentation models for.
Presentation transcript:

Object Oriented Programming Abd El-Aziz Ahmed Abd El-Aziz Assistant Professor Institute of Statistical Studies and Research, Dept. of Computer and Information Sciences, Cairo University

Lecture 1 Introduction to Object Oriented Programming The programming methodologies are : Procedural programming. Object-Oriented programming (OOP).

Lecture 1(Cont.) Introduction to Object Oriented Programming Procedural programming: The languages use the procedural programming include Pascal and C languages. Involves dividing a large program into a set of modules to perform specific tasks. Module consists of single or multiple procedures. Procedures are also known as functions, routines, subroutines, or methods in various programming languages. In a program following procedural methodology, each step of a subprogram is linked to the previous step.

Lecture 1(Cont.) Introduction to Object Oriented Programming Procedural programming:

Lecture 1(Cont.) Introduction to Object Oriented Programming Procedural programming: The benefits are: Easy to read program code. Easy to manipulate code as a various procedures. Code is more flexible as you can change the procedures.

Lecture 1(Cont.) Introduction to Object Oriented Programming Procedural programming: The features of procedural programming methodology are : Large program are divided into smaller programs. Most of the data are shared as global that can accessed from any where within the program. The procedures are interdependent that can’t be reused in different applications.

Lecture 1(Cont.) Introduction to Object Oriented Programming Procedural programming: The procedural language’s limitations are: The functions are interdependent, therefore, it’s difficult to separate one from another. They can’t be reused in other programs. The data are visible and accessible, making it easy to manipulate the data from anywhere in the program.

Lecture 1(Cont.) Introduction to Object Oriented Programming Object- Oriented Programming (OOP) In this methodology, the large application is broken into independent components called objects, which can be integrated to create a complete program. The advantages of Object-Oriented programming are: Real world programming. Reusability of code. Modularity of code. Resilience to change(المرونة). Information hiding.

Lecture 1(Cont.) Introduction to Object Oriented Programming Object- Oriented Programming (OOP) Real world programming: The object-oriented approach models the real world more accurately than the conventional, procedural approach. Reusability of code: In the object-oriented approach, you build classes, which can be used by several applications. Modularity of code: An object can be maintained independently of other objects. Resilience to change: Object-oriented programming also enables you to evolve various versions of software. When a change is suggested, the old system need not be completely re-built from scratch.

Lecture 1(Cont.) Introduction to Object Oriented Programming Object- Oriented Programming (OOP) Information hiding: Information hiding ensures data security in a program. Identifying the Applications of Object-Oriented Programming: Character User Interface (CUI) based Applications: is an interface used to interact with a computer by typing commands on the command-line. CUI is not user-friendly because a user needs to remember all the commands and the syntax of the commands. Graphical User Interface (GUI) based Applications: GUI is a method of interacting with a computer by directly manipulating graphical images in addition to text.

Lecture 1(Cont.) Introduction to Object Oriented Programming Object- Oriented Programming (OOP) Identifying the Applications of Object-Oriented Programming: Computer Aided Designing/Manufacturing (CAD/CAM) :Concept of OOP is used to create graphical and numerical building blocks that can be assembled to form portable, flexible, and cost effective solutions for various real life problems.

Lecture 1(Cont.) Introduction to Object Oriented Programming Object- Oriented Programming (OOP): Classes and Objects: A class is the blueprint of objects. A class defines the structure and behaviors of an object or a set of objects. A class is a collection of various attributes and methods. Objects are the basic building of OOP. An object is an instance of a class. You can access the data of a class by using its methods.

Lecture 1(Cont.) Introduction to Object Oriented Programming Object- Oriented Programming (OOP): Classes and Objects: Objects display the following characteristics: State: is indicated by a set of attributes and the values of these attributes. Behavior: refers to a change of the state over a period of time. It is how an object acts and reacts, in terms of its state changes. Identity: each object has a unique identity. The state and behavior comprise the properties of an object. The objects of the same class have the same behavior (methods), may or may not have the same state, but will never have the same identity.

Lecture 1(Cont.) Introduction to Object Oriented Programming Features of Object- Oriented Programming : Encapsulation. Inheritance . Polymorphism .

Lecture 1(Cont.) Introduction to Object Oriented Programming Features of Object- Oriented Programming : Encapsulation: is the process of hiding all of the details of an object that do not contribute to its essential characteristics. Encapsulation is the feature that provides security to the data as well as the methods of a class.

Lecture 1(Cont.) Introduction to Object Oriented Programming Features of Object- Oriented Programming : Inheritance: Enables you to extend the functionality of an existing class. Enables you to add new features and functionality to an existing class without modifying the existing class. Enables you to share data and methods among multiple classes. Superclass and Subclass : A superclass or parent class is the one from which another class inherits attributes and behavior. A subclass or child class is a class that inherits attributes and behavior from a superclass.

Lecture 1(Cont.) Introduction to Object Oriented Programming Features of Object- Oriented Programming :

Lecture 1(Cont.) Introduction to Object Oriented Programming Features of Object- Oriented Programming : Relationships Between Classes Kind-of relationship. Is-A relationship. Part-of relationship. Has-A relationship.

Lecture 1(Cont.) Introduction to Object Oriented Programming Features of Object- Oriented Programming : Kind of relationship: the kind-of relationship is used at the class level to describe the relationship between a superclass and a subclass. A subclass is a kind-of the superclass. Confirmed Ticket Kind-of

Lecture 1(Cont.) Introduction to Object Oriented Programming Features of Object- Oriented Programming : Is-A relationship: it’s used at the instance level to describe the relationship between an instance (object) and a class. Ticket for New York Confirmed Ticket Is-A Kind of

Lecture 1(Cont.) Introduction to Object Oriented Programming Features of Object- Oriented Programming : Part-of relationship: when a class is an element of another class, it depicts the part-of relationship. Address Student Part of

Lecture 1(Cont.) Introduction to Object Oriented Programming Features of Object- Oriented Programming : Has-A relationship: it’s the reverse of part-of relationship. When a class consists of another class, it depicts the has-a relationship. The has-a relationship is known as aggregation or composition.   Student Detail Address Has-a

Lecture 1(Cont.) Introduction to Object Oriented Programming Features of Object- Oriented Programming : Types of Inheritance: Single inheritance Multiple inheritance

Lecture 1(Cont.) Introduction to Object Oriented Programming Features of Object- Oriented Programming : Single Inheritance: a subclass is derived from only one superclass.

Lecture 1(Cont.) Introduction to Object Oriented Programming Features of Object- Oriented Programming : Multiple Inheritance: a subclass is derived from more than one superclass.