如果从未使用Cocoa(或者它的前辈NeXTSTEP和OpenStep)写过程序,你可能会发现Cocoa Touch(用于编写iOS应用程序的应用程序框架)比较新奇。它与其他常用应用程序框架(如用于构建.NET或Java应用程序的框架)之间存在一些根本差异。起初你可能会有点不得要领,不过不必担心,只要多加练习,很快就能够对Cocoa Touch运用自如了。
如果曾经使用Cocoa或NeXTSTEP写过程序,你会发现iOS SDK中有许多熟悉的身影。有很多类都是从Mac OS X版本的Cocoa中原样移植过来的。即便是那些不同的类,也遵循相同的基本原则和相似的设计模式。但是,Cocoa和Cocoa Touch之间还是有一些不同的。
无论你的知识背景如何,都需要时刻牢记iOS开发与桌面应用程序开发之间的重要差异。接下来几小节讨论这些差异。