微信号:farsight2013

介绍:华清远见教育集团 - 高端IT就业培训专家,专注于嵌入式/Android/物联网高端人才培养.12年口碑积累,10万多名研发工程师从这里走出!

从应届毕业生到iOS程序员的心路历程

2018-03-14 11:24 华清远见

华妹早上到办公位后

打开电脑...



哇靠!

邮箱竟然收到一封来信!

信的内容是这样的



华妹你好,我是一名软件攻城狮,进入软件开发这个行业已经有近一年时间了,感觉有必要整理一下,又无人倾诉,平时也看你的公众号,索性就与你分享吧。


大方向抉择

我所学专业是通信工程,偏硬件,单片机、信号与系统、嵌入式、模电数电。。。毕业了,很想找一个与对口的工作。将自己的简历挂在智联上,有几家公司联系了我,可是考虑到发展前景问题,都选择放弃了。记得第一次面试的公司是某公司,当时懵懵的,问她招做硬件的吗;她说我们这边有的,让我过去面试看看。去了之后是“先扬后抑”,对你一阵夸赞,之后就开始游说,“虽说你的学习能力很强,但是你的技术还是不到位,我们这边可以对你进行包装一下.......”,当时被她说的一阵一阵的,有点下定决心的意思了。还好自己比较明智,没有签合同。后来听说它特别坑人。


之后对自己的发展前景有了很好的认识:硬件对我来说确实很对口,但是门槛比较高,需要好的学历,即使进入普通公司也只是焊点电路板,排排线。软件对我而言门槛就相对较低了,当时也是需求量最高的职业,但我没有什么就像某公司所说的我没有什么技术。不过一个偶然的机会,我收到某软件公司的电话,只是简单的电话面试,我就收到了offer,网上查了一下该公司的评价,还可以,公司挺大的,感觉不会太坑,正好当时辅导员也催着我叫三方协议,我就签了这家公司。就这样我就走上了软件这个行业。


小方向比较纠结

去公司报到的路上,没想到遇到同去报到的同伴,她们的技术相对来说比我好,而且毕业学校比我也好,这两方面一点优势没有,我的心开始虚了。后来很荣幸被分到了一个比较人性化的部门。


公司企业培训完就是部门培训。培训期我们可以根据自己意愿进行针对性的学习,当时对软件开发一点概念没有。听同事说,学iOS开发比较难,学习Android的人比较多,我就跟着选了Android。我们的培训也没什么,每天的任务就是敲培训教材里500行代码,学习到了后期我发自己跟不上,Java代码都不能完全理解(Android是基于Java),我和组长商量一下还是选择了Java。不过后来大领导出差回来了,听说我只会C,单独找到我希望我转iOS,领导开口我也没什么好说的,那就干呗。不过我也有担心的,我的课程落后很多,担心公司会辞退我。不过领导一句话打消了我的疑虑,“只要你态度端正,我们很人性的”。

从这一刻开始我就踏上iOS这条不归路。


完全靠自己

投身iOS,唯一的好处就是没有500行代码的要求。


一号坑:设备问题,大公司设备都是要申请的,像苹果设备这个只有进入项目组才会有的,我们只能用黑苹果,关键是黑苹果还得自己装。这个坑大了,捣腾了半星期才把黑苹果装起来,但是系统只能装Xcode5,系统版本太低。又花了半星期才把系统升上去(不是网络升,换镜像)。总算填了这个坑。


二号坑:没人教,公司对网络限制比较严,我们只能自己买书,自己看,对着书上敲代码。一开始在StoryBoard上拖控件,后来看了视频才知道一个完整代码怎么写。后来靠一些控件属性整理才将整个界面搭起来。


填完这些坑领导就把我拉到项目组了,项目组里我就是天天打酱油,还好组长每天给分我一两个缺陷让我改,我就这样熟悉了代码。


但是后期想学点东西只有抽空自己学,每天晚上自觉加班,看着视频敲点代码。后期优化代码还是得看点书。


学习心得——这才是重点

其实前期我看写iOS方面的书,可是看了发现一点用也没有,都是些Objective—C的基础,不能深入人心,看完就忘了,不如看些写界面的书。后来才开始看书。


第一阶段:写界面只是提高兴趣。不要认为界面是iOS的核心,界面搭建只是为我们创造点成就感。但是写界面还是需要点对象的思想的。关于对象思想,我也是后来在写代码中领会的,因为只学过C,只懂得面向过程编程。这个思想转变需要一定的过程,其实这中间有种只可意会不可言传的意味。代码写多了自然就领会了。界面后期会变的复杂话,这就需要你回去看一下OC基础了。


第二阶段:这个时候OC就派上大用场了。什么数据类型,什么forin循环,以及控件的代理等就在这个时候领会。但是你会发现有些数据怎么也显示不上去,但是你的程序也没有报错。这就要更深入了解OC了。


第三阶段:ARC机制,对象管理,内存管理就不得不去了解了,这个时候学习也能结合实际解决问题。


第四阶段:你会发现你的代码很不美观,你就需要了解一下Block,了解对象如何封装,什么类方法,什么实例方法自然而然就领会了。


第五阶段:结合项目,对一些问题解决。这样才可以丰富你的经验。


我认为OC是学无止境的,总有一些新需求让你去学些新东西。


总结

以上是我学习iOS这么久以来最想说的,其中的意味只有经历过才能领会。后期我将我平时项目中遇到的问题以及解决方案放出来,重在总结。


华妹看完这位上进小哥哥的信

不禁感叹自己是不是太安于现状了



曾几何时的你

是不是也有一些

不愿跟外人提及的心路历程呢

欢迎给华妹投稿哦



【近期文章推荐】

1.长江后浪推前浪年终奖金哪家强

2.这或许是2017年最扎心的消息 还能不能愉快的玩耍了

3.前方高能!2017华清远见北京总部年会闪亮登场
4.做完这25道初级前端面试选择题,离成功入职就不远了!

5.大赞!嵌入式2月薪资高达10500元,均薪稳定在9k以上!

6.程序员的13个日!常!趣!事!

7.【新年豪礼】免费送嵌入式学习必备电子书籍!

回复“0-71”任一数字,即可查看往期文章精选哦


长按二维码关注我们

与10万程序高手做朋友

每天干货享不停 

或微信搜索华清远见,即可关注我们

免费讲座 | 干货分享 | 程序员生活 | 就业招聘

高端IT就业培训专家

m.hqyj.com 

 
华清远见 更多文章 程序员必读书单(收藏版) 华清学员们的美好生活 农村老哥的互联网逆袭之路 Gps HAL层分析 那些年那些事 | 一个程序猿的心路历程
猜您喜欢 Hadoop简介及入门使用 IBM PowerAI线下编程马拉松——探秘金语音大数据的商业价值 PHP数组交集的优化 seaborn可视化之time series & regression 现有超过 5 亿台设备支持 Android Instant Apps