如何成为一名专家级的程序员

如何成为专家

对于你所需要学习的大部分技能,下面四个步骤(重复向上或向下),将有助于你成为一个专家:

  1. Learn it
  2. Do it
  3. Discuss it
  4. Teach it

Learn it

在你掌握某一门技术之前你必须先了解它的理论知识。可以通过书籍和教程,也可以课堂教育等方式学习。

Do it

一旦你学会了理论技能之后,那就可以将这些技术应用到现实中。这样做可以让你知道你学的理论哪些是正确的,哪些是错误的。大学中学到的理论很多并不能应用到现实中,或者并不适合你现在的情况。

Discuss it

技术使用了一段时间以后,你会发现你已经能够灵活运用它解决问题了,那么这时你需要和其他经验丰富的人讨论该技术了。可以讨论应用这些技术的最佳途径,理论限制在哪里,以及还可以添加什么等等。总而言之,你需要讨论如何更进一步地开发该技术。

通过讨论,你还可以从其他人身上学到很多东西,即使你先前以为你早就了如指掌。

Teach it

将自己的技能教给别人,也是查漏补缺的一个好方法。也许有很多事情你只是知道要这么做,但从没考虑过你为什么要这么做。由于不得不解释这些行为方法,迫使你去思考这些原因。

此外,也有可能某些技术要点由于你并不需要所以并没有掌握的(例如,Web服务规范的某一点)。同样的,教学使得你不得不掌握这些边边角角的内容,越来越专业。

如何成为一个专家级别的程序员

上面讲的是如何成为一名专家的方法,下面我将讨论的是如何成为一个专家级别的开发人员。

作为一名开发人员,我们大多是就职于某一行业,使用的是特定的平台。如果你总是不断地切换工具和行业,那么你就永远成不了真正的专家。或许你会成为某种意义上的“万金油”,当然这在有些情况下确实非常有用。但是如果你一直都没有专业的平台和行业,那么要用点心了。

我的职业生涯始于1998年,那个时候做的是web应用,然后我发现我总是在不断地换工具,这意味着我并没有一个趁手的工具。我所有的时间都用在了学习新工具上,让我有一种疲于奔命的感觉。然后,我决定将重点放在一种面向对象的语言上——Java。那时候.NET技术还没有出来。自从1999年开始,我就只做Java。

在你走向专业化的道路上,你必须先选择一个平台,也有可能是一个行业。行业不大重要点,但是拥有业务领域方面的知识可以增强你简历的卖点。

在学习平台的时候,你需要先选择编程语言,例如,Java。在Java中其平台分为两个:标准版和企业版。

一旦你掌握平台之后,你就可以开始学习平台的独立技术,如设计模式、分布式系统设计、架构等等。你应该多花点时间去学习这些技能,因为它们更容易转移到其他新的技术平台上。

以后,你可能会离开软件开发,转而从事其他的业务领域,如项目管理或者架构师等。但是你得知道的是,一旦你不再使用这一项技能,那么慢慢的你就不能再被称为这方面的专家了。

下面是如何成为专家级开发人员的示意图。从底部开始一步一步往上走。蓝色层是平台独立层。其他颜色的是平台特殊层。如果你没有发现自己的平台,也可以自己添加。

how-to-become-an-expert-developer

具体到个人的信息,请恕我无法一一准确描述。

那要是我不知道应该学习什么技术,怎么办?也有办法,可以去看招聘广告。看看他们最常提到的工具和技术是什么?也可以阅读在线软件杂志。看看他们谈论最多的是什么技术?别忘了论坛。什么技术大家提的问题最多?以及,大家对什么技术津津乐道,一窝蜂地在学习?换句话说,这就是明天将炙手可热的技术!

 
 转自极客网

译文链接:http://www.geekwww.com/how-to-become-an-expert-developer.html

原文地址:https://www.cnblogs.com/xs-yqz/p/4433426.html