回想起来,从写一行“Hello World”到如今,已经有七八年了,回想起来,真正让自己技术得到提升的关键点有三个方面,一个是“实战项目”,一个是“技术书籍”,还有一个就是“开源代码”。
概述
1
毫无疑问,“实战项目”永远是积累编程经验最重要的途径,项目越复杂,开发中遇到的问题越多,经验的积累也越多,我相信任何一门技术,如果总只是自己写写Demo,是永远掌握不好的;“技术书籍”则指的是那种着重“思想”方面的书籍,能从本质上提升个人的编程素养,例如:“xxx编程思想”、“Effective xxx”、“重构”、“设计模式”等等,这些书都是需要反复看的,有了实战经验再带着问题看,效果会好很多倍。“开源代码”则是吸收“别人的实战项目经验”的最好途径,不要做井底之蛙,看看大牛们都是怎么设计代码的,深入学习优秀的开源代码,你能学到很多非常实用的编程技巧和编程风格。
学习编程无非就是以下四个阶段
1
第一阶段,了解系统/平台(Windows、Linux、Android、IOS)的基本工作原理,了解其开发环境,编译系统,以及有哪些可以使用的编程接口(API)和第三方库。
2
第二阶段,学习该平台提供的各个API和第三方库,比如:UI控件、线程、Socket等等,并通过Demo和封装,转换为自己的库和API。
3
第三阶段,在项目实战中积累开发经验,并通过技术书籍、开源代码提升编程技巧和能力。
4
第四阶段,深入了解和研究平台本身,比如:UI系统工作原理,消息通知机制,内核和框架等等。
分享给大家
虽然我经历了好几个平台的开发(Windows/Linux/Android),但是在第四阶段都没有太多深入的学习,当然,这也是我今后的努力和提高的方向。不过在项目实战中,还是积累了不少编程经验和技巧,在学习开源代码的过程中,也看到了许多不错的设计思想,我希望能有机会分享给大家, 后面有机会我会慢慢分享给大家。
上一篇:如何创建Linux的用户组