Why is Objective-C not very popular outside of the Apple community? [closed]

Another way of thinking about this question might be: why did C++, rather than Objective-C, become the “Object-Oriented C”?

I learned C++ in 1991, and remember that C++ seemed like the hot thing while Objective-C was this weird little language that no-one (other than NeXT) wanted to use. I’ve been trying to remember why, and I think it boils down to 4 things (5, if you include C++ having AT&T behind it):

  1. Features: C++ had, even then, a much richer set of features than Objective-C.
  2. Syntax: Objective-C’s syntax is a much bigger change from C than is C++.
  3. Performance: Stroustrup focused on making C++ features easily mappable to C, so that (in theory!) there was no performance penalty in using C++. And with judicious use of the “inline” keyword, you could even get better performance with C++ than with C. Even now, there is no way I would use Objective-C in a project where performance was critical.
  4. Style: Relatively strong, static typing was the fashion (for good reasons).

So compared to Objective-C, C++ in the early ’90s gave you more features with less of a performance penalty, with a syntax that was both fashionable and more familiar than Objective-C’s.

Leave a Comment