天天看点

程序员高效学习法

1、制定计划

(一)远期计划:1-2年内的计划。时间可以分割成多个学习段,每个学习段1~6个月。一是计划自己达到某职位某薪资的要求;二是计划在这个时期内自己要学习的具体学科的知识,拿软件开发来说,它们可以是某程序语言、某一类算法、数据结构、系统编程、网络编程、设计模式、数据库技术、软件工程理论、编译器原理、机器学习等内容。需要注意的是,远期计划中学习的学科需要尽量与自身已经掌握的学科结合后能够成体系,比如这些知识能够达到一个岗位某薪资的要求。

(二)中期计划:1-4个月的内容。时间可以分割成多个学习块,每个学习块3~15天。将远期计划中的内容进行拆分。例如上面的具体学科系统编程可以分化成:(1)基本概念;(2)I/O编程;(3)进程相关编程;(4)多线程编程;(5)文件系统;(6)信号;(7)资源调度部分;(8)共享库;(9)进程间的通信;(10)管道;(11)消息队列;(12)信号量;(13)共享内存;(14)内存映射与虚拟内存;(15)文件锁;(16)socket编程;(17)终端和伪终端。

分成这17个部分来学习,可以先根据每个部分的难易程度先安排一个学习块,然后根据其难易程度以及空余时间的量在中期进行调整。

(三)短期计划:每天的计划。在每天估计好第二天可利用的空余时间,进行对以上学习块中的内容细化到具体第二天要做的事情。它们可以是:编程出某个程序、看完某个视频并理解记好笔记、读完某本书的某几页内容并理解做好笔记等。

如果第二天有特殊情况未能按时完成当天任务,就需要将任务顺推到第二天。同时如果当天任务完成比较轻松,可以选择随时添加适当的任务。

需要注意:因临时原因导致的未能按时完成,尽量只改变短期计划,不要改变中期计划的进程。

2、学习资料的选取

学习资料的选择空间特别大,容易造成选择困难症以及在某个时间点对学习内容的散乱,所以在早期计划阶段需要结合自己的能力和长期计划,确定好自己需要看的资料,对于不看的资料早点丢掉。

3、作息和饮食、运动

需要将自己的生物钟和作息时间稳定下来,固定时间饮食、固定时间运动。这样对身体也有好处。控制自己晚上的睡觉时间:推荐睡觉时间23:30,最晚睡觉时间:01:00。

4、控制娱乐

卸载自己容易上瘾的游戏,和没有作用的APP。有意识停止自己做无聊的事情。

5、关于懈怠

营造氛围,有意识让自己处于一种学习的模式之下。减少懈怠时间。如果确实懈怠了,可以适当休息,吃点东西。

6、关于写博客

目前的计划是撰写以下几个专栏,每天将在下列任意专栏中发表一篇文章:

(1)python开发专栏;

(2)C/C++开发专栏;

(3)JAVA开发专栏;

(4)系统编程专栏;

(5)网络编程专栏;

(6)数据结构和算法专栏;

(7)leetcode专栏;

(8)产品经理专栏;

(9)杂谈专栏。

7、关于编程的学习的方式

 这个很重要,编程的学习单靠看书、看视频是学不会的,可能出现这几种情况:(1)以为自己看懂了但其实没有理解的透彻;(2)理解了但是不会用;(2)记得不牢靠、容易忘。

 这里有两个原则可以作为参考:

 学习阶段:

    Time(看书/视频/等):Time(敲代码练习时间) = 3 :7

 项目练手阶段:

    Time(看书/视频/等):Time(敲代码练习时间) = 1 :9

8、关于做项目

 非常重要的一点:后期的学习基本上以项目为主!

(1)一定要开通github账号,并且会使用。

(2)前期自己做一些简单的项目,针对单一知识点进行练手。后期自己实现一些稍微具有挑战的项目,学习大项目中的代码关注点。

(3)平时可以参考一些难度与自身能力相对应的明星项目,这样的项目的代码量尽量不要太大。

 

 共勉!

转载于:https://www.cnblogs.com/Kidy/p/9393130.html