You are here

如何阅读一本技术书籍

g089h515r806 的头像
Submitted by g089h515r806 on 星期一, 2009-10-12 15:27

学员里面的人经常问,如何才能学好Drupal,这个很难回答,就像如何学好英语一样,只要你花足够的时间了,你就能够学会,当然,如果有人加以指导,确实能帮助你节省一点时间.

学习技术,我的建议是囫囵吞枣,尤其是阅读技术数据,自从从事软件开发和技术工作以来,其实是读过很多书的.特别是技术书籍,读书是掌握一门技术的最佳途径.

一定要读一些好书.我以前学习JAVA的时候,就读了很多书,hibernate,spring的,ant,struts的,当然还有很多其它,那个时候,以为一辈子都要做JAVA的,

世面上的书籍很多,买一本比较好的,或者说是相对比较经典的。很多技术人员不愿意读中文的技术书籍,或许他们有他们的道理,我是读中文书籍的,大多数的技术书籍,我读的都是中文的,说真的,读中文的技术书籍,速度至少是英文的5倍,至少不需要语言关。即便是我认为英文,技术都比较厉害的人,他们也认为阅读英文的技术书籍,比中文的,需要花费多出2,3倍的时间。

 

英文的技术文章,当然是需要读的,包括技术书籍,也是认真的读过很多的,印象最深的是JAVA编程思想的英文版,我看了很多遍,感觉进步很慢,但是能够帮助学习英文的技术术语。

一个比较关键的就是读书的速度,一本600页的中文技术书籍,对于一个技术人员,没有接触过的技术人员,应该能够在2天内读完的。这是我一再鼓吹的一个观点了,我也见过很多技术方面的高手,真的,对于技术文档的阅读速度,真的是衡量一个程序员是否优秀的一个方面。

当然不能用这样的标准去要求所有的人。

Drupal版本:

评论

g089h515r806 的头像

    其实在学习Drupal以前,我学习过很多的开源的软件,当然都是JAVA方面的,比较用心的是JBPM,JAVA方面的工作流,我很认真地阅读了这个软件的源代码。JBPM的源代码我读过3遍,从里面受益良多。

   Drupal源代码,我只读过一遍,而且是Drupal5 的。像这样的一个软件系统,阅读全部的代码也是花费时间的,当时就把Drupal所有的目录,分开,所有的模块都分开。先阅读那些文件比较小的,辅助性的,比如说themes下面的,profile下面的,这些里面的代码量比较小,所以很好的搞定,还有就是misc,那个时候里面的东西不是很多,我专门下载了Jquery的适合阅读的代码,接着是includes下面,最后是modules下面的,大致的顺序就是这样。

   阅读的时候,把要阅读的写在本子上,读过的,就勾上,打个记号。这样就很容易的知道,哪些文件还没有读过。阅读代码的时候,最好能够将一个模块的方法名都抄写一遍,对于里面自己认为比较优秀的代码,也能够抄写一遍。对于大多数程序员,至少是像我这样的水平的程序员,或者尚不如我的程序员,我觉得没有必要去思考问题,我们需要的是查找已有的答案。能够快速的抄袭他人的代码,搬过来,改吧改吧,用到项目上,解决问题就可以了。我从来不去想,自己创造性的解决问题,从来不去考虑代码写的有多么优雅,代码如何符合规范。这些对我来说,都不适用。我想的,就是这个问题一定有人解决过,那就去抄袭他人的解决办法。

而对于开源软件,最容易抄袭的,就是软件本身的代码,其实我们想要的很多答案,在Drupal核心本身都有了答案,尤其是二次开发的时候。通过阅读软件的源代码,能够增长解决问题的见识。

 

g089h515r806 的头像

我想,学习Drupal的人的目的是不同的。但是大致的可以分为两种,一种是站点管理员型的。一种是开发者。

如果自己不打算做Drupal开发,那么阅读Drupal开发指南这样的书籍是没有用的,除非自己是开源软件的爱好者。我想,学习一些基本的Drupal配置方面的知识,能够熟悉Drupal后台的操作,能够简单的修改Drupal的主题,了解一些Drupal方面的原理就可以,比如说,Drupal是通过模块添加功能的,这个功能核心没有,到官方去找,知道寻找一个合适的模块的大致的方法,这就够了,找到一个比较符合自己需求的模块,先用着。这就使第一种人。

如果哪一天,发现现有的模块,需要修改,那么可以找第专职的Drupal开发人员帮忙,这个时候需要的是向老板申请预算,同时和Drupal开发者协调,通常你已经找到了要用的模块,那些搞Drupal定制开发的人,就不会从你身上赚取暴利了。你的老板会很满意你的工作。

 

我想这种人还是非常多的。当然对于那些从事Drupal网站建设的专职人员来说,那就真的需要好好的读上一本比较专业的书,Drupal开发指南,好好的阅读源代码。这是必须的。记住,你们是专业人士,一定要懂得比第一种人多很多。

 

当然,我也认识一些人,他们是搞科研的,如果你是搞科研的老师,要在项目中基于Drupal实现,其实也很简单,抓个学生当壮丁就可以了,你手下的学生,学东西永远都比你快,

 

bluewell 的头像

   看来老葛真的是很有心得,技术这东西需要领悟,读书时,书本告诉你一些东西,然后你去用,才能真正掌握。更多的时候,学习是螺旋上升的过程,开始OVERVIEW 下,有个大概了解,然后动手去搞。有了问题,可以再仔细阅读相关的东东,正所谓是“从问题到理论”。当然有的人喜欢按照书上讲的操作一遍,用这种方式学不是不可以,但是读一本技术书,这样的方式可能会让你钻牛角尖。

      我是老葛说的WEBMASTER,不是专业人士,但我喜欢技术。技术有时候真的很迷人

dghabc 的头像

我不知道实际情况是不是这样,但我真的很少看到专职的drupal开发人员,可能人在小地方也有关吧,这可能也是老葛的东东很难卖出去的原因之一吧.
很多人用drupal因为是有建站的需求,而在CMS选择之后,可能比较多的是joomla与drupal吧.
在目前的建站需求中,如果不是很专业的站点,应该不会用到自定义模块,或者,想不到用自定义模块去定制drupal的功能.