Jan 12, 2011

object-c 和 iOS 开发

From C++ to Objective-C
1. Making comparisons with C# would require another document, because that language is much closer to Objective-C than C++ can be. Thus, a C# developer would certainly learn Objective-C faster. According to me, C# is, despite a bunch of advanced concepts, far less interesting than Objective-C, because it gives hard access to simple Objective-C features, and the Cocoa API quality is miles ahead of .NET. This personal opinion is not the subject of the present document.
2. Objective-C is a language, while Cocoa is a set of classes that contribute to native MacOS X programming. Theoretically, it is possible to use Objective-C without Cocoa: there is a gcc front-end. But under MacOS X, both are almost inseparable, as most of the classes supplied by the language are part of Cocoa. 
More precisely, Cocoa is the implementation by Apple, for MacOS X, of the OpenStep standard, originally published in 1994. It consists of a developer framework based upon Objective-C. The GNUstep project [6] is another implementation, which is free. Its goal is to be as portable as possible on most Unix systems, and is still under development. 

由上图可以看出 object-c 和 c++ 是同时发展出来的。二者都是 c 的超集。object-c 借鉴了 smalltalk。object-c 主要用于 iOS。
object-c 更像是 c#,而不像 c++。

iOS 开发
iOS Application Programming Guide

0 comments: