Programming Techniques A presentation By  Abdul Ghaffar
Objectives of Programming To control the  computer (OS) Data handling Graphics & Simulation Communication Scientific research Entertainment Other Utilities and Applications
Software's Classification Software Application Languages System High Level Low Level
Programming Paradigms Programming Language Non Structured Procedural Modular Logical Functional Object Oriented Structured C, C++, VB, VC++ ,Java, COBOL,  Pascal etc Assembly, GWBasic Assembly, C/C++, Java etc Assembly, C/C++, Java etc Prolog Lisp C++, VC++, VB, JAVA etc
Object Oriented Programming In OOP a software is organized as a collection of discrete objects that incorporate both  data structure and behavior. Basic terminology and ideas of OOP are.. Objects & Classes Abstraction and encapsulation Inheritance Polymorphism
What is an object ? Objects are the elements through which we perceive the world around us. All objects have these characteristics.. Identity State  Behaviour
Classes (classification of objects) A class is a group of objects with same attributes and behavior. The characteristics of a class are A name Attributes Methods
Abstraction / Encapsulation Abstraction is the representation of all essential features of an object, which means its possible state and behaviours. Encapsulation is the practice of including in an object everything it needs hidden from the other objects in the system.
Inheritance Inheritance mean that the class inherits the characteristics of another class as part of its definition.
Polymorphism Polymorphism means ‘having many forms’.
Benefits of OOP Reusability Extensibility Decomposability Composability Understandability Protection