3月 15

【转载】9条编程带给程序员的坏习惯;

/**
*  本文笑点很奇怪
*  请各位视自身情况筛选阅读.
*/

如果你是一个程序员, 或者你就读计算机相关专业, 那么你应该能理解下面这些诡异的小习惯是怎么养成的, 或者你本身就有着其中的某些习惯:

0. 程序员数数会从0开始数起.

例: 程序员吵架的时候会说: “我数三下, 你再不闭嘴我就不客气了! 零! 一! 二!” 或者列清单的时候编号会从0.开始写.
因:  array[0]是数组的第一个元素.
评: 这个习惯的养成是一个艰难的过程. 多少次的越界, 多少次的循环次数错误让我们深深的记住了从0开始.

1. 程序员用肯定和否定回答选择性的问题.

例: 问 “您想喝咖啡还是喝茶?” 程序员答: “嗯.”
因: 当条件或||有一个子句值为真, 则整个语句值为真.
评: 这个习惯夸张了一点, 但这的确是程序员思维方式的通病, 用计算机的处理逻辑处理人类问题. 当然这样的回答显然是存在编程错误的, 因为对于这个问题他错误的返回了布尔型的值. 虽然高度怀疑有没有人关心这种回答的结果是怎样, 还是给出一个答案. 如果真的在程序的世界里, 服务员会优先考虑给你咖啡, 如果没有咖啡了, 才会端茶给你.
Continue reading

1月 17

(翻译)编程中的命名约定

序:此文是译文,有选择性的翻译了Wikipedia上的原文,原文题目:Naming convention (programming)。因能力有限,难免存在讹误;如果你有能力,建议你阅读英文原文。原文链接见文末。

在计算机编程中,命名约定是用于程序源码和文档的一套规则,根据此规则来选取合适的字符串作为变量、类型和函数等的标识符。

之所以采用命名约定(而不允许程序员随意选取字符串)的原因在于:

  • 便于阅读、理解程序源码;
  • 美化程序源码(如,不允许过长的命名及缩写命名)。

命名约定是一个极易引起争论的话题,因为不同的“党派”都坚信自己使用的规则是最完美的的,其他人的规则都“略逊一筹”。通俗得来说,这属于“宗教信仰”的问题。好多公司或群体量身定制了自己的命名规则。

Continue reading

1月 12

【文献推荐】生物信息学编程技能的培养

2009年12月的PLoS Computational Biology上发表了一篇名为《培养实用生物信息学编程技能的简明指导》的文章。在此推荐给生物信息学专业的学生。不管你是“菜鸟”还是“高手”,读一读此文,均将获益匪浅。用原文中的一句话来说,就是:Successful adoption of these principals will serve both beginner and experienced bioinformaticians alike in career develop- ment and pursuit of professional and scientific goals.

我根据自己的理解把文中作者的观点整理概括如下:

Continue reading