Index

chapter1

chapter2

chapter4

link one

link one

link one

link one

link one

link one

3 - Object Oriented Programming

Objects are entities generated as the instances of a predefined definition, describing the language elements included in the generated instances called objects. In Java, definition of composition of the objects is named as class.

Instances of the objects are manipulated according various language elements designed for this purpose. Objects are independent instances of the same class. They share the same structure with other objects generated from the same class but they are manipulated independently and this is the advantage of object oriented programming.

The roots of the object oriented programming dates back to early sixities (about 1960) when in University of Oslo (Norway) development of SIMULA compiler took place. This has influenced SmallTalk-80 and Eiffel languages in early eighties. These two languages are pure object oriented languages. That is, there is no free (hanging) functions which can be utilised in all along the program. All the functions in a pure object oriented programming language must be encapsulated in some class and may be accessed trough this class. C, FORTRAN, COBOL, BASIC, Pascal, ADA are not pure object oriented programming languages. They all have standalone functions disponible in all along the program.

The advantages of the pure object oriented programming languages are influenced other major computer languages in middle sixties and major non native object oriented programming languages are grafted with object oriented programming bundles. A language originally non object oriented programming language by design, but gained object oriented programming functionality after some operation is called a mixed programming language. In that respect, C++, Turbo Pascal (after version 5.5), ADA, PERL, PHP, especially JavaScript are mixed programming languages. Making an OOP patch to a programming language originally designed as non-OOP, heavies the language impact and changes its original programming modus.

The strict class paradigm of the pure OOP languages may be by-passed by one way or other in mixed languages, especially in C++ which has become world's larger, very heterogeneous and most difficult to master programming language. The inherent need of playing with memory allocations and desallocations, makes programming with C++ a real nightmare.

In contrast, Java is designed to be a native pure OOP language. You may not practice functional programming in Java. If you want to do so, just pass to ADA-2012, otherwise stick to Java. It is a real cool environment of programming with pure OOP srtictness. In addition, Java will let you to stand clear of memory plays. In Java you have no access to the memory locations and granted with an automatic garbage collection. This way, you can concentrate exactly on what you are really programming. That is why we are here.

<< Index

Polyglott HTML5(XHTML5 compliant HTML5 code)