WEL COME PRAVEEN M JIGAJINNI PGT (Computer Science) MCA, MSc[IT], MTech[IT],MPhil (Comp.Sci), PGDCA, ADCA, Dc. Sc. & Engg.

Slides:



Advertisements
Similar presentations
Object Oriented Programming
Advertisements

Understand and appreciate Object Oriented Programming (OOP) Objects are self-contained modules or subroutines that contain data as well as the functions.
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.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 12Slide 1 Software Design l Objectives To explain how a software design may be represented.
1 OBJECT-ORIENTED CONCEPTS. 2 What is an object?  An object is a software entity that mirrors the real world in some way.  A software object in OOP.
Solutions to Review Questions. 4.1 Define object, class and instance. The UML Glossary gives these definitions: Object: an instance of a class. Class:
Classes & Objects Computer Science I Last updated 9/30/10.
Classes and Object- Oriented... tMyn1 Classes and Object-Oriented Programming The essence of object-oriented programming is that you write programs in.
Software Engineering and Design Principles Chapter 1.
Introduction To System Analysis and Design
Chapter 1 Principles of Programming and Software Engineering.
1 Introduction to C++ Programming Concept Basic C++ C++ Extension from C.
© 2006 Pearson Addison-Wesley. All rights reserved2-1 Chapter 2 Principles of Programming & Software Engineering.
WEL COME PRAVEEN M JIGAJINNI PGT (Computer Science) MCA, MSc[IT], MTech[IT],MPhil (Comp.Sci), PGDCA, ADCA, Dc. Sc. & Engg.
INTRODUCTION TO JAVA PROGRAMMING Chapter 1. What is Computer Programming?
C++ fundamentals.
OBJECT ORIENTED PROGRAMMING
OBJECT ORIENTED PROGRAMMING IN C++ LECTURE
Introduction to Object-oriented Programming Introduction to Object-oriented Programming CMPS 2143.
Object Oriented Programming
COMPUTER PROGRAMMING. Introduction to C++ History Merges notions from Smalltalk and notions from C The class concept was borrowed from Simular67 Developed.
Programming Languages – Coding schemes used to write both systems and application software A programming language is an abstraction mechanism. It enables.
OOP- OBJECT OBJECT PROGRAMMING By KRATI SHARMA 02 XI-B ✏✏✏✏ ☺☻☺☻☺☻☺ ✏✏✏✏
Object Oriented Programming Development
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.
Design Patterns OOD. Course topics Design Principles UML –Class Diagrams –Sequence Diagrams Design Patterns C#,.NET (all the course examples) Design Principles.
GENERAL CONCEPTS OF OOPS INTRODUCTION With rapidly changing world and highly competitive and versatile nature of industry, the operations are becoming.
Welcome to OBJECT ORIENTED PROGRAMMIN Date: 10/09/2014 Prepared By Prepared By : VINAY ALEXANDER PGT(CS) KV jhagrakhand.
An Object-Oriented Approach to Programming Logic and Design
CONCEPTS OF OBJECT ORIENTED PROGRAMMING. Topics To Be Discussed………………………. Objects Classes Data Abstraction and Encapsulation Inheritance Polymorphism.
Introduction To System Analysis and Design
11 Chapter 11 Object-Oriented Databases Database Systems: Design, Implementation, and Management 4th Edition Peter Rob & Carlos Coronel.
CSCI-383 Object-Oriented Programming & Design Lecture 13.
Computer Concepts 2014 Chapter 12 Computer Programming.
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.
An Object-Oriented Approach to Programming Logic and Design Fourth Edition Chapter 6 Using Methods.
 Programming Language  Object Oriented Programming  JAVA – An Introduction  JAVA Milestones  JAVA Features.
