C++
CHAPTER 1 INTRODUCTION
Session Objectives Introduction to Objects Define Class & Objects Characteristics of OOPS History of C++ Difference Between C & C++ C++ Programming Structure
All around us in the real world are objects. Each object has certain characteristics and exhibits certain behaviour
Object Oriented Programming Based On OOP's Concept Object Oriented Programming
OBJECT Data Color : Black Year : 2008 Actions Start Stop Accelerate
The Object-Oriented Approach - III Sales Accounts Personnel The real world around is full of objects .We can consider both living beings as well as things as objects.For example,the different departments in a company are objects.
Why OOP’s Concept are Used? The drawbacks of Traditional Programming approach are Unmanageable Programs Code Reusability not Optimum Problems in Modification of Data Difficulty in Implementation
Object – Oriented Programming Here the application has to implement the entities as they are seen in real life and associate actions and attributes with each. Accounts Data Employee details Salary statements Bills Vouchers Reciepts Functions Calculate salary Pay salary Pay bills Tally accounts Transact with banks
Benefits of Object Oriented Programming approach are - OOP offers better implementation OOP offers better data security OOP offers better code reusability OOP offers more flexibility OOP offers better manageable programs Large complexity in the software development can be easily managed User defined datatypes can be easily constructed
Object Oriented Approach Problem Identification Analysis Maintenance Design Implementation Development Testing
APPLICATIONS OF OOP's Data acquisition Systems Client/Server Computing Object –Oriented Database applications Artificial Intelligence and expert systems systems such as process control, temperature control etc. GUI based system such as Windows Applications Computer Aided Design and manufacturing Systems
Characteristics of Oops Encapsulation Data Abstraction Inheritance Polymorphism Class
Encapsulation Grouping of data and methods into a single entity is known as Data Encapsulation It is a technical name for information hiding. (i.e data hiding or data security)
Encapsulation Class Private Not accessible from outside class Public
Abstraction Data abstraction enhances security as use of data is restricted to certain functions only. Abstraction is more used where you want only a certain number of functions/methods are accessing data.
For Example Class Attributes Methods Data abstraction is a process of identifying properties and methods related much to a particular entity as relevant to the application Class Attributes Methods
It is the process of creating a new class from an existing class Inheritance It is the process of creating a new class from an existing class
Reusability can be achieved through inheritance Animals Insects Mammals Reptiles Amphibians Humans Non-Humans
Reusability Programs can be broken into reusable objects Shape Existing classes can be used with additional features Shape
Benefits of Inheritance Software Reuse Code Sharing Improved Reliability Rapid Prototyping
Polymorphism polymorphism allows a programmer to purse a course of action by sending a message to an object without concerning about how the software system is to implement the action Simply defined as “Same thing can behave different ones”
Class - Artiste Dancer Poet Sculptor Class : Shape Methods : Draw Move Initialize Subclasses
Classes A class is what defines all the data members and the methods that an object should have. The class defines the characteristics that the object will possess; it could also be referred to as a blueprint of the object.
Properties Vertices Border Color Fill Color Methods Draw Erase Move For Example Polygon objects Polygon class Properties Vertices Border Color Fill Color Abstract Methods Draw Erase Move into
CLASS + DATA FUNCTION Simply defined as a structure that combines the objects with some attributes (data structure) and some behavior (operation)
Access Specifiers of a Class Not accessible from outside the class Private Data or functions Public Accessible from outside the class Data or functions
To access the member data and member function defined inside the class C++ OBJECT To access the member data and member function defined inside the class
Object Oriented Languages Some of the leading object oriented languages are: C++ Smalltalk Eiffel CLOS Java
HISTORY OF C++ Author of C++ is Bjarne stroustrup He invented this language in 1980's at AT&T Bell Laboratories All the C programs can be run successfully using C++ compiler
ORIGIN OF C++ C++ was designed using two languages such as “C” Language which gives the low-level feature and “Simula67” provides the class concept.
DIFFRERENCE BETWEEN C & C++ C Language C++ Language Procedural Programming Language Object Oriented Programming Language Headerfile : #include<stdio.h> #include<iostream.h> “\n” is used to go to the next line we can use endl statement Function prototypes are optional All Functions must be protyped Local variables declared only the start of a C program It can be declared anywhere in a program, before they are used Return type for a function is optional Return type must be specified Do not permit data Hiding They permit data hiding Bydefault structure members are public class members are private We can call a main() function within a program This is not allowed
Summary Each class specification starts with the keyword “class” The Class Specification must always end with a semicolon (;) Data abstraction is the ability to create user-defined data types for modeling real world objects using built-in data types. Classes are used for data abstraction by hiding the implementation of a type in the “private” part. Polymorphism in Greek word means “Many Forms”
Summary A class is an enhanced structure that provides Object-Oriented Features of C++ An object is an instance of a class which combines both data and functions together. Encapsulation is the process of combining member functions and the data it manipulates and keeps them safe from outside interferrence The three access specifiers in a class are private,public,protected By default all members declared inside a class are private to that class C++ provides two pre-defined objects cin and cout for handling input and output
EXERCISES Describe the Basic concepts of OOPS? List the various applications of Object oriented Programming? Explain briefly Classes & Objects? State the use of #include directive in C++? List the various benefits of Object Oriented Programming?