`

【转载】学习技术的三部曲:WHAT、HOW、WHY

阅读更多
转载地址:http://www.oschina.net/question/587361_87980
近几天有些网友在邮件里面问我关于学习的问题。有好几个人觉得工作了几年,也学会了不少的类库、框架、甚至语言,但是感觉自己的能力没有太大的提高。因此今天来说一下我个人对这方面的体会,希望对大伙儿(尤其是新手)有帮助。

先声明一下,本帖子讨论的三部曲是指你已经选定了某个技术方向之后,该如何学习;至于如何选定技术方向,则属于另一个话题,不在今天的讨论之列。

我把学习归类为三个步骤:What、How、Why。经过我对周围同事和朋友的观察,大部分感觉自己技术没有提高的人,都仅仅停留在What阶段。下面我把这三个步骤解释一下。

第一步:WHAT

所谓的“WHAT”,就是搞清楚某个东东是什么?有什么用?有什么语法?有什么功能特性?......
  
举例如下:对于学习语言(比如C++、Java、Python),大部分人都能够掌握基本的语法和标准库,然后用它写一些小程序(诸如二分查找、冒泡排序、简单文件操作等)。
  
对于学习类库(比如JDBC类库),大部分Java程序员都能明白JDBC主要包含哪些类,也能够用JDBC进行简单的数据库查询和增删改操作。由于这个步骤是最基本的,假如你连这都做不到(可能你的理解力不够好),也别在IT界混了。

但是光会What是不够的。仅仅停留在这个步骤,导致了很多程序员只知其然,不知其所以然。这就是目前大部分开发人员的现状。

第二步:HOW
  
所谓的“HOW”,就是搞清楚某个东西内部是如何运作的?实现机制如何?等一系列相关问题。
  
举例如下:假如你在学习C++语言,你是否搞明白函数传参数的实现机制?虚函数是如何实现?抛出异常时的栈回退是怎么回事?......
  
假如你在学习Java语言,你是否搞清楚GC如何实现?反射是如何实现?
假如你在学习JDBC库,你是否清楚JDBC Driver的4种类型?不同游标类型的实现机制?事务的机制?
  
在这个阶段,你必须多想想类似这些问题。然后通过各种途径(参见“关于自学能力”的几个方法),把问题彻底搞清楚。自然而然,你的提高就会比较明显。而且如果碰到一些深层次的问题(比如性能优化),也就知道该如何去解决。
  
完成这个阶段之后,你基本上就属于该技术领域最优秀的20%的人(根据二八原理,80%的人不会去思考HOW的问题)。

第三步:WHY
  
一般来说,只有你把HOW的问题想清楚,才开始考虑步骤WHY。所谓的“WHY”,就是搞清楚某个东西为什么设计成这样?为什么不是另外的样子?这样的设计有什么讲究?
  
说实在的,善于问“为什么”有一定的天赋成分?好像某个科学大牛曾经说过“提出问题有时候比解决问题更难”。一般来说,只有当你深刻理解了某个东西,才能够针对这个东东的设计问出一些问题。所以,我前面强调过,要先把HOW的问题搞清楚,再来考虑WHY的问题。
  
举例如下:对于C++语言:为什么C++没有类似Java的finally关键字?为什么C++当初没有考虑GC?......
  
对于Java语言:为什么Java没有类似C++的类析构函数?为什么Java要同时提供String和StringBuffer两个似乎冗余的类?......
  
对于Python语言:为什么Python不提供类似C++/Java的访问控制机制?......
  
如果你能够自己问出诸如上述的“为什么”问题,并且能够通过各种途径找到解答,那你基本上已经吃透这个技术了,并且你已经有可能自己去设计一个类似的玩意儿了。到这时,你已经踏上了通向技术高手的康庄大道。

由于本博客偏重IT方面,所以今天举的这些例子多半都是IT相关的,但是这个三部曲在IT以外的行业/领域其实也能适用,就看读者自己的领悟了。
分享到:
评论

相关推荐

    j2ee why what how

    j2ee why what how 可以看看

    Java通过What、Why、How了解弱引用

    本文将从What、Why、How三个方面详细解释弱引用的概念、使用原因及其实现方式。 What——什么是弱引用? 弱引用是Java中的一种引用类型,位于Java的java.lang.ref包下,主要由WeakReference类表示。与强引用...

    WHY-HOW-WHAT

    需求工程师、产品经理必看的一本书,很好很赞,从为什么开始

    Why, What, and How of Continuous Delivery.pdf

    4. **持续学习与改进**:定期回顾并评估连续交付流程的有效性,根据实际情况进行调整优化。 #### 五、案例研究 文档中提到了福特公司的案例,这是一个很好的实践例子。通过引入装配线技术,福特公司不仅大幅提高了...

    How Linux Works: What Every Superuser Should Know, 2nd Edition

    With its combination of background, theory, real-world examples, and patient explanations, How Linux Works will teach you what you need to know to solve pesky problems and take control of your ...

    北师大版完整版英语what和how引起的感叹句句型用法总结(完整).docx

    在中学英语学习中,感叹句是表达强烈情感或惊讶的重要表达方式。此文档"北师大版完整版英语what和how引起的感叹句句型用法总结(完整)"着重讲解了由"what"和"how"引导的两种主要感叹句结构。下面我们将详细探讨这些...

    外研版八年级英语what和how引起的感叹句句型用法.docx

    在中学英语学习中,感叹句是表达强烈情感或惊讶的重要句型。...以上就是关于"What"和"How"引导的感叹句的详细解析,这些知识点对于中学英语学习者来说至关重要,掌握好这些句型有助于更准确地表达情感和观点。

    译林版精品英语what和how引起的感叹句句型的分类及用法.docx

    在中学英语学习中,感叹句是表达强烈情感或惊讶的重要句型。"What"和"How"是用来引导感叹句的两个关键词,它们各自有着特定的句型结构和使用规则。以下是对这些知识点的详细阐述: 1. **What引导的感叹句**: - 当...

    C# Deconstructed: Discover how C# works on the .NET Framework

    C# Deconstructed answers a seemingly simply question: Just what is going on, exactly, when you run C# code on the .NET Framework? To answer this question we will dig ever deeper into the structure of...

    Banking Regulation in China(What,Why,and How).pdf

    The paper addresses three aspects of Chinese banking regulation: what does China regulate; why does China regulate; and how does China regulate. Much of the discussion is concerned with China’s ...

    Artificial Unintelligence: How Computers Misunderstand the World

    Artificial Unintelligence: How Computers Misunderstand the World (Meredith Broussard, MIT Press) 人工非智能-计算机是如何误导世界的? A guide to understanding the inner workings and outer limits of ...

    中考英语中what和how引起的感叹句句型的用法归纳总结.docx

    中考英语中what和how引起的感叹句句型的用法归纳总结 中考英语中what和how引起的感叹句句型的用法归纳总结是英语...what和how引起的感叹句句型是英语教学中的一大亮点,对学生的英语学习和实践具有重要的指导意义。

    3. 内部开源的 WHAT _ WHY _ HOW——谭中意.pdf

    "内部开源的 WHAT _ WHY _ HOW" 本文档主要介绍内部开源(InnerSource)的概念、历史、现状、why inner source、Baidu的实践经验,以及 InnerSource 的优势和挑战。 InnerSource 的定义是指在组织内部采用开源...

    白板编程浅谈——Why, What, How1

    【白板编程浅谈——Why, What, How】 在IT行业的面试中,白板编程已经成为了一种常见的评估技术人才的方法。这种做法源自于面试官希望在有限的时间内,尽可能全面地了解候选人的编程思维、逻辑能力和解决问题的能力...

    藏经阁-Why、What and How of Continuous Delivery.pdf

    下面是Continuous Delivery的Why、What和How: Why Continuous Delivery? 在软件开发领域,效率和速度对业务成功至关重要。Ford汽车公司的生产线效率是其竞争对手的6倍,这体现了自动化和流程改进对生产效率的...

    小学英语口语测试常用题目.doc

    * 询问家庭成员:How many people are there in your family? * 询问学校信息:What Grade/Class are you in? / What school are you from? 二、询问天气、时间等 * 询问日期:What day is it today? * 询问天气:...

    Nicholas:HDFS:What is New in Hadoop 2

    该文档来自2013中国大数据技术大会上,Member of the Project Management Committee at Apache Hadoop,Nicholas关于《HDFS: What is New in Hadoop 2》主题的演讲。

    译林版完整版英语中what和how引起的感叹句句型的用法归纳总结.docx

    在英语中,感叹句是用来表达强烈感情或情绪的句子,通常由what或how引导。这里我们根据提供的内容,对what和how引导的感叹句句型进行详细的归纳和讲解。 1. **What引导的感叹句**:当感叹的是名词或名词短语时,...

Global site tag (gtag.js) - Google Analytics