Win a copy of Design for the Mind this week in the Design forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

OOP and Tech

 
Zafar Ali
Ranch Hand
Posts: 64
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
What are the difference b/w objects technology and object-oriented Programming languages?
 
Frank Carver
Sheriff
Posts: 6920
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
To show the difference between these terms it may be best to introduce a few more terms, and show how they relate.
"Object Technology" is an encompassing term for all systems and development strategies which use "objects". If a language, process or system allows assocated state and behaviour to be grouped together and treated as a single entity then it can be said to use "Object Technology".
"Object Based" programming languages are programming languages which use "Object Technology", but in some way treat objects differently to other data types. Examples might include Visual Basic and JavaScript which have objects, but you can't easily define new classes of object or inherit behaviour from other object types.
"Object Oriented" programming languages are programming languages which use "Object Technology" and in which Objects are the only data types. The programmer is free to create new types of object, typically by subclassing (Smalltalk etc.) or prototyping (Self etc.).
Note that Java, although often considered as an Object Oriented programming language, is not a pure implementation of the concept. In java there are some data types (int, boolean, char etc.) which are not objects and cannot be subclassed.
 
Ilja Preuss
author
Sheriff
Posts: 14112
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Originally posted by Frank Carver:
Note that Java, although often considered as an Object Oriented programming language, is not a pure implementation of the concept. In java there are some data types (int, boolean, char etc.) which are not objects and cannot be subclassed.

Also, in the most pure OO languages like Smalltalk, even concepts like classes and blocks are implemented as first class objects.
 
It is sorta covered in the JavaRanch Style Guide.
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic