What is Object Oriented? Based on this article written by Bjarne Stroustrup on http://www.research.att.com/~bs/oopsla.pdf , "A language or technique is object-oriented if and only if it directly supports: [1] Abstraction - providing some form of classes and objects. [2] Inheritance - providing the ability to build new abstractions out of existing ones. [3] Run-time polymorphism - providing some form of run-time binding". So, when a language have this three of features, we can call it as an Object Oriented Language.
So what is pure Object Oriented Programming Language? Which one is it?
What do I ask above question?
Well, there is some discussion, and someone says that Java is not pure Object Oriented Language instead of C++. Wow, it's shocking statement. So lets the amazing Google help us, and I find this http://www.jvoegele.com/software/langcomp.html , where stated where object orientation of language can be separated by:
1. Pure
2. Hybrid
3. Multi-Paradigm
4. Add-On
5. Partial Support
In this articles, consideration of pure Object Oriented Language should support such of qualities of :
1. Encapsulation / Information Hiding
2. Inheritance
3. Polymorphism/Dynamic Binding
4. All pre-defined types are Objects
5. All operation performed by sending messages to Objects
6. All user-defined types are Objects
Well, Java and even C++ doesn't fit with above definition. The Eiffel, Smalltalk, and Ruby is the winner as pure Object Oriented languages.
Showing posts with label object oriented. Show all posts
Showing posts with label object oriented. Show all posts
Tuesday, June 19, 2007
Subscribe to:
Posts (Atom)