MADE BY :-- SHAHNAWAZ KHAN RAVINDER SINGH ABHIJEET AUGSTINE MADE BY :-- SHAHNAWAZ KHAN RAVINDER SINGH ABHIJEET AUGSTINE PRESENTATIONONC++PRESENTATIONONC++
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”
© 2006 Pearson Addison-Wesley. All rights reserved2-1 Chapter 2 Principles of Programming & Software Engineering.
WEL COME PRAVEEN M JIGAJINNI PGT (Computer Science) MTech[IT],MPhil (Comp.Sci), MCA, MSc[IT], PGDCA, ADCA, Dc. Sc. & Engg.
© 2006 Pearson Addison-Wesley. All rights reserved 2-1 Chapter 2 Principles of Programming & Software Engineering.
WEL COME PRAVEEN M JIGAJINNI PGT (Computer Science)
Introduction to OOP CPS235: Introduction.
1 CSE Programming in C++. 2 Overview Sign roster list Syllabus and Course Policies Introduction to C++ About Lab 1 Fill Questionnaire.
Lesson 1 1 LESSON 1 l Background information l Introduction to Java Introduction and a Taste of Java.
Introduction to Computers Lesson 13A. home Computer Program A set of instructions or statements, also called code, to be carried out by the computer’s.
Chapter 2 Principles of Programming and Software Engineering.
 Description of Inheritance  Base Class Object  Subclass, Subtype, and Substitutability  Forms of Inheritance  Modifiers and Inheritance  The Benefits.
Basic Characteristics of Object-Oriented Systems
Welcome to OBJECT ORIENTED PROGRAMMING Prepared By Prepared By : VINAY ALEXANDER PGT(CS) KV jhagrakhand.
Systems Analysis & Programming 10.1 Systems Development 10.2 Programming: A Five-Step Procedure Generations of Programming Languages 10.4 Programming.
Principles of Programming & Software Engineering
Programming paradigms
Visit for more Learning Resources
Object Oriented Programming
INTRODUCTION TO OBJECT-ORIENTED PROGRAMMING
CHAPTER 5 GENERAL OOP CONCEPTS.
Sections Basic Concepts of Programming
GENERAL OOPs CONCEPTS.
Principles of Programming and Software Engineering
INTRODUCTION TO OBJECT-ORIENTED PROGRAMMING (OOP) & CONCEPTS
PRINCIPALES OF OBJECT ORIENTED PROGRAMMING
Computer Programming.
The Programming Process
Object-Oriented PHP (1)
Presentation transcript:

WEL COME PRAVEEN M JIGAJINNI PGT (Computer Science) MCA, MSc[IT], MTech[IT],MPhil (Comp.Sci), PGDCA, ADCA, Dc. Sc. & Engg.

Reference Book CLASS XI By Sumita Arora

GENERAL OOP CONCEPTS CHAPTER 5

EVOLUTION OF SOFTWARE

A PROGRAMMING LANGUAGE SHOULD SERVE 2 RELATED PURPOSES : 1.It should provide a vehicle for programmer to specify actions to be executed. 2.It should provide a set of concepts for the programmer to use when thinking about what can be done.

A PROGRAMMING LANGUAGE SHOULD SERVE 2 RELATED PURPOSES : 1.The first aspect ideally requires a language that is “close to the machine”. 2.The second aspect ideally requires a language that is “close to the problem to be solved”

PROGRAMMING LANGUAGES HIGH LEVEL LANGUAGES LOW LEVEL LANGUAGES

ARE MACHINE ORIENTED Require Extensive Knowledge of computer circuitry Ex : Machine language & Assembly language Serve only 1 st aspect “close to machine”

Machine Language :: instructions are written in binary code in it. Only language that computer can execute directly. Assembly Language :: instructions r written using symbolic names for machine operation {READ,ADD,STORE} & operands. Program is then converted into machine language using ASSEMBLER software. LOW LEVEL LANGUAGES

HIGH LEVEL LANGUAGE OFFER English like keywords, constructs for sequence, selection & looping and use of variables & constants. Its programs r converted into machine language using compiler or interpreter Serve only 2 nd aspect “close to programmer”

Languages like C & C++ serve both the aspects and hence, can be called as Middle Level Languages

PROGRAMMING PARADIGMS PARADIGM means organizing principle of a program. It is an approach to the programming. Ex : Procedural programming Modular programming Object oriented programming

