零基础学习 iOS 开发最难的是什么,如何克服
开发这个东西的话,其实入行门槛虽说不高,但是其实也不算特别低的,不然为什么程序员那么多,但是工资在普遍看来还是比较高的,是不是?先猜测如果已经是毕业工作了的话,即使是比较轻松的工作,业余时间也是比较有限的,仅仅凭借兴趣,能支撑楼主维持多长时间段里的持续时间投入,毕竟如果这周3小时,下周3小时之类的,我不认为能够达到3+3=6,很有可能3+3 <3。而且这还要看题主想要达到一种什么程度,玩票性质?还是到足以取得一份以此为工作能养活自己的程度?程序员是一个比较苦逼的职业哦~好了,泼冷水泼了这么多,如果上面的这些问题,题主都想的差不多了,或者有相对的觉悟的话,那么我觉得才可以考虑实施的一些策略和细节。普通的程序员入门相关的话,多看一些基础的书啊,把 C 和 C++这种学好啊之类的,我就不赘述了,题主应该在很多别的地方能找到类似答案。我的建议:1.Mac 和 iOS 设备Mac最好不是黑苹果,iOS 设备最好是 iPhone 这种能作为你日常设备的。虽然黑苹果和 Xcode iPhone Simulator 能在很大程度上满足最最基本的开发需求,但是也只是基本而已。尤其是一台 iPhone,作为一个开发人员,你是要比普通用户更多地理解这个平台,而你居然都不是一个或不曾是一个用户,在我看来,有些扯淡。而且平时多用,看到好的应用,会去思索它是怎么做到的。当你已经有了一些进步之后,能将自己写的应用跑在自己的设备里,甚至可以随时随地展示给你的朋友们看,这种成就感,岂是模拟器之流能比的?再不济,你已经花钱投入到了这个里面,不要让这些钱浪费至少也能成为一个不错的坚持的理由嘛。2.环境圈子圈子的重要性相信不用我多说,置身于一个开发的圈子中是很重要的。如果你身边有认识的这方面的朋友,不要害羞,尽管去骚扰他们,当然,他们如果帮助你,你也得请他们吃饭什么嘛,有来有回。但也很有可能没有这样的朋友,那这个时候,网上找嘛。CocoaChina 还算是国内的一个比较大的社区,多在里面混混,有不少教程,也有很多热心的人回答问题。而且多互动你很有可能更有成就感,有一定的进步后有人认可你,才足以让你继续下去。一个人埋头苦干,路上会碰到那么多问题,你要是没有一个好的圈子帮助你,你很可能就卡在那个地方,永不前进了。3.努力寻找实践的机会在达到一定水平后,也许朋友有个小点子让你坐着玩的东西,那就做。或者也可以努力去找找某些在线的远程的外包团队,加入他们做一些简单的东西,实践总强于纸上谈兵。(别鄙视外包啊,魂淡,找份正经的工作不是这么容易的好吗,有人肯让你做东西,就先做着再说啊,至少是个经验啊!)有了这些之后,竞成一个正向的良性的循环,语言的入门啊,框架的理解啊,这都是水到渠成的事情了,我不是说那些都会很简单和轻松,但是至少不会那么迷茫了,对吧?可以加下ios学习交流QQ群:629920342
- 如何下决心去做我其实算是一个不折不扣的懒人,所以装了xcode之后有1年都几乎没怎么碰,因为总觉得找不到什么项目可以写也没什么时间写。所以其实这是一个大难关,如果这个突破不了你根本没法动手去做。ios上来写游戏有点困难,所以初学者我建议找一个规模比较小,页面比较简单的项目,先不管三七二十一照着教程照猫画虎做一个,有了兴趣就可以接下去继续做了。克服办法:想办法找一个你有兴趣的app点子做。- 中文资料把你带沟里由于现在xcode7直接从swift2.0开始,国内很多中文资料是1.0或者1.2的,所以上来我就被println给坑了——运行会直接报错,搜了一下才知道2.0改成了print。这样的例子还有很多,邮局港剧,国内很多swift教程资料都是翻译国外的,而这部分资料很有可能过时了之后,国外的作者在原帖更新了,国内的翻译人员肯定没那么及时,然后swift不像其他语言,落后一段时间之后可能语法都大变了。这个时候看国内资料基本上会被坑到妈都不认识。克服办法:有问题只看stackoverflow- “显而易见”的问题很多教程就和数学证明一样,“显而易见”这里应该这样,或者“很明显”,“易得”之类的跳过一些他们觉得很简单的部分,国内教程有些时候翻译错了或者漏了几张图就更明显。经常看一篇教程看着看着就感觉好像中间漏了一大截。克服办法:无,只能自己慢慢摸索- 问号与叹号单独拿出来说,这个太麻烦了。俗话说,每当你用一次叹号,你就杀死了一只猫。问号好像叫做可选变量,叹号是叫强制解包,道理很简单,但鸽子为什么这么大!对于一个只玩PHP的人,这问号叹号简直是噩梦,习惯了弱类型+无需声明变量的语言之后,给我一个强类型+强制声明的语言,我连展开个数组解一个json都要折腾半天,php分分钟能搞定的东西就因为这个要罗里吧嗦写半天。虽然我也知道世界上大多数语言都是强类型+强制声明,连PHP7都这么干了。但我就是不习惯啊啊啊啊。不过总归这是业界潮流,也不能抱着php5不放是不是……克服办法:多杀猫杀杀就习惯了。- 快速上手xcodexcode的逻辑其实很奇怪,比如单击文件打开标签,多标签的管理方式和大多数IDE不同,界面古怪得有点像itunes,小屏幕上用起来憋屈等等。习惯了常规IDE比如idea家或者是vs的人要转过来的确挺扭曲。反正我是至少用了一周才勉强比较习惯。克服办法:找一个手把手step by step教你做一个single page app的那种教程,不管三七二十一照着教程来一次。- 写swift手感这个好解决,看教程的时候一定每句代码都要自己敲,切勿从教程直接复制代码到你的演示app里面,为了解决你手贱的问题,你可以把变量名改一下。手动多敲几遍代码绝对可以提升手感,尤其是swift这种和C差得不太远的还好,py这种现代语言一定要亲手多敲几遍才能有手感。克服办法:挖掉ctrl+C键- 数组和字典PHP和JS用户的痛,swift的集合管理完全是上了一个新台阶。习惯了 var x = [] 的人要吃苦了……克服办法:多用用就会了。- 语法糖里有毒和其他现代语言一样,swift也是一大堆语法糖,不过某些语法糖里面掺了私货,比如匿名函数的简单写法(好像叫什么尾随函数?)我感觉比传统写法还麻烦,我现在都记不住,每次都要去翻手册。然后switch不用break我也老忘等等。克服办法:多用用就会了。- 冗长难记的函数名变量名和常量名这个据说是从OC继承来的,为了贯彻苹果的“只看函数名就知道这个函数有啥用”的政策,swift的系统函数名字都非常冗长,尤其是函数参数名长到夸张,为了解决这个问题他们甚至搞出了“内部参数名”和“外部参数名”这种令人瞠目结舌的东西。如果你想用传统的纯文本编辑器写……对于新手来说会非常痛苦。克服办法:类似我这种新手就老老实实用xcode,不要去跟风玩什么劳什子appcode。- 一些简单问题可能很难搜出来我写的时候遇到了一个问题 UIsearchbar在触发的时候会顶掉状态栏,这个时候如果状态栏是light模式,那么会完全变得透明使得界面变得很难看,取消UIsearchbar也变不回来,但是模拟器上就没问题,只有真机才会出现,这问题我搜什么uisearch status bar color之类的搜了半天都搜不出,足足折腾了一周,才发现:这TM是ios8的bug!我真机是ios8模拟器是ios9……于是最后又找了好几天才找到一个alternate fix code解决……血都吐了三升了。这个问题其实就是说,不光国内资料少,国内swift资料都不多,好多问题你不在后面加个swift保准你搜了全是OC的。克服办法:无- xcode闪退编辑storyboard的时候经常是,点一个右侧的下拉菜单,闪退,拖一个控件,闪退,点一下复选框,闪退,做个auto layout,刚点下生成约束就闪退。而且一般都是在你写得正有灵感的时候闪退,让你有一种砸电脑的欲望。克服办法:编辑storyboard的时候每10秒存档一次。
学习ios需要一个良好的氛围和一个好的朋友带着你学习,我们建立的那个群:629加上920最后342的目标就是大家相互帮助,相互解答,多一个人多一个学习方法,在群里大家不懂的都可以在群里问,所以现在很多已经都是月收入在2万以上。平时有什么新的技术,我们的那些大神都会出来一起研究,所以氛围很好。
感觉写的好,对你有帮助,就点个赞呗,别光只收藏哈.~( ̄▽ ̄)~