advertisement

Article:
  The Objective-C Language
Subject:   dead language revival?
Date:   2001-11-20 11:38:08
From:   gctwnl
Response to: dead language revival?

This message is flame bait, but for the people new to Obj-C let me put a few things straight.
1. This is false. Obj-C can be used both strongly typed and weakly typed. A better way to look at this is that Obj-C has both compile-time typing (what you call strong) and run-time typing (dynamic). Take your pick, for some OO-approaches only dynamic typing is feasible.
2. The best data protection is in your head. But aside from that, I cannot easily access the members of a class, they are private. As far as 'protection' goes in a programming environment this is equal to the 'private' members in C++.
3. A matter of taste, but in my (and many other's) opinion, Obj-C is far more elegant than C++. It is also a fundamentally better paradigm than C++ in the sense that even classes are objects in their own right. It is not just OO, but even it's OO is OO (and not, as in C++ 'grafted on'). You experience the difference when you want to do really dynamic stuff.
4. This is somewhat true. But we were talking about Mac Dev, right? (I think that there is a decent foundation framework as part of GNUStep btw).
5. This is absolutely false. Obj-C is not slow at all. First, all the really dynamic stuff is cached, and secondly, for the stuff where you really need speed (a lot of calculations for instance) you will do that in C, after all Obj-C is a superset. It is stupid to write a large calculation using messaging. On Mac OS X, you can even combine C++ and Obj-C (Obj-C++).


The phrase 'industrial strength' is somewhat misleading unless you talk marketing instead of technology.


And lastly: large projects do not suffer from whatever language you choose. You can build beautiful OO programs in just CC. It's a method, not a language.