Browsed by
分类: 技术读物

Code Review中的几个提示

Code Review中的几个提示

Code ReivewCode Review应该是软件工程最最有价值的一个活动,之前,本站发表过《简单实用的Code Review工具》,那些工具主要是用来帮助更有效地进行这个活动,这里的这篇文章,我们主要想和大家分享一下Code Review代码审查的一些心得。

首先,我们先来看看Code Reivew的用处:

  1. Code reviews 中,可以通过大家的建议增进代码的质量。
  2. Code reviews  是一个传递知识的手段,可以让其它并不熟悉代码的人知道作者的意图和想法,从而可以在以后轻松维护代码。
  3. Code reviews 也鼓励程序员们相互学习对方的长处和优点。
  4. Code reviews 也可以被用来确认自己的设计和实现是一个清楚和简单的。

你也许注意到了在上面的Code Reivew中的诸多用处中,我们没有提到可以帮助找到程序的bug和保证代码风格和编码标准。这是因为我们认为:

阅读全文 Read More

好烂啊有点差凑合看看还不错很精彩 (23 人打了分,平均分: 4.43 )
Loading...
编程引言补充

编程引言补充

之前收集过《22条经典的编程引言》,发现还有一些未收录的,下面这些引言也很有意思的,希望你喜欢。

“The first 90% of the code accounts for the first 90% of the development time. The remaining 10% of the code accounts for the other 90% of the development time.” – Tom Cargill 
 “最开始的90%的代码使用了程序员90%的时间,剩下的10%的代码也需要90%的开发时间”——Tom Cargill(这不就是中国谚语——“行百步半九十”)

 

“In order to understand recursion, one must first understand recursion.” – Author Unknown 
 “要知道什么是‘递归’,你首先需要知道‘递归’”——无名氏

阅读全文 Read More

好烂啊有点差凑合看看还不错很精彩 (8 人打了分,平均分: 3.50 )
Loading...
一些单元测试的Guideline

一些单元测试的Guideline

Jimmy Bogard 曾经写过一篇文章: 《从单元测试中获益》,这这篇文章中给出了下面三条规则:

  1. 测试名应该从用户的角度描述是什么和为什么” – 这样一来,程序员可以从名字就可以知道用户需要什么样的软件行为。
  2. 测试也是代码,同样也需要我们更多的爱” – 真实运行在生产环境下的代码不仅仅只是我们需要去关心和花心思的代码。对于单元测试中的代码同样也需要易读易维护,以及可重用的特性。“我非常痛恨那些又长又复杂的测试代码,如果一个测试需要30行的单元测试代码,请把其放在一个方法中。一个长的测试步骤只会激怒程序员。如果你在正式的代码中都没有这么长的代码,那么为什么我们需要在测试代码中容忍这样的情形呢?
  3. 不要只用一种固定的模式或组织风格有些时候,对于一些特殊的测试案例,标准的类设计模式,或一个固有的测试装置可能并不能有效的工作。

阅读全文 Read More

好烂啊有点差凑合看看还不错很精彩 (7 人打了分,平均分: 2.29 )
Loading...
程序员惯用的解释(Top 25)

程序员惯用的解释(Top 25)

 下面是程序员日常工作当中惯用的解释,或是口头禅。我们可以从这一个侧面来看看的程序员的特征和性格,相信你我都说过很多这样的话。不要太认真哦,呵呵。

  1. 在我这边的电脑上可以工作啊……
  2. 我重来没有听过这样的事
  3. 昨天还能正常工作呢
  4. 好吧,这算一个BUG
  5. 这怎么可能?
  6. 这应该是机器或是环境的问题

    阅读全文 Read More

好烂啊有点差凑合看看还不错很精彩 (18 人打了分,平均分: 3.39 )
Loading...
程序员犯的非技术错误(Top 5)

程序员犯的非技术错误(Top 5)

对于程序开发者来说,有两种技术需要我们掌握,一个是技术上的能力,另一个是非技术上的能力。不幸的是,许多程序员过多地关注了技术上的能力,而忽略了非技术上的能力的培养,因此,我们的程序员们经常会有一些很不好的习惯,这里我们例举了程序员们最常犯的5个非技术的错误,与大家共勉。

1.- 缺乏团队纪律

“Discipline is the bridge between goals and accomplishment.” Jim Rohn.

纪律是一个最有价值的技能,不仅仅只是在软件开发领域,同样在其它领域也是一样的。但对于现实来说,我们很难找到即有才华又有纪律的人。这正如足球队一样,非洲的球员们才华相当的出众,可惜他们总是独自为阵,团队纪律性不足,所以可以有好的成绩,但却无法赢得最后的胜利;而德国队的队员个人技能平平,但其有很强大的团队纪律性,所以,总是能打入最后的决赛并获得冠军。有人说过,个人英雄并不可怕,而有强大纪律性的团队才让人可怕。这正是日本这个民族的可怕之处。况且,软件开发从来都不是一个人可以完成的事情,所以团队工作中的纪律性会是非常重要的。

Steve Pavlina 强调了自律中5个因素:“承担, 毅力, 努力, 勤奋, 和坚持” 这里,我们强烈推荐你读一读Steve的 关于自律的文章

阅读全文 Read More

好烂啊有点差凑合看看还不错很精彩 (14 人打了分,平均分: 3.71 )
Loading...
(免费在线)新书推荐:搜索的用户界面

(免费在线)新书推荐:搜索的用户界面

题外话:剑桥大学出版社很有意思,允许作者把书的全部内容放在网上,例如:Christopher D. ManningPrabhakar Raghavan and Hinrich Schütze, Introduction to Information Retrieval, Cambridge University Press. 2008.

搜索的用户界面》的作者Marti Hearst是加州大学伯克利分校研究信息可视化的一位大儒,她有很多带有认知心理学加设计的尝试,在信息检索这门学科里的信息可视化领域很有地位。我斗胆把她的新书的梗概在这里描述一下,习惯看英文的朋友们可以点击链接去看英文原文,不喜欢看英文的朋友们可以有选择的看看我这里的总结,然后硬硬头皮,跳进去啃一些具体章节吧。本书可能收益的人有:对搜索有兴趣的学生,工业界做设计和评估的专业人士,对技术中的人本主义感兴趣的人,书痴。

阅读全文 Read More

好烂啊有点差凑合看看还不错很精彩 (7 人打了分,平均分: 3.29 )
Loading...
Python 自然语言处理

Python 自然语言处理

推荐一本免费的在线电子书,《用Python进行自然语言处理》, 用NLP 工具包(开源免费,Python)来进行文本分析。特别适合初学计算语言学的学生。好像没有好的中文切词。当然,免不了需要提一下 Dan Jurafsky 教授,大家可以搜索一下,找找他的讲义。

简要翻译一下提纲:

阅读全文 Read More

好烂啊有点差凑合看看还不错很精彩 (7 人打了分,平均分: 3.29 )
Loading...
整洁代码的4个提示

整洁代码的4个提示

虽然这样的文章非常的多,并且,就算是对于编程新手来说,也是非常的简单和显而见,但是,在我们进行Code Review过程中,我们还是能够看到那些非常混乱的代码,所以,有些时候,你会在想,是不是这样的规则太多了,导致我们的程序员记不住。虽然我们在以前的文章中一遍又一遍的说过(比如:《优质代码的十诫》),千言万语总结一下,无论你用什么样的语言,最最基本的编程原则就是下面这四条。

阅读全文 Read More

好烂啊有点差凑合看看还不错很精彩 (7 人打了分,平均分: 3.14 )
Loading...