`

程序员的5种类型

阅读更多

在我的代码旅程和编程经历中,已经遭遇很多奇特的对手,还有更为奇特的盟友。我至少发现有 5 种代码勇士,有些是出色的战友,其他则似乎都在搅黄我的每个计划。

  不过他们都在软件开发的万神殿上都有一席之地。如果没有不同编程风格的良好组合,你可能会发现你的项目要不就是耗时过长,要不就是太不稳定或太过完美而无人去做。

  程序员的 5 种类型

  1. The duct tape programmer  补漏型的程序员

  The code may not be pretty, but damnit, it works! 代码或许不漂亮,但能用!

  这种家伙是公司的基石。代码有问题的时候,他能快速补漏,下不再犯。当然他并不关注代码看起来怎么样,是否容易使用,以及其他琐碎的问题,但是他能搞定,没有一堆废话,也不会唧唧歪歪。用这种程序员的最佳方式是,你指出问题后,走开就可以了。

  程序员的 5 种类型

  2. The OCD perfectionist programmer 有完美主义强迫症的程序员

  You want to do what to my code? 你想对我的代码做什么?

  这类家伙并不关心你的截止日期或预算,和编程艺术相比,那些都微不足道。当你最终收到最终成品时,你没有选择余地,只能对那漂亮格式的代码,不,是白玉无瑕的代码,衷心地赞叹。那代码是如此有效率,你无须再对它做什么,否则就是画蛇添足,亵渎大师手笔。他就是那位唯一有资格改动代码的人。

  程序员的 5 种类型

  3. The anti-programming programmer 反编程的程序员

  I’m a programmer, damnit. I don’t write code.  我是一个程序员,擦!我不写代码。

  他的世界只有一个简单的真理:写代码不好。如果你不得不写些东西,那你就错了。因为早已有人做过了,只需拿来就是了。即便他写代码所用时间和其他程序员差不多,或更长,他会告诉你,这种开发实践是多么多么地快。当你拿到他提交的项目时,可能实际代码只有 20 行,也易于阅读。代码或许并不快、高效或向前兼容,但所耗费之力是最小的。

  程序员的 5 种类型

  4. The half-assed programmer 不称职的程序员

  What do you want? It works doesn’t it? 你想要什么呢?代码不是能用么

  这种家伙很少关注代码质量,那是其他人的工作。他只快速完成安排的任务。你可能不喜欢他的代码,其他程序员也讨厌,但管理层和客户喜欢。虽然将来他会给你带来很多的痛苦,但他可以单枪匹马地在期限之前干完活,所以你不能嘲笑他(不管你心里有多想)。

  程序员的 5 种类型

  5. The theoretical programmer 理论型的程序员

  Well, that’s a possibility, but in practice this might be a better alternative. 嗯,有那种可能,但实践中这种应该更好。

  这家伙对应该要做事之外的份外事更感兴趣。他 80% 的时间在呆呆地盯着电脑,15% 的时间在抱怨不合理的期限,4% 的时间在琢磨份外事,1% 的时间在写代码。当你拿到他的最终成品时,总会看到这样的话,“要是时间多的话,这个地方我可以做得更好。”

  你是哪一种?

  个人而言,我自认为是完美主义者。所以,你是哪种类型呢?或者是哪几种的混合型呢?还是你觉得还有上面没有讲到的类型?请在评论留言。

分享到:
评论
1 楼 asdfph 2012-02-22  
感觉自己像是补漏型多点 

相关推荐

    Java程序员面试宝典

    引用类型和原始类型具有不同的特征和用法,它们包括:大小和速度问题,这种类型以哪种类型的数据结构存储,当引用类型和原始类型用作某个类的实例数据时所指定的缺省值。对象引用实例变量的缺省值为 null,而原始...

    程序员面试笔试宝典(何昊,叶向阳) PDF高清扫描版.rar

    程序员面试笔试宝典 目录 前言 上篇 面试笔试经验技巧篇 第1章 面试官箴言 2 第2章 面试心得交流 9 第3章 企业面试笔试攻略 20 第4章 面试笔试技巧 42 第5章 英文面试攻略 82 第6章 智力题攻略 102 下篇 面试笔试...

    程序员的SQL金典.rar

     1.2.10 DBA与程序员 第2章 数据表的创建和管理  2.1 数据类型  2.1.1 整数类型  2.1.2 数值类型  2.1.3 字符相关类型  2.1.4 日期时间类型  2.1.5 二进制类型  2.2 通过SQL语句管理数据表  2.2.1 创建数据...

    程序员的SQL金典4-8

     1.2.10 DBA与程序员 第2章 数据表的创建和管理  2.1 数据类型  2.1.1 整数类型  2.1.2 数值类型  2.1.3 字符相关类型  2.1.4 日期时间类型  2.1.5 二进制类型  2.2 通过SQL语句管理数据表  2.2.1 创建数据...

    C#程序员参考手册(pdf)

    C#程序员参考手册 作者:Grant Palmer 著,康博 译 出版社:清华大学出版社 出版时间:2002年09月第1章 编译和程序结构 第2章 C#类型系统 第3章 运算符 第4章 程序流程和异常处理 第5章 局部变量...

    程序员二进制计算器 v1.36

    (5)输出前的类型转换 对于浮点型值,用以上4种格式时,会先取整,再输出,因此它们可起到对结果取整的作用。 %d 12345.6789 = 12345 %d -12345.6789 = -12345 3-浮点型的输出格式 (1)按精简方式输出 %g %...

    [程序员成长课堂:C.标准教程].陈国建等.扫描版.pdf

    第5章 C++语句 106 第6章 标准模板库STL 130 第三篇 C++面向对象编程 第7章 类 148 第8章 类的初始化、赋值和析构 169 第9章 模板 190 第10章 面向对象程序设计 213 第四篇 C++编程实践 第11章 教学管理系统的C++...

    程序员英语词汇1700词修改

    程序 5. line la?n n. (数据,程序)行,线路 6. if ?f conj. 如果 7. display d?'sple? vt. 显示,显示器 8. set set v. 设置,n. 集合 9. key ki: n. 键,关键字,关键码 10. list l?st n. 列表,显示,v. 打印 11...

    程序员参考大全

    虽然本书第5版本是在1998年出版的,但今天读起来仍感到内容广泛、论述简明、例程丰富、收益匪浅。  除了不变的精华——Windows程序的架构之外,本书还涵盖了编写Windows应用程序所必须了解的许多基本常识和技巧:...

    程序员高级(三级)笔试试题

    自己整理的 存储系统的层次化结构 第一层:通用寄存器堆 第二层:指令与数据缓冲栈 第三层:高速缓冲存储器 ...I/O扩展槽 ,根据总线的类型不同,主板上的扩展槽可分为ISA、EISA、MAC、VESA和PCI几种。

    Html5中文手册(程序员必备手册)

    DOCTYPE> 定义文档类型。 3、<a> 定义超链接。 4、<abbr> 定义缩写。 5、<address> 定义地址元素。 6、<area> 定义图像映射中的区域。 7、<article> 定义外部的内容。 8、<aside> 定义article 以外的内容。 9、...

    C/C++程序员面试指南.杨国祥(带详细书签).pdf

    C、C++语言是IT行业的主流编程语言,也是很多程序员必备的软件基本功,是软件开发行业招聘考查的重点。本书以流行的面试题讲解为主要内容,介绍了C、C++语言基本概念,包括保留字、字符串、指针和引用、结构体、...

    商业模式的5种类型.jpg

    商业模式的5种类型

    Android 程序员面试题精编第四版

    3、 常见的 Activity 类型.............................................................................................................................................................. 9 4、 如何保存 ...

    值类型和引用类型的区别

    拆箱操作获取只想对象中包含值类型部分的指针,然后由程序员手动将其对应的值拷贝给值类型变量。接下来我们 来看看典型的装箱和拆箱操作。 1: public static class BoxingAndUnboxing 2: { 3: public static void...

    C++STL程序员开发指南【可搜索+可编辑】

    1-1-5 弓I 用(References) 类型, ··················•················•"'''8 1-1-6 const 语义的扩展................................................ 9 1-1-7 指针声明...

    狂人C程序员入门必备

    第5章 从循环到穷举 5.1 造句:当就 5.1.1 语法要素 5.1.2 猴子吃桃问题更简洁的写法 …… 第2篇 结构化程序设计与简单的数据结构 第6章 最复杂的去处符——“()” 第7章 作为类型说明符和去处符的“[]” 第8章 ...

    程序员的SQL金典6-8

     1.2.10 DBA与程序员 第2章 数据表的创建和管理  2.1 数据类型  2.1.1 整数类型  2.1.2 数值类型  2.1.3 字符相关类型  2.1.4 日期时间类型  2.1.5 二进制类型  2.2 通过SQL语句管理数据表  2.2.1 创建数据...

    程序员的SQL金典7-8

     1.2.10 DBA与程序员 第2章 数据表的创建和管理  2.1 数据类型  2.1.1 整数类型  2.1.2 数值类型  2.1.3 字符相关类型  2.1.4 日期时间类型  2.1.5 二进制类型  2.2 通过SQL语句管理数据表  2.2.1 创建数据...

Global site tag (gtag.js) - Google Analytics