作者Stephen Kochan
很牛x,
C语言----UNIX,这些就不多说了。
Brad J.Cox在20世纪80年代早期设计了Objective-C语言,它以一种叫做SmallTalk-80的语言为基础。
SmallTalk-80可以参考:
http://en.wikipedia.org/wiki/Smalltalk
http://zh.wikipedia.org/wiki/Smalltalk
Objective-C在C语言的基础上加了一层,这意味着对C进行了扩展,从而创造出一门新的程序设计语言,支持面向对象,即对象的创建和操作。
C语言可以参考:
http://en.wikipedia.org/wiki/C_(programming_language)
http://zh.wikipedia.org/wiki/C%E8%AF%AD%E8%A8%80
Objective-C可以参考:
http://en.wikipedia.org/wiki/Objective-C
http://zh.wikipedia.org/wiki/Objective-C
这几点主要说明Objective-C是从哪些语言演化而来的。概括的说主要基于SmallTalk-80的一些特性和C语言的实现,最后自己又进化了一些。
1994年,NeXT计算机公司和Sun公司联合发布了一个针对NEXTSTEP系统的标准规范,名为OPENSTEP。这个系统作为基础,苹果做了OS X发行版本,这个版本的开发环境的版本被苹果公司成为Cocoa。
这个主要介绍了OS X是从NEXTSTEP系统来的。开发环境叫Cocoa。
当iPhone于2007年发布时,起初,苹果公司不欢迎第三方应用程序开发。只允许他们开发基于Web的应用。最后开发人员非常不满,于是苹果公司不久之后就宣布,开发人员能够为iPhone开发所谓的本机应用。也就是我们所说的native应用。
这里主要说iOS应用开发不是一开始就有的,也是经历一定曲折后才出现的。
最后作者告诉我们:学习Objective-C之前没必要完整的学习C语言。毕竟C是面向过程的,看多了反而会让你误入歧途学不好Objective-C。Objective-C只是C语言的扩展,关键是它是面向对象的。所以要养成良好的面向对象的程序设计风格。
最后的忠告:“无图无真相”,学习计算机语言也是这样的,强烈建议运行每一个程序(必须一个字母一个字母的敲一遍)。
上面大部分是书作者自己的思想,我来说说我的吧,我从汇编写代码开始、C语言、C++、Java、ASP、JSP、Perl、Python、Shell等等,面向对象的,面向过程的,面向测试的,编译执行的,解释执行的,脚本了。基本上大部分都经历了。
个人经验而言,语言,主要还是一种工具,但这种工具总会有一套自己的生态或者思想以及开发环境,还有应用场景。没有那么多孰好孰坏的。分清场合和用途,去选择一种适合的语言去做。
刚开始看Objective-C的时候,挺别扭的,就像第一次接触MacBook Pro的OS X系统一样。慢慢习惯就好了。
只要你努力,一般没有什么学不会的问题,只是说学的快慢和学的深浅,应用的娴熟和高超等会有些个体差异而已。
我会将我的整个学习过程和大家一起共同分享。
好了,努力吧,骚年。和我一起学习Objective-C。