技术学习方法和博客宗旨

 

过去写博客,一个目的是整理知识的过程中内化成为自己的知识体系中,另一个目的是“去芜存菁”,力图梳理出主干脉络,无论对于新手还是自己回顾都非常有意义。我想这也是学习技术的根本方法,新技术千千万万,首先建立起一套自己的知识结构,再面对新技术就能很快定位和理解。

 

关于这一点,最近在看陈硕的博文“谈一谈网络编程学习经验”,讲的非常到位。我也以此作为我写博客的宗旨。

陈硕博文链接http://blog.csdn.net/solstice/article/details/6527585

 

其中对于市面上的技术书籍的论述也深得我心,很多书总是把自己当成工具书,广度或深度是够了,对初学者一点都不友好。

现摘录如下:

 

(孟岩)我主张,在具备基础之后,学习任何新东西,都要抓住主线,突出重点。对于关键理论的学习,要集中精力,速战速决。而旁枝末节和非本质性的知识内容,完全可以留给实践去零敲碎打。

原因是这样的,任何一个高级的知识内容,其中都只有一小部分是有思想创新、有重大影响的,而其它很多东西都是琐碎的、非本质的。因此,集中学习时必须把握住真正重要那部分,把其它东西留给实践。对于重点知识,只有集中学习其理论,才能确保体系性、连贯性、正确性,而对于那些旁枝末节,只有边干边学能够让你了解它们的真实价值是大是小,才能让你留下更生动的印象。如果你把精力用错了地方,比如用集中大块的时间来学习那些本来只需要查查手册就可以明白的小技巧,而对于真正重要的、思想性东西放在平时零敲碎打,那么肯定是事倍功半,甚至适得其反。

因此我对于市面上绝大部分开发类图书都不满——它们基本上都是面向知识体系本身的,而不是面向读者的。总是把相关的所有知识细节都放在一堆,然后一堆一堆攒起来变成一本书。反映在内容上,就是毫无重点地平铺直叙,不分轻重地陈述细节,往往在第三章以前就用无聊的细节谋杀了读者的热情。为什么当年侯捷先生的《深入浅出MFC》和Scott MeyersEffectiveC++能够成为经典?就在于这两本书抓住了各自领域中的主干,提纲挈领,纲举目张,一下子打通读者的任督二脉。可惜这样的书太少,就算是已故Richard Stevens和当今 Jeffrey Richter 的书,也只是在体系性和深入性上高人一头,并不是面向读者的书。

什么是旁枝末节呢?拿以太网来说,CRC32如何计算就是旁枝末节。网络程序员要明白check sum的作用,知道为什么需要check sum,至于具体怎么算CRC就不需要程序员操心。这部分通常是由网卡硬件完成的,在发包的时候由硬件填充CRC,在收包的时候网卡自动丢弃CRC不合格的包。如果代码里边确实要用到CRC计算,调用通用的zlib就行,也不用自己实现。


总结写博客的宗旨:

1、梳理主干,建立自己的知识框架

2、因为1,记录自己的理解,用自己的语言复述

3、因为1,转载讲述非常清晰的文章

4、记录技术相关的活动

你可能感兴趣的:(技术学习方法和博客宗旨)