6分钟8法则塑造优秀程序员

企业动态
1. 使用更大的显示字体;2. 让代码中的硬编码字符串部分显示变得刺眼;3. 找出一个“模糊”的关键字,通过学习熟练掌握;4. 提高1%的测试代码覆盖率;5. 阅读一些开源项目的源代码;6. 使用静态代码分析工具来检查自己的代码;7. 找出有“坏味道”的代码进行重构……

还记得那个叫做 Justice Gray 的人么?他曾经试图在六个月的时间里面成为更好的程序员,这种做法似乎成为了一种众人追捧的时尚。

然而很长一段时间过去之后,其中的大部分人并没有如愿以偿的成为好的程序员。

这里提供给大家一个简单的解决方案,有一些方法可以让你在六分钟之内成为更优秀的程序员。

你有六分钟的闲暇时光,对么?

我们一起来吧!

1. 使用更大的显示字体

这个办法看上去非常简单,但是的确很有效果。

打开你最喜欢的那个编程工具,将代码编辑器中的字体调大。我把 10pt 的代码显示字体增大到 14pt,这样一来,你的屏幕上一次只能显示出少量的代码。

结果:你被迫去写一些更为短小精炼的函数,这无疑是一个好的趋势。

(Scott Hanselman 也推崇这样的做法)

2. 让代码中的硬编码字符串部分显示变得刺眼

我是从 Joe Cooney 那里学到这种办法。

在你最熟悉的那个编程工具中将代码编辑器中的字符串设置为更加显眼的格式——比如,红色字符黄色背景。让那些字符串显得非常丑陋、刺眼。这将使你在代码中下意识的少写一些硬编码字符串,并且时刻注意代码中嵌入的字符串。

 

 

3. 找出一个“模糊”的关键字,通过学习熟练掌握

你是否明白 "yield" 关键字的作用? 还有什么关键字是你从来没有使用过的么?

编程语言中每一个关键字都有其特殊的用途。学习并掌握这些“神秘”的陌生关键字可以使你的编程能力变得异常强大。

这里有一些 .NET 平台不同语言的关键字列表: C#, VB.net, F#.

4. 提高1%的测试代码覆盖率

不要为了追求 100% 的自动化单元测试代码覆盖率而焦头烂额,但是不妨花费一些时间将你的测试代码覆盖率提高一个百分点。

有可能对你来说,这就是从 0% 到 1% 的过程,然而这已经是一个巨大的进步。

代码中复杂的正则表达式或者重要的业务逻辑必需要有单元测试来确保正确无误。

5. 阅读一些开源项目的源代码

当我看到一段完全陌生的代码的时候,通常会有一种奇怪的感觉:似乎是溜进了邻居家的屋子,并且窥视他们家冰箱里面的物品。

我们需要慢慢适应这样的情绪,并且从他人的代码中学习。

也许你可以从这个 Hanselman's Weekly Source Code 系列开始。

6. 使用静态代码分析工具来检查自己的代码

你可以使用 fxcop, 或者 StyleCop、 clone detective、 ndepend、 Visual Studio 2008 附带的 code metrics feature, 或者其他自选的静态代码分析工具。

使用这些工具可以发现隐匿在你的代码深处的缺陷。哪怕仅仅是瞥一眼分析结果,也可以让你发现自己的代码还存在很多可以改进的地方。

7. 找出有“坏味道”的代码进行重构

其实你自己心理清楚那些“坏味道”在哪里——就是你羞于承认,看上去很可怕,又臭又长,同时对整个应用非常重要的代码。

你不必把那些朽木雕琢成钻石,但是可以把他们变得稍微干净一些——重新命名一些变量,或者将其中的一部分代码独立出来,从简单的操作开始,小心翼翼逐步推进。

8. 停止阅读,开始编码

不要仅仅是写那些简单重复的代码,写一个编译器吧!

这篇 ol 写的 MSDN上 的文章 是一个非常好的起点。Joel Pobar 将指导你在短时间内写出一个属于自己的语言的编译器。

以上这些就是成为优秀程序员的方法,你明白了么?

有什么方法可以在六分钟之内完成,并且帮助你成为更优秀的程序员么?

【编辑推荐】

  1. 程序员你真的只是程序员吗?
  2. 从糟糕到不朽 程序员的八个级别
  3. 哪种程序员最幸福?编程语言快乐指数榜
责任编辑:张攀 来源: 译言
相关推荐

2015-10-12 08:56:37

程序员成长法则

2016-01-29 10:03:43

优秀程序员黄金法则

2012-02-07 10:11:46

程序员

2013-09-17 09:49:29

程序集读懂程序编程

2017-11-14 21:30:15

2014-08-29 11:09:44

程序员

2012-11-01 13:46:54

程序员

2022-01-26 10:12:56

程序员工具技术

2020-03-09 11:14:25

程序员技术设计

2016-03-04 11:06:20

更优秀程序员

2024-01-29 00:20:00

GolangGo代码

2013-05-27 10:21:39

游戏设计

2015-10-12 09:03:53

程序员法则

2021-06-11 13:32:24

程序员技能开发者

2015-06-17 14:24:48

优秀程序员整洁代码

2021-05-29 07:32:14

优秀程序员代码

2012-05-25 10:54:24

程序员

2020-03-29 08:19:56

程序员代码

2016-10-28 14:34:26

MacBook Pro苹果升级

2022-09-08 11:12:09

ES6JavaScript
点赞
收藏

51CTO技术栈公众号