ASP.NET编程规范之编码规范浅析


  本文标签:ASP.NET编程规范之编码规范

  ASP.NET编程规范之编码规范都有哪些需要学习和注意的呢?下面开始我们的讲解:

  ASP.NET编程规范之编码规范1.注释

  A. 每个页面的开始必须有下面格式的注释

  1. ’*********************************************  
  2.  
  3. 页面名称: frmStyleE  
  4.  
  5. 作用/描述: 款式查询  
  6.  
  7. 输入/发送:  
  8.  
  9.  strUserList(): 被搜索的用户列表  。  
  10.  
  11.  strTargetUser: 要搜索的用户名  。  
  12.  
  13. 输出/返回格式: 在rasUserList 数组中rsTargetUse的第一次出现的索引  。  
  14.  
  15.  如果目标用户没找到,返回-1  。  
  16.  
  17. 原作者: Raymnod Fok 2002-1-1  
  18.  
  19. 原作日期:  
  20.  
  21. 修改者:  
  22.  
  23. 修改日期:  
  24.  
  25. 备注:  
  26.  
  27. ************************************************ 

  注:左对齐,中间隔开4个Tab位(每个Tab缩进4位)

  B. 所有变量及常量均要有注释

  C. 每个过程(函数)也应该有注释,以描述这个过程(函数)的功能,以下是注释的格式

  1. ***********************************************  
  2.  
  3. 函数名称: intFindUser  
  4.  
  5. 目的: 在用户列表数组中找出一个指定用户的第一次出现位置  。  
  6.  
  7. 输入/发送:  
  8.  
  9.  strUserList(): 被搜索的用户列表  。  
  10.  
  11.  strTargetUser: 要搜索的用户名  。  
  12.  
  13. 输出/返回格式: 在rasUserList 数组中rsTargetUser的第一次出现的索引  。  
  14.  
  15.  如果目标用户没找到,返回-1  。  
  16.  
  17. 参数: intCol 需要获得内容的当前文本  
  18.  
  19. 原作者: Raymnod Fok 2002-1-1  
  20.  
  21. 原作日期:  
  22.  
  23. 修改者:  
  24.  
  25. 修改日期:  
  26.  
  27. 备注:  
  28.  
  29. ************************************************ 
  1. Function pintFindUser (strUserList() As String, strTargetUser As String)As Integer  
  2.  
  3. Dim i As Integer  循环计数器  。  
  4.  
  5. Dim blnFound As Integer  目标寻找标志  。  
  6.  
  7. intFindUser = -1  
  8.  
  9. i = 0  
  10.  
  11. While i <= Ubound(strUserList) and Not blnFound  
  12.  
  13. If strUserList(i) = strTargetUser Then  
  14.  
  15. blnFound = True  
  16.  
  17. intFindUser = i  
  18.  
  19. End If  
  20.  
  21. Wend  
  22.  
  23. End Function 

  D. 过程(函数)或存储过程内部的注释方法

  应按功能块分,注释应写在每一小段算法或一个小功能之前,不要与代码、注释搞成一团

  E. 若是在程序代码后面写上注释,则在代码语句后面三个Tab位开始写注释

  F. 如果注释是针对程序中的部分代码,需注明该段代码的开始和结束部分

  G. 存储过程也应该写上注释,以下是存储过程注释的格式

  

  1. /*  
  2.  
  3. 存储过程名: TSellMain_Qry  
  4.  
  5. 作用:查询表 Sell_SellRecordMain的数据  
  6.  
  7. 输入:  
  8.  
  9. 输出:表 Sell_SellRecordMain的所有数据  
  10.  
  11. 原作者: quanysq  
  12.  
  13. 日期:  
  14.  
  15. 修改者:  
  16.  
  17. 修改日期:  
  18.  
  19. 备注:  
  20.  
  21. */ 
  1. CREATE PROCEDURE TSellMain_Qry  
  2.  
  3. AS  
  4.  
  5. select * from Sell_SellRecordMain  
  6.  
  7. GO 

  ASP.NET编程规范之编码规范2.格式化代码

  A. 嵌套块应有严格的层次缩进(每一层分别缩进1个Tab,注:每个Tab为4个英文字符)

  B. 一个过程或函数不能太长,大致上应限制在200行内,否则应将其拆分为多个过程或函数

  C. 当产生长字符串时,使用下划线连接字符产生多行代码

  D. 对数据库进行访问数据库、保存、删除、显示数据等操作时,统一使用公用类  。

  E. 在制作界面时,要对照标准,做到界面与流程要求达到一致,界面也要符合标准的规范

  F. 在读取数据显示到界面时,要对照流程的要求与数据库中的表和字段的有效性了解清楚,做到显示的数据完全正确

  G. 在处理操作界面数据时,要对照数据库中数据有效性达到一致,数据与流程达到一致,并保证数据有效  。数据要合理性(如:数量应该小于0或大于0,小数点等等)

  H. 在保存数据处理中,要做到所见即所得,就是保存的数据要与界面数据相一致,并对照流程切保数据符合流程的要求  。

  I. 在读取数据显示到界面、界面数据操作、保存数据操作要多使用过程或函数,尽量减少控制点,使程序系统化

  J. 对于变量的命名,切记要规范

  K. 在程序中要多加注释,使程序更加清楚

  L. 在退出页面时,必须在Page_Disposed(sender,e)事件中释放掉会驻留在内存的变量,主要是Session变量、DataSet变量

  M. 流程图必须简要地规划出程序的流程,其中列出实现该功能的模块的名称

  N. 流程图命名:与程序名相同

  O. TextBox 控件的Enabled属性为False时,其背景颜色必须设为灰色(颜色名称: Silver)

  P. 切换当前的控件,除了VB.net本身默认的Tab键外,再加上Enter键

  Q. 关于并发控制,一般采取事务+锁的方式处理,有三种情况:

  a. 锁定整个表,通常发生在查询大量数据时,使用TABLOCKX提示.

  示例:

  1. CREATE PROCEDURE TSellMain_Qry  
  2. AS  
  3. Begin transaction  
  4. select * from Sell_SellRecordMain with (TABLOCKX)  
  5. if @@ERROR > 0  
  6. ROLLBACK  
  7. Else  
  8. COMMIT ----提交或回滚事务时释放锁  
  9. GO 

  b. 在更新表中所有记录时申请排它锁,防止在提交事务之前记录受其他用户的影响.

  SET TRANSACTION ISOLATION LEVEL SERIALIZABLE

  示例:

  1. CREATE PROCEDURE Ttesthr_Update  
  2.  
  3. AS  
  4.  
  5. Begin transaction --开始事务  
  6.  
  7. SET TRANSACTION ISOLATION LEVEL SERIALIZABLE --申请排它锁,防止在提交事务之前记录受其他用户的影响  
  8.  
  9. Update testhr set hrcode=’aaa’  
  10.  
  11. if @@ERROR > 0  
  12.  
  13. ROLLBACK  
  14.  
  15. Else  
  16.  
  17. COMMIT ----提交或回滚事务时释放排它锁  
  18.  
  19. GO 

  c. 如果只是更新表中一行或者多行记录时使用行级锁.

  With (RowLock)

  示例:

  1. CREATE PROCEDURE Ttesthr_Update  
  2.  
  3. AS  
  4.  
  5. Begin transaction --开始事务  
  6.  
  7. Update testhr with (rowlock) set hrcode=’aaa’ where hrcode=’bbb’  
  8.  
  9. if @@ERROR > 0  
  10.  
  11. ROLLBACK  
  12.  
  13. Else  
  14.  
  15. COMMIT ----提交或回滚事务时释放排它锁  
  16.  
  17. GO 

  R. 程序中处理错误一般使用以下结构

  1. try 
  2.  
  3. …代码  
  4.  
  5. catch 
  6.  
  7. …错误信息  
  8.  
  9. finally 
  10.  
  11. …释放有可能驻留在内存中的变量  
  12.  
  13. end try 

  ASP.NET编程规范之编码规范的相关内容就介绍到这里,希望你对ASP.NET编程规范之编码规范有所了解并掌握  。