PROCEDURAL PROGRAMMING The focus is on processing It says : Languages support it by providing facilities for passing arguments to functions & returning values from functions DECIDE WHICH PROCEDURES YOU WANT USE THE BEST ALGORITHMS YOU CAN FIND

MODULAR PROGRAMMING A SET OF RELATED PROCEDURE WITH DATA THEY MANIPULATE IS CALLED A MODULE. It says Works on principle of grouping of components that carry out specific tasks. DECIDE WHICH MODULES YOU WANT PARTITION THE PROGRAM SO THAT DATA IS HIDDEN IN MODULES

Drawbacks of Procedural & Modular Approaches They do not model real world well. like a procedural program on library management aims at operations like issued, returned & give 2 nd class status to real world entities : books. In modular programming, since many modules access same data, arrangement of data can’t be changed without modifying all modules that access it

OBJECT ORIENTED PROGRAMMING

OBJECT is an identifiable entity with some characteristics and behavior. In OOP programming object represents a entity that can store data and has its interface through functions. CLASS is a template/blue-print representing a group of objects that share common properties and relationships. OBJECT ORIENTED PROGRAMMING

It says: decide which classes and objects are needed provide a full set of operations for each class PROPERTIES BEHAVIOUR PROPERTIES BEHAVIOUR OBJECT 1 OBJECT 2 DATA & FUNCTIONS ENCLOSED WITHIN OBJECTS NEW OBJECTS COMMUNICATE WITH EACH OTHER

PROCEDURAL PARADIGM FUNCTION 1 FUNCTION 2 FUNCTION 3 DATA 1 DATA 2

GENERAL CONCEPTS OF OOP 1. DATA ABSTRACTION 2. DATA ENCAPSULATION 3.MODULARITY 4. INHERITANCE 5.POLYMORPHISM

DATA ABSTRACTION ABSTRACTION refers to the act of representing essential features without including the background details or explanations. It focuses upon the observable behavior of an object.

ENCAPSULATION The wrapping up of data and operations / functions (that operate on the data ) into a single unit (called class) is known as ENCAPSULATION. Encapsulation is a way to implement data abstraction. It hides the details of the implementation of an object. It focuses upon the implementation that gives rise to observable behavior.

MEMBER FUNCTIONS MEMBER FUNCTIONS MEMBER FUNCTIONS DATA THE OOP APPROACH DATA ABSTRACTION & ENCAPSULATION

MODULARITY It is the property of a system that has been decomposed into a set of cohesive and loosely coupled modules. It reduces complexity of program It Creates a number of well-defined, documented boundaries within the program.

Inheritance is the capability of one class of things to inherit capabilities or properties from other class. Why inheritance was introduced into OO languages ? UP NEXT

INHERITANCE + POINTS 1.Capability to express the inheritance relationship which makes it ensure closeness with real world models. 2.Idea of reusability. It allows addition of additional features to an existing class without modifying it. A subclass defines only those features which are unique to it. 3.If a class A inherits properties of another class B, then all subclasses of A will automatically inherit the properties of B. This is called transitive nature of inheritance.

POLYMORPHISM It is the ability for a message or data to be processed in more than one form. It is a property by which the same message can be sent to objects of several different classes, & each object can respond in a different way depending on its class. Languages that support classes but not polymorphism are called OBJECT BASED languages.

1.It models real world well. 2.Programs are easy to understand. 3.It offers class reusability. Already created classes can be reused without having to write them again. 4.It facilitates quick development as parallel development of classes is possible. 5.Programs are easier to test, manage & maintain. ADVANTAGES OF OOPs

1.Classes tend to be overly generalized. 2.The Relations Among Classes Becomes Artificial At Times. 3.OOP Programs Design Is Tricky. 4.One needs to do proper planning & proper design for OOP programming. 5.To program with OOPs, programmer needs proper skills such as design skills, programming skills, thinking in terns of objects etc. DIS-ADVANTAGES OF OOPs

THANK YOU