The term object-oriented has been a catchword gaining more and more importance in recent years [Wien88][Wens91][Tell89][Rumb91][Flor91][Elli90][Dani91][Budd91][Boni91][Betz89]. Rarely, however, there has been a more misinterpreted term in computer science as well. This term has even gained a foothold in areas where object-orientedness in its genuine meaning makes no sense at all.
Looking at the term object detached from its computer-science meaning, we see that it is a very common word used in the real world for any-thing we can see and touch, be it a house, a table or a stone. Mapping this meaning back to the abstract computer-science world, any-thing (i.e. any opaque data set seen as a whole) could be termed an object. But this would be just another term for the programming paradigm of data encapsulation, i.e. grouping data items which belong together into a single aggregate which we then call object.
This is, however, not what object-oriented programming is supposed to be. The object-oriented programming paradigm encompasses the following programming paradigms:
The association of data sets (i.e. classes) with the corresponding functions working on a particular data set (i.e. methods) is an intrinsic advantage of object-oriented programming languages over traditional procedural languages.