您的位置:首页 > 移动开发 > IOS开发

我的iOS自学之路-从零基础到企业实战开发

2016-11-03 16:14 337 查看
学习一门语言需要坚持的毅力,本篇分享一下我的iOS自学之路,以及学习中总结的经验!

1. 为什么要学习iOS?

2014年11月左右进入某家公司,使用Java语言进行移动App接口开发工作,工作中认识了以为iOS开发同事,后来逐渐了解到iOS的市场行情和薪资待遇,大概是在培训机构培训4个月第一份工作大概能拿到1万左右,瞬间感觉做Java开发的受到一万点伤害!大学刚毕业都能拿到1W,我做Java 已经工作X年了还不如刚毕业的,那时开始慢慢关注iOS,了解到那时移动开发很火,以后发展应该很好!从那时开始决定自己要自学iOS技术!

2. 学习iOS要先学啥呢?

经过百度,有人说直接学习Objective-C语言就行了,也有人说要先学习C语言,因为Objective-C语言是对C语言的封装,可以在Objective-C中的任意地方使用C语言,学会C语言基础才能更牢固, 于是开始学习C语言。

3. iOS学习第一步:先学习C语言

学什么东西确定了,那么该如何学习呢?

我学习技术一般是先从网上下载一些视频教程,视频教程学习快,一般视频知识体系不够完整,我一般学习完视频教程完之后还要在网上买一本书再来体系的学习!这样 视频教程+书籍 学下来应该就差不多了。

2014年12 学习C语言

百度一下C语言视频教程有很多,下哪一套好呢?最终选择了千锋iOS培训机构的一套视频,于是从2014年12月正式开始学习C语言,视频学习完买了本书《C Primer Plus(第五版)中文版》继续学习C语言





4. C语言学习完了,接下来学习Objective-C语言

2015/2月开始学习Objective-C

学习Objective-C需要Xcode 集成开发工具,Xcode是安装在苹果系统上的,苹果系统哪里来呢???

刚一开始在Windows上装了虚拟机,搞了几天终于把虚拟机装上了,发现卡的要死,放弃

接下来想在我的笔记本上装个黑苹果,后来发现对笔记本的显卡有要求,我的笔记本显卡不支持,放弃

要不买个mac min吧,发现好贵,就那么一个小方块便宜的也接近4千,放弃

最终花的大概1万大洋托关系买了个13寸的mac pro

老规矩先从视频教程开始,然后再看书







5. Objective-C学习完了,接下来学习UIKit

2015/5月学习UIKit

OC是用来控制业务逻辑的,UIKit是用来展示用户界面的,学了那么长时间,终于要学界面了

老规矩先从视频教程开始,然后再看书





6. OC也学了,UIKit也学了,是时候来个项目实战一下了

2015/6月份开始项目实战



7. 项目实战中发现Core Data我竟然没听说过

2015-08-24开始学习《Core Data应用开发实践指南》

关于CoreData视频百度上的视频教程不是很多,所以我直接看都是书籍



8. 听说Objective-C要被淘汰了,Swift是新趋势

2015-09-24 开始学习Swift

还是老规矩从视频教程开始学习, 然后再看书《Swift语言实战入门(第2版)》





9. 学的差不多了能胜任工作不?找份面试题看一下

发现面试题10题会一题, 我的心瞬间哇凉哇凉的, 找了一些面试视频恶补一下



10. 真机调试、App上架、推送通知 都需要真机???

之前学习和真机相关的功能真的是接触的很少,发现这部分自己一无所知

于是买了ipad min2 大概1900元左右吧,开始学习 必须使用真机才能调试的技术

11. 一直想找到这样的书:从iOS开发的第一步到提交应用的整个过程

当当网上找的这本书,这本书还算凑合, 和理想中的有些差距



12. 基础应该都差不多了,iOS核心技术一点都不会

2016-05-28继续学习《iOS 5核心框架》



13. 自我感觉iOS学的差不多了,如果再上一个台阶呢???

2016-04-17 开始学习《iOS开发进阶》



14. 学习第三方框架

公司在开发App中会经常集成第三方框架、开源库等,使用这些框架更够更快的开发。

如 AFNetworking, SDWebImage、 Masonry、 fmdb、MJExtension、MJRefresh、Realm, WKWebView、SVProgressHUD、MBProgressHUD、GPUImage、ReactiveCocoa(RAC)、环信即时通讯、七牛云存储、极光推送、友盟统计、社会化分享、第三方登录、百度地图、高德地图等

15. 偶然的机会发现小马哥11期iOS全套视频教程

一直学习到2016-11 月才大概算是学完



16. 工作之余可以关注iOS的一些公众号和微博,注意要有技术写作能力

如何提高自己的眼界呢?

通过关注iOS的一些微信公众号来了解最新的技术动态,如 iOS大全、CocoaChina等,这里的订阅号每天都会推荐一些iOS技术文章



关注一些大牛的iOS微博: 他们经常分享iOS技术













要有自己的技术博客,如简书等,使用MarkDown语法总结记录自己的对技术的理解

如果有能力可以在GitHub上构建自己的开源项目,这在找工作时是个加分项

17. iOS已经学习差不多了,达到初级工程师的能力了

历时2年自学时间,终于算是修成正果了。同样2年中iOS市场也经历着巨大变化,由于中国这几年出现了一大批iOS培训机构,培训的大部分是大学刚毕业的学生,而这些学生很多不是计算机专业的,培训机构每4个月就会培训出来一批,就这样让培训机构在这几年批量生产了很多很多很多很多初级程序员,再加上最近一两年很多小型创业公司倒闭会导致一些iOS程序员失业,造成的现状是iOS远远是供大于求,供大于求的后果就是本身的价值就会变低,也就是iOS程序员的薪资变低了,同样由于iOS程序员众多,现状企业招聘iOS的要求越来越高,现在工作经验都要求4年的工作经验,导致很多初级程序员失业转行。

对于初级iOS工程师的出路

继续深入学习iOS技术,达到中高级工程师的能力才有出路

还有一部分同学转行了,有的学习前端了

17. iOS继续学习之Road

现在iOS开发流行混合模式,如Native Rect 听说这个技术是个坑,还有Weex框架还挺火的,可以了解一下。

HTML5 也是需要掌握的

JavaScript 最近非常活,也需要掌握的

微信小程序先了解一下

iOS的开发最终是高效和低价的,使用原生开发速度慢,使用web开发速度快,他们最终要折中融合在一起,如果只会原生开发我想估计会被淘汰的!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息