曾经有朋友在我的一篇十年总结后跟帖问:
楼主是如何快速学习新知识的??????
我答应过要写一篇文章的,但酝酿了很久,感觉写起来非常吃力,
不过还是要兑现自己的承诺,有兴趣的朋友将就看看吧。
很多大学都有“计算机科学与技术”系,而计算机这门学科,技术性远高于科学性,
有人会问,这种区分会影响学习吗?
我的回答是:肯定会,影响思考问题的方式。
在科学领域,比如化学,如果你问:为什么“苯”的分子结构是这样的?
这个问题实际上是没有答案的,因为大自然造物就是这么设计的,
所以,要掌握这个知识点,没有别的办法,你需要背下来。
在技术领域,尤其是计算机下的软件开发这个分支,人就是至高无上的造物主,
所以软件世界里的任何一个存在,都有其特定的“原因”而不是必须如此。
比如,为什么计算机选择二进制数而不用更加直观的十进制?
那是因为硬件最擅长的是表示0和1.
任何技术的出现,都是为了解决特定问题的,一定有它所擅长的领域,没有万能的技术。
学习一门技术,可以分成两个阶段:
第一个阶段是在问中学,第二个阶段是在用中学。
问中学,在对新技术一无所知的时候,先要解答一系列问题:
为什么会有这样的技术存在?
这项技术能够做到什么?
如何做到的?
有什么限制或者例外吗?
以 ajax 为例:
问:为什么会有这样的技术存在?
答:因为传统的HTTP 请求-应答 模型要刷新整个页面,给用户的体验很差,需要一种不刷新页面就可以从后台获取数据的方式。
问:这项技术能够做到什么?
答:通过这项技术,可以使用程序(javascript)发起和处理HTTP请求,然后根据收到的数据更新页面展示。
问:如何做到的?
答:在浏览器中,javascript可以创建一个XMLHttpRequest对象,使用此对象发出请求并侦听应答的数据。
问:有什么限制或者例外吗?
答:ajax是异步通信模式;ajax只是对现有技术的一种重用,依然是拉模式,而不是推模式。
以 CSS 为例:
问:为什么会有这样的技术存在?
答:HTML擅长定义页面的内容结构,不擅长定义展示效果,CSS是为了更加灵活的定义HTML页面上元素的外观和布局。
问:这项技术能够做到什么?
答:可以针对一类、一组或者一个对象定义其展示效果。
问:如何做到的?
答:定义抽象类,由标签有选择的使用;使用selecter锁定作用范围;直接在标签上写Style属性。
问:有什么限制或者例外吗?
答:CSS只是定义外观,不影响被展示对象的内容和行为。
用中学,是为了求证细节。
在第一阶段,你掌握的知识足以告诉你,什么样的问题应该用什么技术解决,
比如:
改变界面上所有 <DIV>的背景颜色用CSS而不是ajax,
具体怎么写、怎么配,语法格式,相关属性名是什么等等,这些都在用到的时候,现查手册并慢慢熟悉即可。
以 正则表达式 为例,
在第一阶段,应该了解正则表达式的能力:有通配符、有分组(group)、可以限制匹配长度、有lookahead/lookbehind等,
在第二阶段,有具体匹配需求了,再去查相关的记法即可。
在职业生涯中,多数人需要掌握大量的技术手段,然而我们的大脑是不适合精确记忆的,
对一门技术做到无所不知,无所不晓的精通是非常困难的,更别说样样精通了。
所以我并没有哪样技术,学到了可以称为精通的境界,
我一般认为,能够正确使用一项技术的时候,学习过程就告结束,
接下来所要做的,就是用和查。
最后,还是要强调,做技术工作,有没有兴趣,决定了工作是天堂还是地狱。
有兴趣的朋友,可以再看看姊妹篇: 改造我们的学习:有钱不会花,抱着金库抓瞎
转自:http://blog.csdn.net/jinxfei/archive/2009/08/28/4491731.aspx
有钱不会花,抱着金库抓瞎
啥意思?先做一个自测题:
1、你是否有一块移动硬盘/U盘,里面装满了从各种途径搜集的学习资料?
2、你是否有一张刻着学习资料的光盘?
3、你在网上看到一本电子书,就有下载的冲动?
4、你是不是经常疑惑,这个资料我是不是已经下过了?
5、你的收藏夹或者其它网页收藏机制是不是已经有超长的列表?
6、你准备学习一样东西,发现搜集资料的时间比读资料的时间还长,而且大部分收集的资料都没有读。
如果对以上问题的回答有三项以上为 是,或者深有感受,
那么,这句话说得可能就是你。
我今天想说的是学习过程中的一个误区,我也身在其中 ,到今天还没有完全走出来。
软件行业需要不停的学习,似乎没有人反对这个观点。
有些人是因危机感而不得不如此,也有些人因为热爱技术而喜欢学习新东西。
万能的互联网,给予我们快速获取资料的能力,
03年的时候,我一度大量的下载电子书,
java方面,XML方面,数据库管理,操作系统管理,WEB开发等等,
然后刻成光盘。
下载的时候,我自信满满,发誓每一本书我都会看,
但实际上,这些光盘很快被丢在角落,再也没有进过光驱,
然而,再碰到技术资料,我还是想下。
现在回头看看,我发现下载东西也会上瘾 ,分析下来有几个原因:
1、占有欲。
免费而有价值的资料,就像天上掉馅饼,谁不想收为己有?
2、寻求安全感。
没有足够的资料,总感觉心里空落落的,不放心。
有了大量的资料,似乎找到了一种依靠。
3、成就感。
我感觉有时候下载东西就跟玩游戏一个道理,玩游戏追求的是一个虚无缥缈的分数,
而下载就是追求越来越全的资料库,每下到一本新书,就像游戏中又捡到装备一样。
我的资料宝库越来越大,但我的知识却没有随之增多。
最近,我准备研究OSGi,然后习惯性的开始收集资料,昨天晚上,我突然发现,
我的硬盘上有07年就已经下载的OSGi的规范,至今未读过。
我突然有所触动,赶紧反思,就发现了前面所说的问题:
我经常为学习做大量的准备工作,耗费了很多精力,实际上是无用功,
还不如一开始就把时间花在一本书上,在学习的过程中碰到问题再去查找相关资料。
“书非借而不能读也”,这句话真是太经典了,
一旦资料在手,觉得它再也跑不出我的手掌心,总有一天我会抽出时间读,结果往往是永远没有读。
互联网带给我们便利的同时,也带给我们不少的负担,我要丢掉我的坏习惯,轻装上阵。
OSGi,我来了。