检查新同事的代码时发现的问题
来源:互联网 发布:java 量化交易算法 编辑:程序博客网 时间:2024/04/29 15:17
检查新同事的代码时发现的问题
今天看了一个组员的代码,他是今年才毕业的。在应届毕业生中,他的能力算是相当不错的了,所以我们才破格录用,并准他一个月假期回去答辩毕业论文。在他的代码中,发现几个问题,其中一些颇具代表性,把它们记下来供新手参考。
函数原型中没有参数名。比如,一个函数原型为int foo(const char*buff, size_t buff_length)的函数,他写成了int foo(const char*, size_t)。其实这也不怪他,很多教材上都是这样写的。教材上为什么这样写呢?原因很简单:替编译器着想。编译器在编译时,会把函数的参数名放进符号表中,这会带来空间和时间上的开销。早期硬件资源紧张,函数原型里不写参数名,可以得到类型检查的好处,同时可以把代价减到最小。如今,这种为编译器着想的作用微乎其微了,现在函数原型起的是文档作用,给人看的,所以参数名不能省略,否则谁知道怎么调用。
代码排版夹杂TAB键和空格。换一个编辑器,甚至同是VIM,只是设置不一样,显示效果变得乱七八糟。在学校里写代码,一般都只是自己看,同一种编辑器的同一种设置,效果自然是一样的。工作时写的代码,不光自己看,同事也会看。不能要求同事的编辑器和你的一样,设置也一样。当然,到底是用TAB键还是用空格来缩进,很难说谁好谁坏,不过你只能选择其一,并且至少在同一个文件中保持一致。
不清楚何时把代码抽出来创建一个新函数。我发现其中一个函数完成了好几个功能,我问他为什么不把那些代码作为几个单独的函数。他说,那个函数不长啊。那个函数是不长,100行都不到。我告诉他,一段代码是否应该作为一个单独的函数,不是看它有多长,而是看它逻辑上的功能是否独立,表达的意义是不是清晰。有时为了让一个表达式具有清晰的意义,一行代码都可以作为一个单独的函数。
刚毕业时,就养成一个好的编程习惯是很重要的。不要以为这只是一些小问题就不在意,注意这些问题,不但会给别人留下好的印象,同时也会提高自己的工作效率。
闻香止步淘宝饰品转于:http://blog.csdn.net/absurd/archive/2006/05/16/741669.aspx
- 检查新同事的代码时发现的问题
- 检查新同事的代码时发现的问题
- 检查新同事的代码时发现的问题
- 新的代码,新的同事,新的挑战!!!
- 检查js代码时发现了代码中未return导致的一个小问题
- 昨天发现新的问题
- 同事的代码
- 惊喜的发现同事的BLOG,呵呵。
- 与新同事的谈话
- 查看代码发现的问题
- 华为“新同事文化”:爱你的同事如兄弟
- SQLite 发现了新的问题
- 写给新入行的测试组同事
- 写给新入行的测试组同事
- 爱护公司的未来-新同事
- 爱护公司的未来-新同事
- 爱护公司的未来-新同事
- 有了新的发现
- [转] 动态获取当前屏幕中光标所在位置的颜色
- ISNULL()的正确用法
- Oracle数据库技巧:如何快速为200张以上的表增加2个相同的列
- vbscript脚本1-读取xml格式的配置文件
- oracle 10g: TOP 20 Features for dbas
- 检查新同事的代码时发现的问题
- png图片文件的数据结构以及转换为bmp位图的源代码
- LINQ to SQL语句(4)之Join
- 从“信息时代三定律”看视频监控的发展
- 400
- Whole.Tomato.Visual.Assist.X.v10.5.1715.0-Cracked
- java括号匹配算法
- JQuery读书笔记---很全面的教程
- Armadillo v6.40 Public Build 32-bit Professional Edition incl. keygen+patch by AvAtAr {RES}