学习Objective C时需要了解的关键事项?

时间:2011-11-02 10:17:39

标签: c# .net objective-c

我想熟练地学习目标C.

我在C#和几乎所有.NET框架方面拥有十年丰富的经验和专业知识。我对低级概念也有点熟悉。我知道指针是什么。

如果我开始学习Objective C,在开始研究语言之前需要了解哪些关键事项?例如,我是否需要改变我对编程的看法,是否需要以完全不同的方式处理平台和语言。

全心全意,

尼克

2 个答案:

答案 0 :(得分:5)

Apple Developer网站是学习中最重要和最有用的网站之一。在其上注册并访问许多文章和文档:

例如: Learning Objective-C: A Primer

答案 1 :(得分:3)

  

我是否需要改变我对编程的看法,是否需要以完全不同的方式处理平台和语言。

基本不同,但不同。使用Objective-C要记住的关键是它的模型更像是Smalltalk的消息传递范式,而不是任何类似C ++的语言,如Java和C#。您不调用对象的方法,将消息发送到对象,它是决定在运行时运行的代码的对象。因此,您实际上可以将任何消息发送到任何对象(尽管该对象可能会选择抛出无法识别的选择器异常),您可以在运行时更改对象的行为。

此外,Objective-C中的继承比其他OO语言少得多,您需要非常熟悉委托模式(不要与C#委托混淆)。

你会惊讶于不同的收集类的范围,即它非常小。有一个数组,一个字典(地图)以及每个的集合和可变版本以及其他一些相对不常见的变体。每个集合都没有很多版本,每个集合都有一个与Java相同的底层实现。理念是“这是一个API,让运行时设计者担心实现”。

哦,尽量避免使用例外。