1:为什么做iphone开发?
很久很久以前,在诺基亚的时代就有做移动应用的想法了,不过当时不知道是不是叫移动应用,那时候的智能手机不太智能,应用也不那么好用。由于当时还在上学,只是有这个想法,并没实践,也不知道怎么把程序装到手机里。后来塞班火了,就买了一本塞班的书,但是工作忙碌也就没看(庆幸ing..),再后来案桌/苹果都火了,开始准备学案桌,买了htc g1,一堆教材,写了一大堆各式各样的hello word,不过看案桌的系统架构,上面还弄个java虚拟机一样的运行时环境,很反感(一直从事unix/c语言方面的工作)。在后来就发现ios用oc开发,看名字,oc好像和c差不多,对c有好感,于是一边工作一边学。。。
一边学一边想着月入百万。总觉得写出来应用放在商店里就能变成暴发户了。正巧当时在一家大公司工作,虽然薪水还可以,但是每天写那些毫无技术含量的模块,说实话那根本就用不着程序员来做,只要长个手,会复制粘贴就可以去做了。这种工作对自己的技术/人生毫无帮助,唯一的收获就是发薪水。行尸走肉的过了不知道多久,决定辞职,全职自己做ios算了。
2:怎么学?
(1)能不能自学:很多人问我这个问题,其实根本没有能不能的问题,只有喜欢不喜欢,坚持不坚持。没基础可能有点难度,有其他语言基础的话,学这个太小儿科了。我从最初汇编-c语言到现在一直自学,不能说学的有多好,但至少能找工作打工了。
(2)怎么学:看书,努力,没有捷径,曾看到前辈开玩笑说怎么快速学会某技术,答案是:“提高打字速度,快点写代码就能快点学会了”。呵呵,每各行业都一样,想要一天学有所成是不可能的,一定要做好长期努力的准备,做ios开发并不只是简单的学会oc语言,ios是一整个平台,语言只是学习过程中很小的一部分。速成的方法往往有很多弊端,想要做好还是要从基础一点一点的打,我从开始接触ios到写出第一个程序(没上线),大约用了近半年的时间。本人自觉c语言功底不错,当时已经参加工作2年多了,主要做linux嵌入设备开发,也做过windows的上位机程序。
(3)看什么书:如果一点计算机的基础都没有,还是建议找个培训机构先培训一下。如果你是学生,那我不推荐你学ios,这个虽然目前比较流行,但是说不上什么时候就凉了,基础不好又有时间的话,还是从unix/TCPIP协议开始吧。感兴趣也可以去看看linux内核或者gcc源码什么的,如果想做游戏,也可以看看图形图像原理并且好好学习数学、算法,那才叫技术,ios这种东西纯粹是工具。有了对底层的了解,使用工具简直和吃饭一样容易。