打好基础(数据结构,算法,操作系统,网络,编程语言,软件工程,数理逻辑与数学)
看好书(寻找适合自己现有水平的一本好书抵几年自己摸索)
利用网络把学习到的知识点联系起来建立体系化知识(wiki,blog,stackoverflow,github)
多造轮子(轮子的演变过程就是自己能力提高的过程)
让自己做的事情的尽量自动化(测试,编码,部署)
不要计较得失专注做一个技术或者长期的项目(专注力)
保持健康,保持激情,保持效率,乐于沟通
基础准备----相关书籍
《计算机体系机构》
了解最基础的计算机硬件知识
《计算机操作系统》
了解整个操作系统的实现和编程环境
《编译原理》《计算机网络》
了解编程语言的原理和网络原理
《数据结构与算法》
了解编程中常用的数据结构与经典算法
阅读开源框架与优秀代码
一款优秀开源框架的阅读和学习是无止境的。
1.理清项目的整体架构和基本功能,仅是学习开源框架的一个基本方面;
2.设计模式:优秀框架的搭建,必然遵从设计模式,做到代码的高内聚低耦合,开放封闭原则,单一职责原则,依赖倒转原则等等;
3.数据结构与算法:流弊的攻城狮使用恰当的数据结构和算法,使得功能实现更容易,且效率更高;
4.时间空间复杂度:代码的高效性,同样是你看优秀开源代码的一个重要方面,是你摆脱lowB 程序员,进入工程师的必经之路;
5.语言特性的运用:内部类、反射、继承、多态、封装、位运算、函数式编程;咱们还很嫩,需要仔细体会啊;
6.代码风格:变量命名、注释等,你说这些不重要吗,我说很重要
学习编程的方法---多实战
学习编程的四个阶段
- 能看懂和调试别人的代码
- 能在别人的代码基础上进行适当修改
- 能把多段已有的代码拼凑起来实现自己需要的功能
- 能动手编写代码实现特定的需求
学习代码的四个招
- 多读 (常用库、编程框架的源代码、大牛的源代码、代码里面的测试)
- 多练
- 多想
- 多交流
如何读
常用库、编程框架的源代码、大牛的源代码、代码里面的测试
纵观全局:
- 目录结构、函数调用关系、类派生和使用/依赖关系
做记录:
- 直接在代码中加入自己的阅读理解
执行-->修改代码-->执行
- 通过改变来深入理解