View Single Post
  #3  
Old Monday, April 11, 2005
Argus's Avatar
Argus Argus is offline
Administrator
 
Join Date: Mar 2000
Location: Islamabad
Posts: 702
Thanks: 351
Thanked 2,445 Times in 282 Posts
Argus is a splendid one to beholdArgus is a splendid one to beholdArgus is a splendid one to beholdArgus is a splendid one to beholdArgus is a splendid one to beholdArgus is a splendid one to beholdArgus is a splendid one to behold
Default Oop

Computer languages are divided into two major classes. (1).Procedural Programming Languages and (2).Object Oriented programming Languages. Today we got to discuss the second class so let's start with it.

To understand Object Oriented Programming(Language) well, one should have good acquanitance with fundamental Programming techniques.
The Programming Languages have divided the world into two parts. *Data and *Operations on Data. Data is static and is immutable unless affected by the certain operations which could certainly bring about a mutation in the structure of it(data). The operations which operate Data are called as procedures or functions. A point to understand here is that these functions or procedures which we pronounce as operations on data have no lasting state, they are only useful when they affect data in a desired fashion as that is the purpose of their life.
Now being succinct I come straight to the main topic and will depict why to use OOPL? How much distinct it is intrinsically from the PPLs?
answering first query; OOPLs provide the programmer with the following advantages which are not provided by the former class as it makes programs:
1. more intuitive to design
2. faster to develop
3. amenable to modifications
4. easier to understand
5. conceiving program tasks in a better way
6. more secure and easy to restrict
7. inherit from classes and to overload methods which could be run recursively and need to be defined once
8. get merged with other programs in such a way that no fear of data loss remains likely

Second query is answered as so; Same functions and procedures used in PPLs are extended and re-organized in a novel way. Making it closer to the nature but yet has a drawback of the lack of elucidation which makes it harder to understand. It means that the OOPL(s) have the same state and behavior and a real high level unit called object to make the programming dynamic and faster.

Now to define OOP, firstly one should learn what an object stands for?

Object is everything and just a black box. This statement means that everything present on the suface of the planet is an object, while taking OOP as an ad hoc it is merely a box which has a function to receive and transmit data according to the signals or commands. Making it easier to understand I will put it this way. OOP is something which groups Data and Operations into modular units called Object. This object will receive signals in the form of command syntax will operate the data the way, it(code) is directing and then finally to bring the result back to the programmer alongwith the command control.
Here we reach a conclusion and in a better postition to define OOP.
"The insight of object-oriented programming is to combine state and behavior, data and operations on data, in a high-level unit, an object, and to give it the language support"

Now a curt description of the Object Oriented Development Environment

Basically this environment is comprised of three parts.
1. A library of objects, software frameworks and kits(for building GUI and other graphical applications).
2. A set of Development tools(Merging and modifying more than one programs etc)
3. An Object-Oriented Programming Language(Enabling a programmer to encode a program into the specified fashion, and making the system understand to work according the user needs and commands)
Now some brief notation of the most important and frequently used OOP terms.
1. Object(defined earlier)
2. Message(Software objects communicate with each other via messages)
3. Class(A prototyped that defines the variables and methods common to all objects of the similar kind, thereby making program re-useable and extensible)
4. Inheritance(Provides a natural and powerful mechanism for organizing software programs, usually a class inherits state and behavior from its super-class)
5. Overloading(multiple declaration or assignment of a method)

That was a brief introduction to the OOP(L). Any kind of supplementation has got full scope and will surely get a decent response.

Ahmad Bilal Khan(Thanx ABK)
Reply With Quote