你必须知道的.NET: 好代码、坏代码之一

发表于:2011-9-16 10:10

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:王涛    来源:51Testing软件测试网采编

  重要到这几乎是很多软件项目成功或者失败的“罪魁祸首”,究其原因,代码不光支撑了0和1在计算机系统中运行的业务逻辑,同时也是开发者进行交流与研究的标准语言。

  命名很重要,让代码告诉你它自己

  命名到底有多重要呢?

  重要到这几乎是很多软件项目成功或者失败的“罪魁祸首”,究其原因,代码不光支撑了0和1在计算机系统中运行的业务逻辑,同时也是开发者进行交流与研究的标准语言。没有意义或者有歧义的命名,就像两个等待交流的人,面对了一堆火星文无从下口,让交流变成灾难,也就导致很多问题。

  同时,好的命名是自说明的,让代码告诉开发者“我是谁,我做什么,我怎么做”。当然,除了静态式的必要的注释说明之外,动态式的代码也可以包含传递信息的作用,让代码告诉你它自己,因为代码是“活的代码”。

  例如,以某个缓存容器为例,泛型参数明确了容器的Key和Value的关系,其中的方法也基本明确了作为缓存容器所具有的方法:Add、Set、Clear、Refresh和IsExist,而TryGetValue是Try-Parse模式的应用体现。其中的变量container表示了容器载体;expiration表示了过期时间;config表示了容器的配置信息。

以下是代码片段:
  public class AtCache
  {
  public int Count{ }
  public List Items{ }
  public int Expiration { }
  public void Add(TKey key, TValue value){ }
  public void Set(TKey key, TValue value, int expiry){}
  public bool TryGetValue(TKey key, out TValue value){}
  public void Clear(){ }
  public bool IsExist(TKey key){ }
  protected void Refresh(){ }
  private ReaderWriterLockSlim rwLocker = new ReaderWriterLockSlim();
  private Dictionary> container = new Dictionary>();
  private int expiration;
  private DateTime lastRefresh = DateTime.Now;
  private IAtCacheConfiguration config;
  private List items;
  }

  总体来说,让代码告诉它自己,是好代码的体现,而一堆没有意义的代码堆积是让人无法接受和容忍的坏代码。

  遵守编码规范

  编码规范,就是编码最佳实践,是前辈在编码这件事上的积累和总结,是智慧的延续和工业的实践。在软件产业日益蓬勃的今天,软件工业在于如何更有效率地进行生产这件事儿上,有了巨大的进步和积累,编码规范正是如此。例如可以随意列出很多的规范:

  ● 命名规范。
  ● 避免行数过多的方法。
  ● 代码缩进。
  ● 异常规范。
  ● 设计规范。
  ● 注释规范。
  ● 文件的组织规范。
  ● 配置规范。
  ● 发布与部署规范。
  ● 测试规范。
  ● SQL规范。

31/3123>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号