技术开发 频道

7大特征和10大秘密助你写出一流代码

  【IT168 评论】这段程序是1997年世界程序设计大赛的一等奖作品的部分代码(完整的代码下载,把代码复制粘贴到cmd的debug命令中,回车看到效果)。这个程序运行后将是一个3D的且伴随着音乐的动画。震撼吧!

  是不是从事软件开发的人员都希望成为这样的武林高手呢?然而真要是用这样的高手来设计、编写我们的产品代码,恐怕某一天,我们什么都不用干了,只能人手一本机器代码,一句一句进行翻译了;那么对于软件产品开发而言,如何写好代码呢?一流的软件产品的代码具备哪些特征呢?

  一流代码的特征

  1、稳定可靠(Robustness)

  代码写出来以后,一定要能够运行得非常好,非常稳定可靠。在现今的IT行业,软件产品都是是24*7,即要保证系统一天24小时,一星期7天中都可以无间断的正常运行。比如我们百度的搜索引擎系统,比如我们的通信系统,等等。到了产品开发后期,大部分的成本都将投入到产品稳定性的提高。

  2、可维护且简洁(Maintainable and Simple Code)

  在写代码时,首先要考虑的是:写出来的代码不但要自己可以读懂,而且我们的同事、测试工程师都可能要修改这些代码,对其进行增减。如果代码很复杂,不容易读懂,如程序中的递归一大堆、程序不知何时或从何地跳出,则会使程序的可维护性和简洁性降低。所以必要的注释、统一的编程规范等都是非常重要的。

  3、高效(Fast)

  在软件行业中效率是非常重要的,比如搜索引擎。有些软件的搜索效率就不高,搜索过程特别缓慢,让人难以接受。当然这里面有一个带宽的问题,但是程序效率不高也是一个重要的原因。而实际上程序的效率提高,有时候很简单,并没有什么神秘之处,如使用数组索引时候,可以用指针方式而不使用数组下标;数组的空间定义应该定义为2的N次幂等等。

  4、简短(Small)

  这方面大家的感受可能不是很深,但是我的感受是很深的。配置过PSTN程控交换机、路由器、VoIP网关设备的人都知道,这些设备的软件都是从PC机通过网口或串口下载到这些设备的Flash上(类似PC机的BIOS)再通过设备上的CPU启动。如果程序写的很罗嗦,随着特性不断增加,程序规模将变大的巨大,Flash空间告急、内存告急、下载升级变的不可忍受,等等,带来的就是成本不断增加,利润不断下降。

  5、共享性(Reusable)

  如果做大型产品开发,程序的共享性也是非常重要的。我们产品有那么多开发人员,如果每一个人都自己定义字符串、链表等数据结构,那么开发效率就会降低,我们的产品恐怕到今天也不能出台。我所说的“共享”不是指将别人的代码复制到自己的代码中,而是指直接调用别人的代码,拿来即可用。这一方面可以减少代码的冗余性,另一方面可以增强代码的可维护性。如果别人的代码里有Bug,只需修改他的代码,而调用此代码的程序不用进行任何修改就可以达到同步。这同时要求我们在设计的时候,如何考虑系统的内聚和耦合的问题。

0
相关文章