程序员的学习和积累

开发 后端
每个人学习的方法和习惯可能都不尽相同,很多人习惯了在学校的学习方式,特别是很多刚出校门的人。在他们潜意识中,学习只是应付考试的一种手段,考完就一切OK了,全部还给老师了也无所谓,反正考完之后下次不会再考这么课程了(大学尤其如此)。

对于一个程序员来说,学习的重要性相信大家都能意识得到。如何才能有效地学习,高效地学习?探讨下这个问题,我认为很有必要。

每个人学习的方法和习惯可能都不尽相同,很多人习惯了在学校的学习方式,特别是很多刚出校门的人。在他们潜意识中,学习只是应付考试的一种手段,考完就一切OK了,全部还给老师了也无所谓,反正考完之后下次不会再考这么课程了(大学尤其如此)。长期的应试教育会让很多人以考试的心态来对待学习,我也是受害者之一,翻翻我硬盘中散落的各种语言编写的"hello world",各种半成品,它们就像一张张60分、80分的试卷悄无声息地躺在某个昏暗的角落里。

职业生涯的学习一个最大的特点是具有持续性,你需要在某个知识或技能上花费你大部分精力。这时候,应付考试的学习方法已经不再有效了,而知识积累显得尤为重要。如果没有积累,所有的学习的成果都是一张60分的试卷。当你下次使用所学知识的时候,你手头有的就只有那张60分的试卷,你的学习将重新从0开始,由于时间关系或其他原因,你这方面的学习可能在你达到可以考60分的水平时又戛然而止,当你后面又需要使用时,又从0开始学习...如此循环往复,一定时期内,你的水平将永远停留在0-60分中间。

职业生涯学习的另一个特点是,你有机会去教。“The best method to learn is to teach”,你可以将你的所学通过各种形式的分享传授给他人。通过教的方式你不仅能够巩固你所学的知识,更能够推销自己、结交志同道合的朋友。

那么,基于职业生涯学习的特点,应该养成哪些好习惯呢,本人愚见,提出几点:

积累:

1、使用note。比如evernote,one note(个人推荐神器evernote)。作为一名程序员,如果你不使用note的话,显然你已经out了。你可以使用note来在任意时间记录你的想法、学习笔记、分享、待办事项等等任意你想记录的。

2、经营好你自己的资产。你的作品、代码、idea、你搜集到的资料都是你的资产。对其进行分门别类,同步到网络硬盘(注意信息安全)、多备份都是很好的选择。

分享:

1、将自己的知识总结成ppt、写出demo。要养成这种意识,当你形成ppt、demo的过程中,你将站在更高的层次去看待你学过的知识、加深你的理解。当然,如果有机会一定要去讲,不管是何种级别的分享,哪怕是自己给自己讲或是讲给自己身边的朋友。

2、写技术博客。博客有很多种,对博客的定位,决定你写什么样的博文。如果你的博文每篇都作为一个研究课题来写,我相信你打造一个精品博客一定是早晚的事情。当然我们可能没有要求这么高,那么博客也可以当note来使用(记录你每天的所学所想),这样可能有好心的人会指出你博文中的错误,和你探讨相关的技术等等。

最后想谈下自己对技术书籍、博客订阅和技术社区、QQ群一些看法。现在社会的信息非常大,你可以通过很多渠道获得你想要的信息。但是,问题是信息的质量良莠不齐、信息量巨大,如果每天都把时间花在自己熟悉的信息上、每天都参与各种无意义的讨论(如语言之间的优劣),那么反而学不到东西还会把自己弄得心烦意乱。

技术书籍:技术书籍应该是最严肃的获取信息方式,你可以通过对优秀技术书籍的研读、思考(特别注意思考这个词),形成你知识的框架,这应该是一个稳固的结构。

技术博客和社区:这里是指订阅业界的博客,参与相关博客社区的技术交流。订阅业界、牛人的博客是获得最新、最前沿的知识和技术的方式,应该每隔一定时间段(如每天、每周2次等)研读这些文章、做好笔记。

QQ群(或其他即时通讯群组):即时通讯是最直接的技术交流工具。通过这种工具交流技术、扩大职业圈子是一个很好的选择。但是鉴于目前,很多技术群很少谈论技术、或技术含量较低等情况,建议加入后仔细甄别,不要因为大量垃圾信息浪费宝贵的时间。

原文链接:http://www.cnblogs.com/muguaworld/archive/2011/11/22/2259294.html

【编辑推荐】

  1. 编程能力的四种境界
  2. 2012年8月“我最喜爱的编程语言”排行榜
  3. 编程赋予了我们什么样的改变
  4. 如何编写高质量的Python程序
  5. 如何掌握程序语言
责任编辑:张伟 来源: 慢热君Kevin的博客
相关推荐

2011-11-23 14:40:36

程序员

2017-11-14 21:30:15

2012-11-08 09:49:30

C++Java程序员

2016-07-27 13:16:16

程序员编程英语

2013-08-20 09:33:59

程序员

2019-01-07 09:31:37

程序员测试人员代码

2017-03-27 10:17:54

程序员工作学习

2015-04-08 15:38:17

程序员程序员差距

2012-05-10 13:31:48

程序员开发者

2011-05-13 14:34:02

程序员

2019-11-07 09:30:35

框架JavaWeb

2012-04-27 09:24:44

程序员编码员

2011-12-26 17:18:25

程序员

2009-03-20 10:06:21

程序员PHP职场

2018-08-02 17:00:15

Vue.js学习iOS开发

2012-11-22 14:00:26

程序员

2014-12-11 17:55:05

程序员

2018-09-05 20:00:23

编程语言Java程序员

2015-07-09 10:30:35

程序员必备经验

2010-08-10 09:34:14

FlexBlazeDS
点赞
收藏

51CTO技术栈公众号