现在很多同学都是刚刚开始接编程,大多的同学都是在纠结要不要做笔记,怎么做笔记。答案是十分肯定的,一定要做!
作为一名软件开发人员,你的职业生涯中不可能只掌握一门编程语言或者技能,技能单一迟早会被淘汰。当你只学一门编程语言的时候,做不做笔记其实问题不大,就比如你现在学习C,你发现你能记得每一个知识点,都能运用,这个时候做笔记反而得不偿失。但是当你更进一步学习C++、Java、JavaWeb、Oracle、MySQL、Python、Linux等等的时候,你会发现当你知识积累越多,复杂度就会更高,这个时候如果不去做笔记,你所学的知识点将会很快被遗忘以及搞得混杂,这样一来你接下来的学习将变得不容易。
所以一定要去做笔记,这样很多人又会说,记笔记?记了也不一定看!那为什么还要去做?其实没有正确与错误之说,如果没有记笔记和看笔记,大部分情况下只能说你学得不够深或者你每天都在重复做某一部分技能,可锻炼性不高,所以笔记意义不大。做笔记不是让你像高中那样每个知识点都去记一遍,而是有针对性去做,这样才能将学习效率最大化。
这个时候又会有同学问:我该记哪些内容呢?
我给大家的建议是:记笔记有“三记”“三不记”
三记:
涉及到软件安装和配置记:这里说的软件安装和配置记,并不是傻瓜式安装的软件,下一步就OK的软件,而是需要涉及到配置环境等软件,比如Eclipse、MyEclipse、Tomcat等,这些软件的配置需要配置环境变量,还有许多配置如Tomcat配置虚拟路径、修改端口号等,把配置过程写下来,闲着没事干忘了的时候就复习一下,有巩固才能提高。再比如学习了Linux搭建服务器、搭建大数据开发环境如Hadoop的时候,如果你不做配置笔记,相信我,你会疯的!!
涉及到项目实战技能记:当你做项目的时候会涉及到很多问题,比如用Java Web开发网页,你会涉及到如何产生验证码、何防止SQL注入、如何避免404,如何控制Servlet跳转、如何通过JS控制隐藏域提交额外信息。这些技能记下来,给自己一个温习的环境,你的牛13程度取决于你的技能有多牛13,所有的技能不可能全部记住,好记性不如烂笔头,这就是为什么要有开发文档的存在。好比现在现在如果不去看笔记和文档,多少人能纯手工不借助文档和IDE搭建SSH或SSM环境?
涉及到出错问题必须记!这点是最重要的一点,就算上面两个你不愿意记,但是出错问题一定要记!为什么?编程中如果出现错误你不记下来,你很可能会被同一个错误折磨千百次,是不是很开心?简单举个例子,今天你用Java中的BigDecimal写了一个除法,但是发现提示你出现了一个异常,你百思不得其解,为什么偶数除法没问题啊但是奇数除法怎么就是有错误,这是因为大数奇数除法会出现一个循环小数的问题,你需要指定小数位数才能解决;再比如你个人电脑上搭建Hadoop环境提示你namenode进入安全模式就是启动不起来,网上说了很多办法说关闭安全模式就可以了,最后你发现是因为你的空间不够了;写web配置struts的时候提示你说没有log4j等等,诸如此类,当你记一个问题还可以,记10个还行,但是当你有成百上千我不觉得每一个的解决办法你都能记得!
三不记:
书上有的知识点不记(配置、实战技能、易错点除外):这里说的书上是指你买了一本实体书比如叫Pythonxxxxx,你说我哪里记得书上那么多东西,我要把所有知识点都记下来!想法很好,但是灭有必要,这么说,常见的编程书籍99%都有电子版,我相信书上写你要比你记得要好得多,所以个人喜欢把自己买的书的电子书放到手机里面,坐公交闲着的时候就拿出来复习一下,书上已经写得很详细了,而且有电子版给你,何必要去把书上所有有的东西再记一遍?翻开电子书你能很快找到自己需要的知识。
很喜欢一句话:“如果你喜欢一本书,第二遍才能真正的阅读”,编程书籍,除非你是过目不忘,否则一遍你一定记不住!所以你会倒回去看第二遍甚至多遍,这个时候书上的结构和知识分布点你已经很清楚了,这个时候你去看电子书,你能很轻松定位到需要巩固的地方,我相信效果会很好!但是并不是说什么都不记,如果你看第二遍和第三遍还是不懂的地方这就是需要记的知识点了
网上已经有完善的参考手册不记:还有一些书上没有的知识,比如HTML元素,书上没有给你全部列出来,但是网上W3cschool等网站已经给你总结的很好了,查找起来特别方便,还有离线手册,这个时候再去记这些东西有什么必要?花时间还没有别人做的好,何必呢?对吧?而且与其花时间去记这些没有多大意义的东西,还不如花点时间将这些离线手册保存下来,放到自己的网盘等都是很不错的选择,查找起来很方便,不要多做无用功!
看书的时候一定不记:很多人学习效率很高,很多人效率很低,为什么?大部分是因为你的投入程度!就比如别人一分钟就能理解这个知识点,而你需要三分钟,为什么?因为别人这一分钟投入是100%,而你三分钟每一分钟只投入30%,加起来才90%!所以看书的时候不要去做笔记,专心投入到理解知识点和代码中去,将专注投入效率最大化。如果你边看书边记笔记,当你的思维从学习跳转到记笔记这个过程,就会严重打乱你的学习效率!不建议边看书边记!如果你对某一个知识点觉得需要记,你就先做一个标记,完了再回来记。希望一次只做一件事!
问:如何做笔记才高效?
答:作为一名学计算机的人,如果你说你用一个笔记本(纸质)去记,我觉得还是别说你是学计算机的,有点丢不起人(个人看法,不喜可以忽略),假如你现在笔记本记了一半本,我想让你查一下其中XXX知识点你要查多久?还是电脑上ctrl+F几秒钟就搞定?做笔记一定要专业的去做,比如利用有道云笔记、印象笔记甚至是自己搭建环境和用word打好目录来记,要比你用笔记本去记效率好几十倍!所以一定要使用软件去记,可以多端同步,电脑上记好手机就会同步完成,要看就打开就可以。而且项目和工作中遇到问题打开笔记ctrl+F马上就能找到自己需要的内容!
其次就是一定要总结,特别重要,不会总结就只是瞎学,为什么别人就可以举一反三?因为别人善于总结。总结不是把每个知识点都记一遍,而是把一节或者一章的知识点柔和成一份精炼笔记,将自己学的知识梳理,提取精华
最重要一点,就是一定要学会独立解决问题!意思就是说遇到问题,先看错误信息,看看能不能解决,不能就把错误信息粘贴到百度,看一下别人是怎么解决的,这些错误解决了就把问题记下来,这些错误就是你踩的坑,你的财富,你成为大神的基石!不要一有错误就问别人,这样你永远学不会独立解决问题,只有百度找不到解决办法了再向前辈请教,这样才能成长和提高.
最近蛮多同学刚刚结束学校的课程,都有在找一些资料去加强课后的学习,这里也是帮大家整理了一些c/c++相关的基础的资料和项目的实践资料,有需要的同学可以关注我的专栏或者私聊分享。寒假的时间也是大家提升的时间,要坚持学习,才能比其他人掌握更多。