转自:
http://blog.csdn.net/oatnem/article/details/4519365
技术发展日新月异,工程实践中,免不了要时常学习新的技术。对于搞电子和IT这行的同学们来说,要学的新技术通常包括编程语言,开发环境/框架,处理器,新的辅助工具等等。这里我指的技术,限定在工具层面,不包括业务层面。业务层面的我更愿意称之为理论,比如搞电信的需要学习通信理论,搞信号处理的需要学习信号处理理论。理论学习的方法和技术学习的方法有所不同,这篇文章不提。
学习新技术,我觉得容易走进两个误区。一是只求速成,流于肤浅 。这样可能会很快上手,但是作品往往质量较差,漏洞百出,返工频繁,不易维护。总的来看效率不高。二是前期准备过度,疏于实战 。这是上一个误区的反面极端,就是总害怕学的还不到位,总想准备异常充分了之后再开干。这样脱离实战,其实前期的学习效率低,而且学的也不扎实。
读书和工作的这几年,我也学习了一些新技术,有了一些自己的体会。这里想写一写我系统地学习一门新技术的方法。所谓系统地学习,就是指有一定的时间和条件的前提下,对一门技术进行的由浅入深,比较全面的学习,最终达到基本掌握,灵活运用的水平。而不是临时救火,网上找些速成材料ctrl c v的那种学习。其实后面那种速成学习方法有时也会用到,也是有用的。我写的都是大白话,因为都是我的实际经验总结,所以是大白话。
一,找一些概述、综述性质的资料,对新技术有个感性的认识
先知道自己要学的究竟是个什么东西。这一步看似无关紧要,其实对提高后面的学习效率非常重要,做得好往往能使后面的学习事半功倍。因为在最初,我们对于要学的东西处于一个“非知” 的状态。人的认识有三个阶段:非知-未知-已知 ,简单地说,“非知”就是不知道自己不知道什么,“未知”就是知道自己不知道什么。看概述资料,就是要快速地突破“非知”这个阶段,尽快来到“未知”的阶段,为下面从“未知”到“已知 ”的道路打好基础。
这一步花的时间不多,少则一小时,多则一两天即可。得到的收获却很大,你会知道这门技术的历史渊源,核心要点,优劣之处,相似技术,未来发展。更重要的是,你还能知道很多关于这门技术的资料来源,比如wikipedia 或answers 上,它的技术词条就会给出很多相关的链接,推荐一些优秀的著作,这些资料往往是以后学习的重要参考。
二,搭建开发环境
工欲善其事,必先利其器。做电子和IT的少不了开发环境,无论是开发软件,FPGA,matlab,PCB,嵌入式CPU,都需要有一套工具链或者说开发环境。我们应该尽快把它搭建起来,跑一个HelloWorld,这样才能放心进行下面的学习。
有时候开发环境的搭建很容易,双击setup,然后等待就好了。有时候很痛苦,比如用一些开源工具链的时候,因为往往各个工具包是独立安装的,相互之间又有依赖性,各种设置又比较灵活复杂。和硬件相关的开发环境,往往还需要解决硬件上的bug或不恰当的配置。总之,开发环境不搭建好,是不能安心地进行下一步的学习的。HelloWorld跑通,方解后顾之忧。
三,学习两类参考资料,边学边练
这时可以开始一个按部就班的学习过程。有两类参考资料是需要的,一类当然是随开发环境自带的文档,对于软件框架如 MFC、.NET、Qt、JAVA之类的来说,就是函数/库的文档了,比如msdn;对于CPU、各种芯片来说,就是datasheet或user manual、 app manual之类的文档了。这类资料,主要用做参考求证找例子。
另一类是教材。有的同学可能觉得不需要教材,看文档就够了,我觉得教材还是有用的。因为教材和文档的编排是不一样的,导致他们的用途不同----教材是用来深入浅出地学习的,文档是用来随时查阅的。老老实实学习一本好的教材,会比自己摸索省力的多,会少走很多弯路。请相信,一本好教材 的作者对这门技术的理解,是远远在一个初学者之上的,即便这个初学者很强。
在教材的选择方面,我比较倾向于国外的教材,因为质量有保证。对于一些很老的技术,国内也是有不错的教材的,新技术就难说了。
在教材语言的选择方面,我倾向于最好有一本中文的。英文好的同学可能要bs我了,确实我英文一般,欢迎bs。我的观点是:你英文再好也没你中文好吧?对我们来说,中英文阅读的差距主要体现在速读上,就是快速把握一大段文字的意思,快速浏览,快速吸收。坦诚地说,我英文速读的能力比中文差的不是一星半点。中文书一眼扫过去,几秒钟就知道这一页讲的要点是什么,如果是英文,我做不到,只能一句一句看。当然,对于精读而言,两者的差距不大,而且理解技术花的时间往往比理解语言本身花的时间长。所以,我觉得要有一本中文的用于启蒙,浏览。如果觉得不过瘾,再来英文原著细读,慢慢体会。(我承认书架上全是英文原版比较能蒙人)。如果要学的技术实在找不到什么像样的中文教材,只看英文当然也是没问题的,我有时候也就是硬着头皮看英文的,虽然慢点,也能学会。
学习教材的过程中,细节问题可以参考开发文档。有了开发环境,我们能够随时做实验,边学边练,这样才能学的牢。
这一步需要注意的是,不要等把教材都学完了才去进行下一步!!! 一般教材都会由浅入深地展开,我们只需要把前几章的概述和基本技术看完,最多再翻一翻后几章讲的我们马上可能会用到的高级技术,就完全可以、也完全应该进行实战了。没学的不要紧,以后再进行螺旋式学习。这就好比汽车换档,换的太晚就要拖档了。
四,开始干活
准备的差不多了,该上路了。不要怕还没完全掌握,不会的还可以随时学嘛,又不是学校里闭卷考试。赶紧用前几步学到的东西,来解决实际问题,这样学的更牢,更实用,而且还不会因为过长时间的前期准备耽误太多项目进度。有需求牵引 的学习,才是高效率的学习。眼前的项目往往就是最好的需求牵引。
五,螺旋式学习
干活的时候遇到不知道的东西,再回头去翻教材,查资料,网上找别人的解决方案(通常我们遇到的技术问题,都会有人遇到过),安装新的工具等等。所谓螺旋式学习,就是说干活过程中,往往需要把前面几个步骤再小规模地重复一遍。这是一个很灵活的过程,不定时不定量,完全根据实际情况决定。
六,温故知新
眼前的项目干完了,不代表这个技术就掌握得很好了。时不时地温故知新,加深理解,重复地在项目实践中磨练,技术才能日臻熟练。
分享到:
相关推荐
本文深入探讨了源码学习的重要性和方法,以及如何通过源码学习提升技术功底,快速掌握新技术框架,定位线上问题,以及面试一线互联网公司时对框架技术的源码级别的理解。同时,文章也介绍了Netty的高并发高性能架构...
采用新ۥ技术新工艺新设备新材料时作业人员安全教育培训制度精选.doc
最新技术深度剖析: 我们会深入研究JAVA Web开发的最新技术,包括框架、工具和实践方法,确保您跟上行业潮流。 综合实战项目: 通过实际项目和综合实战案例,您将学会如何应用所学知识,从而更好地准备面对职业挑战...
(1)所用设备:路由器、PC机、网线 (2)消耗性器材:无 实 训 数 据 记 录 一、实验场景描述(也可自行设计) 假设你是某公司新来的网络管理员,公司要求熟悉网络产品,首先要求你登录路由器,了解、掌握路由器的...
每个AJAX工程师都应该去掌握《AJAX安全技术》中的知识——至少应该明白其中的原理。, 《AJAX安全技术》适合广大基于AJAX开发Web程序的开发人员参考学习,同时也可作为高等院校相关专业师生的参考用书。
《计算机网络系统方法(原书第4版)》采用“系统方法”来分析计算机网络,把网络看作一个由相互关联的构造模块组成的系统,而不是严格地进行分层,介绍了很多网络中的新技术,包括对等网、IPv6、覆盖网络、内容分发...
Floyd的新力作,从系统的独特视角引导读者进行模拟电子技术的学习,不仅涵盖模拟电子技术的基本原理和基础知识,还重点讲解如何将基本概念和元器件应用于模拟系统,并通过系统例子和系统说明来阐明模拟系统的工作...
3. 网络新技术。 九、 上机操作 1. 掌握计算机基本操作。 2. 熟练掌握C语言程序设计基本技术、编程和调试。 3. 掌握与考试内容相关的上机应用 09三级网络技术考试大纲无变化,但教材作了大幅修订。...
然而,掌握这些技术的企业却发现他们难以用旧钥匙打开新数字时代的大门。 数字化已无处不及无时不在,人们的工作方式、社会交往以及思想行为都呈现出新数字时代的新面貌。生产关系的数字化重构、消费模式的数字化...
◆ 基本要求 1. 掌握计算机系统和计算机软件的基本概念、计算机... 掌握数据库设计方法,具有数据库设计能力。了解数据库技术发展。 6. 掌握计算机操作,并具有用C语言编程,开发数据库应用(含上机调试)的能力
它要求三级网络技术合格考生应具备计算机网络通信的基础知识,熟悉局域网、广域网的原理以及安全维护方法,掌握因特网(INTERNET)应用的基本技能,具备从事机关、企事业单位组网、管理以及开展信息网络化的能力。...
下面介绍一些方法 一、培养学生正确的兴趣学习方式 兴趣是最好的老师,对于学习,如果一个学生能够产生极大的兴趣,那么学生对该门 课程就会很用心地掌握。信息技术教育课程对于中学生而言是一个新鲜的事物,很多学 ...
本课程的目的和教学任务是:通过对本课程教学...不仅使学生能够在网络分层概念的基础上学习到各类先进的通信技术知识,更重要的是培养学生掌握科学的研究方法和迅速学习新技术的能力,为成为高素质的创新人才奠定基础。
为了使该课程走在学科发展的前沿,不仅要掌握光纤通信的基本概念和原理,还要及时了解光纤通信的新技术和未来的发展,我们在传承光纤通信经典内容基础上,力求充分反映国内外光纤通信技术的最新发展,如光纤放大器、...
近年来,异构计算得到了业界的普遍关注。作为高性能计算的一种主流解决方案,...本书既可以作为高性能异构计算领域研发者的参考书籍,也可以作为有兴趣掌握这一新技术的电子工程师、软件工程师或在校学生的入门教程。
这些特色赋予了泛函分析这一现代数学方法在应用中的新的活力,其理论上的精炼性及应用上的有效性是国内外同类教材中不多见的。现代应用数学方法序言本教材在各章后都配有一定数量的习题,它们一方面是主讲内容的完善,...
《java Web编程》是一门理论性、实践均较强的课程,不只从理论上培养学生,使学生了解和掌握Web开发的新技术、热技术和开发流程,而且从实践上锻炼学生,在教学程中要突出理论联系实际的基本原则,注重上机实验,使...
能力 CAPACITY 要求 掌握大数据技术的基本情况,了解大数据和云计算行业的新技术。 具有良好的自学能力,对新技术有学习、研究精神,具有较强的动手操作能力。 培养良好的职业道德。 大数据技术与应用基础-第1章...
《信息新技术——计算机的硬件与软件》教学设计 一、教学内容分析 《信息新技术——计算机的硬件与软件》是清华大学"大、中、小学一条龙教学研究"实 验教材七年级下册第一单元信息大世界中第2课的教学内容,本课主要...