.net开发技术规范与实践总结

.Net平台开发的技术规范与实践精华总结
以下是本人对 .Net 平台开发实践的一些点滴总结。这里的技术规范主要是开发过程的代码规范、数据库设计规范、 Com .Net 互操作规范;实践精华是对技术实践过程中的部分总结。
良好的代码风格来自于同一的代码规范。风格良好的代码不仅具备可读性和可维护性,同时也给人行云流水、赏心悦目之快感。
Microsoft 公司统计,基于微软平台的开发中,有 70-80% 的印度工程师在完成同类算法或者模块时,使用的代码基本一致;而相同的调查中只有 20% 的中国工程师们是基本一致的。这说明我们的代码生产过程亟待规范。
类型、变量、常量、方法等标识符一律采用对应的英文实义;如果涉及到两个独立的实义单词,则中间用下划线间隔或者单词首字母大写(两种方式都可以);如果标识符的长度超过了 30 个字母,则基本上以英文单词发音的重读音节取选出三个字母,如 Repeater rpt Management mgt
目前一般有两种大小写规则:
Pascal 大小写形式,所有单词第一个字母大写,其他字母小写。
Camel 大小写形式,除了第一个单词,所有单词第一个字母大写,其他字母小写。
n         类名使用 Pascal 大小写形式
public class HelloWorld (或者 Hello_World ,以下同,不再赘述)
{
 ...
}
n         方法使用 Pascal 大小写形式
public class HelloWorld ()
{
 void SayHello(string name)
 {
 ...
 }
}
n         变量和方法参数使用 Camel 大小写形式
public class HelloWorld ()
{
 int totalCount = 0;
 void SayHello(string name)
 {
 string fullMessage = "Hello " + name;
 ...
 }
}
n         不要使用匈牙利方法来命名变量
以前,多数程序员喜欢把数据类型作为变量名的前缀而 m_ 作为成员变量的前缀。例如: string m_sName int nAge
然而,这种方式在 .NET 编码规范中是不推荐的。所有变量都用 Camel 大小写形式,而不是用数据类型和 m_ 来作前缀。
name address salary 等代替 nam addr sal
别使用单个字母的变量象 i n x 等。使用 index temp 等。用于循环迭代的变量例外:
如果变量只用于迭代计数,没有在循环的其他地方出现,允许用单个字母的变量命名,而不是另外取实义名。
文件名要和类名匹配,例如,对于类 HelloWorld ,相应的文件名应为 helloworld.cs
n         缩进用 TAB ,不用 SPACES
n         注释需和代码对齐。
n         遵循 VS2005 的自动对齐规则,不要人为的调整。
n         用一个空行来分开代码的逻辑分组。
n         在一个类中,各个方法的实现体必须用空行间隔,大括弧“ {} ”需独立一行。
n         在每个运算符和括号的前后都空一格。如:
 If  ( showResult == true )
 {
   for  (  int i = 0; i < 10; i++ )
   {
    //
   }
 }
而不是:
 if(showResult==true)
 {
   for(int i= 0;i<10;i++)
   {
    //
   }
 }
n         避免使用大文件。如果一个文件里的代码超过 300 400 行,必须考虑将代码分开到不同类中。
n         避免写太长的方法。一个典型的方法代码在 1 30 行之间。如果一个方法发代码超过 30 行,应该考虑将其分解为不同的方法。
n         方法名需能看出它作什么。别使用会引起误解的名字。如果名字一目了然,就无需用文档来解释方法的功能了。
n         一个方法只完成一个任务。不要把多个任务组合到一个方法中,即使那些任务非常小。
n         使用 C# 的特有类型,而不是 System 命名空间中定义的别名类型。如:
              int age;
              string name;
              object contactInfo;
       而不是:
              Int16 age;
              String name;
              Object contactInfo;
这么做是基于如下两点原因:( 1 )规范性和一致性;( 2 )便于跨语言平台的移植。
n         别在程序中使用固定数值,用常量代替。别用字符串常数,尽量用资源文件。
n         避免使用很多成员变量,声明局部变量,并传递给方法。
n         不要在方法间共享成员变量,如果在几个方法间共享一个成员变量,那就很难知道是哪个方法在什么时候修改了它的值。必要时使用 enum ,别用数字或字符串来指示离散值。
n         别把成员变量声明为 public protected 。都声明为 private 而使用 public/protected Properties
n         不在代码中使用具体的路径和驱动器名,使用相对路径,并使路径可编程。永远别设想你的代码是在 "C:" 盘运行。你不会知道,一些用户在网络或 "Z:" 盘运行程序。
n         应用程序启动时作些“自检”并确保所需文件和附件在指定的位置。必要时检查数据库连接,出现任何问题给用户一个友好的提示。
n         如果需要的配置文件找不到,应用程序需能自己创建使用默认值。如果在配置文件中发现错误值,应用程序要抛出错误,给出提示消息告诉用户正确值。错误消息需能帮助用户解决问题。
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值