Web Analytics

知道如何使用命令行工具

本文翻译自”Know How to Use Command-line Tool“,来自于《程序员应该知道的97件事》一书中的某个章节。 现今,很多软件开发工具被打包成集成开发环境(Integrated Development Environments,IDE)提供给开发者。微软的Visual Studio和开源的Eclipse就是两个颇受欢迎的IDE,当然还有很多其他类似的工具。很多程序员喜欢使用IDE,这不仅是因为IDE容易使用,而且IDE还可以让程序员无需过多考虑一些过程中的微小细节,特别是构建过程。 ...

March 16, 2011 · 3 min · Tony Bai

专业程序员

本文翻译自"The Professional Programmer",来自于《程序员应该知道的97件事》一书中的某个章节。 什么是专业程序员? 一个专业程序员的唯一的、最重要的特点是个人的责任。专业程序员会对他们的职业生涯负责,会对他们的估计负责,会对他们的计划承诺负责,会对他们的错误负责,会对他们的技艺负责。一个专业程序员绝不会将他们的责任推到其它人身上。 ...

February 24, 2011 · 3 min · Tony Bai

持续学习

本文翻译自"Continuous Learning",来自于《97 Things Every Programmer Should Know》一书中的某个章节。 我们生活在一个引人入胜的时代。软件开发分布在全球各地,你知道那里有很多人可以胜任你的工作。你需要不断学习以保持你在市场上的竞争力。否则,你将变成一条恐龙,专心从事某一个工作,直到有一天,你不再被需要或者你的工作被外包给了其它更为廉价的开发人员。 ...

February 23, 2011 · 3 min · Tony Bai

代码评审

本文翻译自"Code Reviews",来自于《97 Things Every Programmer Should Know》一书中的某个章节。 你应该做代码评审。为什么呢?因为代码评审可以提高代码质量并且降低缺陷比例。但进行代码评审未必是因为你想到的那些理由。 由于之前有过一些代码评审的糟糕体验,因此许多程序员不喜欢代码评审。我曾经见过一些组织,它们要求所有代码在部署到生产环境之前必须通过一个正式的评审。多数情况下由架构师或一名主程序员进行这些评审,这种做法被戏称为“架构师评审一切”。这个要求被写在了他们的软件开发过程手册中,因此程序员必须遵守。可能有一些组织的确需要这样一个严格且正式的过程,不过大多数组织并不需要。在大多数组织中,这样做法只会适得其反。被评审者会感到他们就像是在等待一个假释裁决委员会的判决。而评审者既需要时间阅读源码,还需要时间跟上系统的最新进展,了解系统的全部细节。评审者很快就成为了这个过程的瓶颈。而这个过程也会很快地成为众矢之的并变得愈加糟糕。 ...

February 22, 2011 · 3 min · Tony Bai

把一切都纳入版本控制

本文翻译自"Put Everything Under Version Control",来自于《97 Things Every Programmer Should Know》一书中的某个章节。 把项目中的一切都纳入版本控制。你需要的资源包括:免费的工具,比如Subversion,Git,Mercurial和CVS;充足的磁盘空间;便宜且性能强大的服务器;无处不在的网络;甚至包括项目托管服务。安装好版本控制软件后,为了将你的工作成果放入版本库中,你所要做仅仅是在一个包含你的代码的干净目录中敲入适当的命令。你只需要学习两个新操作:将你修改的代码提交到版本库中以及将版本库中的代码更新到你本地的工作版本中。 ...

February 18, 2011 · 3 min · Tony Bai

将你的编码标准自动化

本文翻译自”Automate Your Coding Standard“,来自于《97 Things Every Programmer Should Know》一书中的某个章节。 也许你也曾经经历过。在一个项目开始阶段,每个人都有着很多良好的意愿,我们称这些意愿为“新项目决议”。多数情况下,这些决议都会被记在文档中。关于代码的那些决议最终成了项目的编码标准。在项目启动会议上,主程序员带着大家一起浏览一遍文档,最好的情况下,大家都同意在项目中遵照这些标准。不过一旦项目开始,这些良好的意愿就被丢弃了,每次一个。当最终项目交付的代码看起来一团糟的时候,似乎没有人知道项目是怎么变成这个样子的。 ...

February 16, 2011 · 3 min · Tony Bai

在你重构之前

本文翻译自"Before You Refactor",来自于《97 Things Every Programmer Should Know》一书中的某个章节。 在某些时候,每个程序员都需要重构现有的代码。不过在你动手之前,请考虑一下下面的内容,因为这可以节省你和他人的大量时间(以及痛苦)。 · 重构开始的最好方式就是对现有代码库及其测试代码进行总结和评估。 ...

February 15, 2011 · 2 min · Tony Bai

《Programming in Haskell》中文版翻译项目

“A language that doesn’t affect the way you think about programming, is not worth knowing”. — Alan Perlis(ACM 第一任主席,图灵奖得主,1922-1990) 《程序员修炼之道》这本书建议程序员每年应至少学习一门新的语言,以拓宽思维,避免墨守成规。今年我选择了函数式编程语言Haskell。选择Haskell的理由正如Alan Perlis所说的那样,Haskell是一门可以影响程序员编程思维的语言,我也期望通过学习Haskell来拓宽我的思维。 ...

November 14, 2010 · 3 min · Tony Bai