Object Oriented Technologies

Preview:

DESCRIPTION

The semonar given at, K.K. Wagh Polytechnic, Second Shift (Nashik) on 06/08/2011. Class: SY and TY IT Students. Name: Tushar B Kute, SITRC Nashik.

Citation preview

Object Oriented Technologies

Tushar B KuteAssistant Professor in I.T.Sandip Institute of Technology & Research Centre, Nashik

Programming Paradigms

Procedure Oriented Object Oriented

3R

Readability Reusability Reliability

Procedure Oriented Programming

Procedures / Functions are used to form a modular program.

For example: C Pascal Cobol

Example: C Program

#include<stdio.h>int main( ){

. . . . . . }void display( ){

. . . . . .}int addme(int a, int b){

. . . . . .}

Object Oriented Techniques

ADT Polymorphism Inheritance

Abstract Data Type

Denotes the essential characteristics of an object that distinguish it from all other kinds of things.

ADT = data representation + its operations

Information hiding Encapsulation

Abstract Data Type

state, implemented by attributes behaviour, implemented by

operation identity

Abstract Data Type

class object instance encapsulation method message protocol

Abstract Data Type

Class A class is a blueprint for creating objects. It is like a data type in traditional language.

Instance An instance is a particular element of a class. It is like a variable in traditional language.

Polymorphism

Monomorphism every values & variables is interpreted to be of one and only one type.

Polymorphism some variables may have more than one type.

Polymorphism

Binding

static or early bindingaddInt(x, y)addFloat(x, y)

dynamic or lateadd(x, y)

Polymorphism

universal polymorphism1. parametric (ex) generic function2. inclusion (ex) subtyping, inheritance mechanism

ad hoc. polymorphism1. overloading (ex) +2. coercion (ex) 3 + 4.5

Example:

int add (int a, int b) float add (float a, int b) float add (float a, float b)

int add (int a, int b, int c) float add (int a, float b, int c)

Inheritance

vehiclevehicle

landvehicle

landvehicle

watervehicle

watervehicle

airvehicle

airvehicle

carcar trucktruck canoecanoe submarinesubmarine jetjet rocketrocket

18-wheeler18-wheeler pickuppickup

Inheritance

Kind-of Part-of

Inheritance

A room is a part of a house.A kitchen is a kind of room.

A boat is a part of a fleet.A cruiser is a kind of a boat.

A child is a part of a family.A son is a kind of a child.

A word is a part of a sentence.A noun is a kind of a word.

Problem Solving using OOP

Behaviour of a system (otherwise the state of the system) is exposed through the change of some characteristics.

paint new color

Property name : surface-color

Property value ; green

Property name : surface-color

Property value ; red

The force that change surface-color is PAINT action

Class

Class Describes an object, description includes properties (attributes) and methods the object can perform

CD_Drive {

boolean _latchState

boolean _contentState

openLatch()

closeLatch()

insert()

eject()

}

Object

Description about CD-Driver

Each object consume its own space (Identity)

Abstraction

Class wraps necessary details of the object and expose few through interface

Interface or method is communication point. Interface or method can be invoked on an

object.

CD_Drive lg

CD_Drive segate

lg.openLatch();

Object Oriented Languages Objects are supported. Objects are organized into classes. Classes are organized into

hierarchies using inheritance. An object communicates by sending

messages to invoke the operations of other objects

Objects of varying types respond to the same message differently using polymorphism.

Object Oriented Programming Languages

First object-oriented language, Simula at 1967.

Proved by Smalltalk at 1976. C++, Effiel, Common Lisp, Object-

Pascal, ... appeared at late 1970s. Object-oriented programming

environments matured at 1980s. User interface (1980s) : WIMP,

Dynabook, Apple Lisa and Macintosh, Window systems..

Object Oriented Programming Languages

Java appeared at 1995 C# by Microsoft at 2001

Object Oriented Languages

Ada CLU C++ Modula-2 Objective-C Smalltalk CLOS (Lisp) Java C#

Object Oriented Languages

C++

AT&T designed by Bjarne Stroustrup ANSI-C compatible OOP

Object Oriented Languages

JAVA

Designed at SUN by James Gosling and team

C/C++ syntax compatible True OOP ByteCode JVM

Industrial Importance of OOT

Java J2SE J2EE J2ME

Microsoft Visual Studio.net PHP

Market Share in I.T.

62 percent technologies are based on Java

22 percent are on .net 16 percent are on others…

Thank You

tbkute@gmail.com

Recommended