RNOP产品组开发规范(VS2005 C#)V1.0.doc_第1页
RNOP产品组开发规范(VS2005 C#)V1.0.doc_第2页
RNOP产品组开发规范(VS2005 C#)V1.0.doc_第3页
RNOP产品组开发规范(VS2005 C#)V1.0.doc_第4页
RNOP产品组开发规范(VS2005 C#)V1.0.doc_第5页
已阅读5页,还剩40页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

RNOP 产品组开发规范 VS2005 C 第 1 页 共 45 页 RNOPRNOP 产品组开发规范产品组开发规范 VS2005VS2005 C C 2008 9 222008 9 22 RNOP 产品组开发规范 VS2005 C 第 2 页 共 45 页 目目 录录 第第 1 章章概述概述 5 1 1前言前言 5 1 2规范制定原则规范制定原则 5 1 3术语定义术语定义 5 1 3 1Pascal 大小写大小写 5 1 3 2Camel 大小写大小写 5 1 4文件命名组织文件命名组织 5 1 4 1文件命名文件命名 5 1 4 2文件使用注意文件使用注意 6 第第 2 章章代码外观代码外观 7 2 1开发环境开发环境 7 2 2代码在本机的存放目录代码在本机的存放目录 7 2 3列宽列宽 7 2 4换行换行 7 2 5缩进缩进 7 2 6空格 括号空格 括号 花括号花括号 8 第第 3 章章申明申明 9 3 1每行声明数每行声明数 9 3 2初始化初始化 9 3 3位置位置 9 3 4类和接口的声明类和接口的声明 11 3 5字段的声明字段的声明 11 第第 4 章章命名规范命名规范 12 4 1命名概述命名概述 12 4 2大小写规则大小写规则 13 4 3缩写缩写 14 4 4命名空间命名空间 14 4 5类类 14 RNOP 产品组开发规范 VS2005 C 第 3 页 共 45 页 4 6接口接口 15 4 7属性属性 ATTRIBUTE 16 4 8参数参数 16 4 9方法方法 17 4 10 属性属性 PROPERTY 17 4 11 常量常量 CONST 18 4 12 字段字段 18 第第 5 章章语句语句 20 5 1每行一个语句每行一个语句 20 5 2复合语句复合语句 20 5 3IF IF ELSE IF ELSE IF 语句语句 21 5 4FOR FOREACH 语句语句 22 5 5WHILE 语句语句 22 5 6DO WHILE 语句语句 22 5 7SWITCH CASE 语句语句 23 5 8TRY CATCH 语句语句 23 5 9SQL 语句语句 24 第第 6 章章注释及异常处理注释及异常处理 25 6 1注释注释 25 6 2异常处理异常处理 26 6 3调试与编译调试与编译 28 第第 7 章章数据类型 数据类型 ADO NET 控件命名规则 控件命名规则 31 7 1命名方法命名方法 31 7 2数据类型命名规范数据类型命名规范 31 7 3ADO NET 命名规范命名规范 31 7 4主要控件命名规范主要控件命名规范 32 7 4 1Standard Control 32 7 4 2Data Control 33 7 4 3Validation Control 33 7 4 4Navigation Control 34 RNOP 产品组开发规范 VS2005 C 第 4 页 共 45 页 7 4 5Login Control 34 7 4 6WebParts Control 34 7 4 7Developer Express 35 第第 8 章章注意事项注意事项 36 8 1变量名变量名 36 8 2 符号的使用符号的使用 37 8 3在在 DATATABLE中查询中查询 39 8 4经验总结经验总结 40 第第 9 章章代码管理代码管理 42 第第 10 章章公共组件公共组件 44 第第 11 章章版本控制版本控制 45 RNOP 产品组开发规范 VS2005 C 第 5 页 共 45 页 第第 1 章章概述概述 1 1 前言前言 为统一 RNOP 开发人员的编码规范 使程序具有良好的可读性 方便代码的交流和维护 特制定如下编码规定 RNOP 全体开发人 员需严格遵循本规范进行编码 1 2 规范制定原则规范制定原则 1 方便代码的交流和维护 2 不影响编码的效率 不与大众习惯冲突 3 使代码更美观 阅读更方便 4 使代码的逻辑更清晰 更易于理解 5 避免重复实现 能使用公共组件尽量使用 如不满足需讨论 1 3 术语定义术语定义 1 3 1Pascal 大小写大小写 将标识符的首字母和后面连接的每个单词的首字母都大写 可 以对三字符或更多字符的标识符使用 Pascal 大小写 例如 BackColor 1 3 2Camel 大小写大小写 标识符的首字母小写 而每个后面连接的单词的首字母都大写 例如 backColor RNOP 产品组开发规范 VS2005 C 第 6 页 共 45 页 1 4 文件命名组织文件命名组织 1 4 1文件命名文件命名 1 文件名遵从 Pascal 命名法 无特殊情况 扩展名小写 2 使用统一而又通用的文件扩展名 C 类 cs 1 4 2文件使用注意文件使用注意 1 避免将多个类放在一个文件里面 2 一个文件应该只有一个命名空间 避免将多个命名空间放在 同一个文件里面 3 一个文件代码一般控制在 300 400 行 最好不要超过 500 行 不包括机器产生的代码 RNOP 产品组开发规范 VS2005 C 第 7 页 共 45 页 第第 2 章章代码外观代码外观 2 1 开发环境开发环境 在 VS 中 为了项目编码规范的一致 RNOP 开发人员的 VS 开 发环境需一致 可以把 VS 开发环境中的编码风格和代码规范设置 信息导出为一个配置文件 默认的文件后缀名为 vssettings 其他项 目成员则将此文件导入到自己的 VS 开发环境中即可 2 2 代码在本机的存放目录代码在本机的存放目录 为防止出现因程序代码在不同终端存放在不同目录下导致的编译 问题 代码建议存放在本机的存放在本机的 D 盘相关目录盘相关目录下 具体目录要求如下 一期功能模块 1 0 版本 盘符 RNOP VSS RNOP1 0 一期功能模块 1 1 版本 盘符 RNOP VSS RNOP1 1 公共 用户组件 VSS 共享方式 2 3 列宽列宽 代码列宽控制在 110 字符左右 2 4 换行换行 当表达式超出或即将超出规定的列宽 遵循以下规则进行换行 1 在逗号后换行 2 在操作符前换行 3 规则 1 优先于规则 2 当以上规则会导致代码混乱的时候自己采取更灵活的换行规则 RNOP 产品组开发规范 VS2005 C 第 8 页 共 45 页 2 5 缩进缩进 缩进应该是每行一个 Tab 4 个空格 不要在代码中使用 Tab 字 符 Visual Studio Net 设置 工具 选项 文本编辑器 C 制表符 插 入空格 2 6 空格空格 括号 括号 花括号花括号 以 VS2005 默认值为标准 在完成代码后 将最后出现的 删除再输入 VS2005 系统将自动调整 推荐使用 CodeRushNET 3 0 8 7 工具 RNOP 产品组开发规范 VS2005 C 第 9 页 共 45 页 第第 3 章章申明申明 3 1 每行声明数每行声明数 一行只建议作一个声明 并按字母顺序排列 如 int level 推荐 int size 推荐 int x y 不推荐 3 2 初始化初始化 建议在变量声明时就对其做初始化 3 3 位置位置 变量建议置于块的开始处 不要总是在第一次使用它们的地方 做声明 如 RNOP 产品组开发规范 VS2005 C 第 10 页 共 45 页 void MyMethod int int1 0 beginning of method block if condition int int2 0 beginning of if block 不过也有一个例外 for int i 0 i maxLoops i 应避免不同层次间的变量重名 如 int count void MyMethod if condition int count 0 避免 RNOP 产品组开发规范 VS2005 C 第 11 页 共 45 页 3 4 类和接口的声明类和接口的声明 1 在方法名与其后的左括号间没有任何空格 2 左花括号 出现在声明的下行并与之对齐 单独成行 3 方法间用一个空行隔开 3 5 字段的声明字段的声明 不要使用是 public 或 protected 的实例字段 考虑为字段提供 get 和 set 属性访问器 而不是使它们成为公共的 示例 public class Control Component private int handle public int Handle get return handle Set handle value RNOP 产品组开发规范 VS2005 C 第 12 页 共 45 页 第第 4 章章命名规范命名规范 4 1 命名概述命名概述 使名称足够长以便有一定的意义 并且足够短以避免冗长 唯 一名称在编程上仅用于将各项区分开 表现力强的名称是为了帮助 人们阅读 1 避免容易被主观解释的难懂的名称 如方法名 AnalyzeThis 或者属性名 xxK8 这样的名称会导致多义性 2 在类属性的名称中包含类名是多余的 如 Book BookTitle 而是应该使用 Book Title 3 只要合适 在变量名的末尾或开头加计算限定符 Avg Sum Min Max Index 4 在变量名中使用互补对 如 min max begin end 和 open close 5 布尔变量名应该包含 Is 这意味着 Yes No 或 True False 值 如 fileIsFound 6 在命名状态变量时 避免使用诸如 Flag 的术语 状态变量 不同于布尔变量的地方是它可以具有两个以上的可能值 不是使用 documentFlag 而是使用更具描述性的名称 如 documentFormatType 此项只供参考 7 即使对于可能仅出现在几个代码行中的生存期很短的变量 仍然使用有意义的名称 仅对于短循环索引使用单字母变量名 如 i 或 j 可能的情况下 尽量不要使用原义数字或原义字符串 RNOP 产品组开发规范 VS2005 C 第 13 页 共 45 页 8 不允许采用中文命名 9 不允许采用拼音缩写命名 10 不允许采用数字编号区分命名 4 2 大小写规则大小写规则 标识符中的所有字母都大写 仅对于由两个或者更少字母组成 的标识符使用该约定 例如 System IO System Web UI 下表汇总了大写规则 并提供了不同类型的标识符的示例 标识符大小写示例 类 PascalAppDomain 枚举类型 PascalErrorLevel 枚举值 PascalFatalError 事件 PascalValueChange 异常类 PascalWebException 注意 总是以 Exception 后缀结尾 只读的静态字段 PascalRedValue 接口 PascalIDisposable 注意 总是以 I 前缀开始 方法 PascalToString 命名空间 PascalSystem Drawing 属性 PascalBackColor RNOP 产品组开发规范 VS2005 C 第 14 页 共 45 页 公共实例字段 PascalRedValue 注意 很少使用 属性优于使用公共实例字段 受保护的实例字段 Camel redValue 注意 很少使用 属性优于使用受保 护的实例字段 私有的实例字段 CamelredValue 参数 CameltypeName 方法内的变量 CamelbackColor 4 3 缩写缩写 1 不要将缩写或缩略形式用作标识符名称的组成部分 例如 使用 GetWindow 或 GetWin 而不要使用 GetW 2 不要使用计算机领域中未被普遍接受的缩写 3 在适当的时候 使用众所周知的缩写替换冗长的词组名称 例如 用 UI 作为 User Interface 缩写 用 OLAP 作为 On line Analytical Processing 的缩写 4 4 命名空间命名空间 RNOP 所属架构层次名称 工程名称 如下所示 例如 namespace RNOP UI NeGroupMgr UI 的网元分组管理 模块 命名空间的名称需与文件路径一致 4 5 类类 1 使用 Pascal 大小写 RNOP 产品组开发规范 VS2005 C 第 15 页 共 45 页 2 用名词或名词短语命名类 3 使用全称避免缩写 除非缩写已是一种公认的约定 如 URL HTML 4 不要使用类型前缀 如在类名称上对类使用 C 前缀 例 如 使用类名称 FileStream 而不是 CFileStream 5 不要使用下划线字符 6 有时候需要提供以字母 I 开始的类名称 虽然该类不是接 口 只要 I 是作为类名称组成部分的整个单词的第一个字母 这便 是适当的 例如 类名称 IdentityStore 在适当的地方 使用复合 单词命名派生的类 派生类名称的第二个部分应当是基类的名称 例如 ApplicationException 对于从名为 Exception 的类派生的类是 适当的名称 原因 ApplicationException 是一种 Exception 4 6 接口接口 1 使用 Pascal 大小写 2 少用缩写 3 给接口名称加上字母 I 前缀 以指示该类型为接口 4 不要使用下划线字符 5 用名词或名词短语 或者描述行为的形容词命名接口 例如 IComponent 使用描述性名词 ICustomAttributeProvider 使用名词短语 IPersistable 使用形容词 RNOP 产品组开发规范 VS2005 C 第 16 页 共 45 页 6 当类是接口的标准执行时 定义这一对类 接口组合就要使 用相似的名称 不同之处只是接口名前有一个 I 前缀 如 public interface IComponent Implementation code goes here public class Component IComponent Implementation code goes here 提示 窗体类命名也采用该原则 格式如 MainForm 4 7 属性属性 Attribute 应该总是将后缀 Attribute 添加到自定义属性类 以下是正 确命名的属性类的示例 public class ObsoleteAttribute 4 8 参数参数 1 使用描述性参数名称 参数名称应当具有足够的描述性 2 对参数名称使用 Camel 大小写 3 使用描述参数的含义的名称 而不要使用描述参数的类型 RNOP 产品组开发规范 VS2005 C 第 17 页 共 45 页 的名称 4 不要使用保留字相同的参数名称 5 不要给参数名称加匈牙利语类型表示法的前缀 Type GetType string typeName 4 9 方法方法 1 使用动词或动词短语命名方法 另外方法名需能看出它作什 么 别使用会引起误解的名字 如果名字一目了然 可能无需用文 档来解释方法的功能了 也给维护带来更好的效率 2 一个方法只完成一个任务 不要把多个任务组合到一个方法 中 即使那些任务非常小 3 使用 Pascal 大小写 RemoveAll GetCharArray Invoke 另外 一个方法的代码长度控制在 25 30 行内 避免方法中有超过 5 个参数的情况 使用结构来传递多个参数 使用重载减少对参数的判读操作 4 10属性属性 property 1 使用名词或名词短语命名属性 2 使用 Pascal 大小写 3 不要使用匈牙利语表示法 RNOP 产品组开发规范 VS2005 C 第 18 页 共 45 页 4 对于希望通过名称反映类型属性的情况 考虑用与属性的基 础类型相同的名称创建属性 例如 如果声明名为 Color 的属性 则属性的类型同样应该是 Color public class SampleClass public Color BackColor Code for Get and Set accessors goes here 4 11常量常量 const 所有单词大写 多个单词之间用 隔开 如 public const string PAGE TITLE Welcome 4 12字段字段 字段是指包含在类或结构中的对象或值 字段使类和结构可以封 装数据 1 拼写出字段名称中使用的所有单词 仅在开发人员一般都 能理解时使用缩写 字段名称不要使用大写字母 class SampleClass string url string destinationUrl RNOP 产品组开发规范 VS2005 C 第 19 页 共 45 页 public class CalendarDate public int month public int day public int year 2 不要对字段名使用匈牙利语表示法 3 不要对字段名或静态字段名应用前缀 RNOP 产品组开发规范 VS2005 C 第 20 页 共 45 页 第第 5 章章语句语句 5 1 每行一个语句每行一个语句 每行最多包含一个语句 如 a 推荐 b 推荐 a b 不推荐 5 2 复合语句复合语句 复合语句是指包含 父语句 子语句 子语句 的语句 1 子语句要缩进 2 即使只有一条子语句也不要省略花括号 如 while d s n RNOP 产品组开发规范 VS2005 C 第 21 页 共 45 页 5 3 if if else if else if 语句语句 ifif if elseif else ifif else ifelse if 语句使用格式语句使用格式 if condition statements if condition statements else statements if condition statements else if condition statements else statements RNOP 产品组开发规范 VS2005 C 第 22 页 共 45 页 5 4 for foreach 语句语句 for 语句使用格式语句使用格式 for initialization condition update statements foreach 语句使用格式语句使用格式 foreach object obj in array statements 5 5 while 语句语句 while 语句使用格式 while condition statements 5 6 do while 语句语句 do while 语句使用格式 do RNOP 产品组开发规范 VS2005 C 第 23 页 共 45 页 statements while condition 5 7 switch case 语句语句 switch case 语句使用格式语句使用格式 switch condition case 1 statements break case 2 statements break default statements break 1 语句 switch 中的每个 case 各占一行 2 语句 switch 中的 case 按字母顺序排列 3 为所有 switch 语句提供 default 分支 4 所有的非空 case 语句必须用 break 语句结束 5 8 try catch 语句语句 RNOP 产品组开发规范 VS2005 C 第 24 页 共 45 页 try catch 语句使用格式语句使用格式 try statements catch ExceptionClass e statements finally statements 5 9 SQL 语句语句 在书写 sql 语句的时候 为了易于辨认 可能会将某些表名或者 字段名首字母大写 如 IsVisible 但是某些数据库 例如 Sybase 可能对表名或字段名大小写敏感 对于 IsVisible 字段 在 oracle 数据库中可以正确识别 但是在 sybase 数据库中就可能报错 因此对于 sql 语句 必须采用小写必须采用小写 RNOP 产品组开发规范 VS2005 C 第 25 页 共 45 页 第第 6 章章注释及异常处理注释及异常处理 6 1 注释注释 无需每行代码 每个声明的变量都做注释 在需要的地方注释 如 if else 逻辑判断时 可读性强的代码需要很少的注释 如 果所有的变量和方法的命名都很有意义 会使代码可读性很强并无 需太多注释 行数不多的注释会使代码看起来优雅 但如果代码不 清晰 可读性差 那就糟糕 如果因为某种原因使用了复杂艰涩的 原理 为程序配备良好的文档和重分的注释 对一个数值变量采用 不是 0 1 等的数值初始化 给出选择该值的理由 简言之 要写 清晰 可读的代码以致无须什么注释就能理解 对注释做拼写检查 保证语法和标点符号的正确使用 类需编写头信息 建议采用 VS2005 的模板 RNOP Team Project Class 来实现 信息格式如下 FileName Test1 Description 测试 Creater xuyong SAVAGE Create Time 09 24 2008 17 02 10 Update History 增加了一个TEST方法 using System using System Collections Generic using System Text namespace RNOP ParaMaintain Test1 的摘要说明 RNOP 产品组开发规范 VS2005 C 第 26 页 共 45 页 public class Test1 public Test1 TODO 在此处添加构造函数逻辑 方法注释格式要求 记录操作日志 操作类型 操作表名 是否为资源 操作描述 是否操作成功 public void WriteOptLog string optType string optTable int isRes string remark int isSucc 必须严格编写所有参数和返回值含义 6 2 异常处理异常处理 不要 捕捉了异常却什么也不做 如果隐藏了一个异常 你将 永远不知道异常到底发生了没有 发生异常时 给出友好的消息给 用户 但要精确记录错误的所有可能细节 包括发生的时间 和相 关方法 类名等 只捕捉特定的异常 而不是一般的异常 好 void ReadFromFile string fileName RNOP 产品组开发规范 VS2005 C 第 27 页 共 45 页 try read from file catch FileIOException ex log error re throw exception depending on your case throw 不好 void ReadFromFile string fileName try read from file catch Exception ex Catching general exception is bad we will never know whether it RNOP 产品组开发规范 VS2005 C 第 28 页 共 45 页 was a file error or some other error Here you are hiding an exception In this case no one will ever know that an exception happened return 不必在所有方法中捕捉一般异常 不管它 让程序崩溃 这将 帮助你在开发周期发现大多数的错误 你可以用应用程序级 线程 级 错误处理器处理所有一般的异常 遇到 意外的一般性错误 时 此错误处理器应该捕捉异常 给用户提示消息 在应用程序关 闭或用户选择 忽略并继续 之前记录错误信息 不必每个方法都 用 try catch 当特定的异常可能发生时才使用 比如 当你写文件 时 处理异常 FileIOException 别写太大的 try catch 模块 如果需 要 为每个执行的任务编写单独的 try catch 模块 这将帮你找出哪 一段代码产生异常 并给用户发出特定的错误消息如果应用程序需 要 可以编写自己的异常类 自定义异常不应从基类 SystemException 派生 而要继承于 IApplicationException RNOP 代码中统一采用以下语句抛出异常 Metarnet RNOP Common GlobalConst ExceptionHandle handleException ex 6 3 调试与编译调试与编译 为规范化调试与编译 同时为了防止多个工程分别使用不同 RNOP 产品组开发规范 VS2005 C 第 29 页 共 45 页 的调试与编译目录导致相关数据文件版本不一致的问题 必须必须将 工程编译与调试目录统一为以下地址 调试目录 盘符 RNOP VSS RNOP1 0 OUT Debug 盘符 RNOP VSS RNOP1 1 OUT Debug 编译目录 盘符 RNOP VSS RNOP1 0 OUT Release 盘符 RNOP VSS RNOP1 1 OUT Release 设置方法如下 打开 VB NET 2005 工程文件 双击 My Projec t 如图 2 所示 图 2打开工程属性 在打开的页面左侧点击 编译 然后点击 生成文件输出路 径 后的 浏览 按钮 在弹出的选择输出路径对话框中选择 D RNOP VSS RNOP1 0 OUT Release 如图 3 所示 RNOP 产品组开发规范 VS2005 C 第 30 页 共 45 页 图 3设置编译目录 点击页面左侧的 调试 然后点击 工作目录 后的 按钮 在弹出的选择工作目录对话框中选择 D RNOP VSS RNOP1 0 OUT Debug 如图 4 所示 图 4设置调试目录 设置完毕后保存工程即可 在发布时必须生成项目并发布编译路径下的文件 禁止发布调试路在发布时必须生成项目并发布编译路径下的文件 禁止发布调试路 径下的文件 径下的文件 RNOP 产品组开发规范 VS2005 C 第 31 页 共 45 页 第第 7 章章数据类型 数据类型 ADO NET 控件命名规则 控件命名规则 7 1 命名方法命名方法 简写 英文描述 英文描述首字母大写 适应于变量命名 7 2 数据类型命名规范数据类型命名规范 数据类型数据类型 数据类型简写数据类型简写 标准命名举例标准命名举例 Array arr arrShoppingList Boolean bln blnIsPostBack Byte byt bytPixelValue Char chr chrDelimiter DateTime dtm dtmStartDate Decimal dec decAverageHeight Double dbl dblSizeofUniverse Integer int intRowCounter Long lng lngBillGatesIncome Object obj objReturnValue Short shr shrAverage Single sng sngMaximum String strstrFirstName 7 3 ADO NET 命名规范命名规范 数据类型数据类型数据类型简写数据类型简写标准命名举例标准命名举例 ConnectionconconNorthwind CommandcmdcmdReturnProducts ParameterparaparaProductID DataAdapterdadaProducts DataReaderdtrdtrProducts DataSetdsdsNorthWind DataTabledtdtProduct DataRowdrdrRow DataColumndcdcProductID DataRelationdreldrelMasterDetail DataViewdvdvFilteredProducts RNOP 产品组开发规范 VS2005 C 第 32 页 共 45 页 7 4 主要控件命名规范主要控件命名规范 7 4 1Standard Control 类 型前 缀示 例 AdrotatoradrtadrtTopAd BulletedListblstblstCity ButtonbtnbtnSubmit CalendarcalcalMettingDates CheckBoxchkchkBlue CheckBoxListchklchklFavColors DropDownListdropdropCountries FileUpLoadfupfupImage FormfrmfrmMain HiddenFieldhfldhfldName HyperLinkhlkhlkDetails ImageimgimgAuntBetty ImageButtonibtnibtnSubmit ImageMapimapimapSite LabellbllblResults LinkButtonlbtnlbtnSubmit ListBoxlstlstCountries LiteralltlltlTitle LocalizeloclocChina MultiViewmvwmvwForm1 PanelpnlpnlForm2 PlaceHolderplhplhFormContents RadioButtonradradFemale RadioButtonListradlradlGender SubStitutionsubssubsTime RNOP 产品组开发规范 VS2005 C 第 33 页 共 45 页 TabletbltblCountryCodes TextBoxtxttxtFirstName ViewvwvwCity WizardwizwizRegister XmlxmlxmlBooks 7 4 2Data Control 类 型前 缀示 例 AccessDataSourceadsadsPubs DataListdlstdlstTitles DetailViewdvwdvwTitles FormViewfvwfvwFonts GridViewgvgvCity ObjectDataSourceodsodsMenus RepeaterrptrptQueryResults ReportViewerrvwrvwRecord SiteMapDataSourcesmdssmdsSite SqlDataSourcesdssdsBooks XmlDataSourcexdsxdsTitles 7 4 3Validation Control 类 型前 缀示 例 CompareValidatorvalcvalcValidAge CustomValidatorvalxvalxDBCheck RangeValidatorvalgvalgAge RegularExpressionValidatorvalevaleEmail RequiredFieldValidatorvalrvalrFirstName ValidationSummaryvalsvalsFormErrors RNOP 产品组开发规范 VS2005 C 第 34 页 共 45 页 7 4 4Navigation Control 类 型前 缀示 例 MenumnumnuUser1 SiteMapPathsmpsmpSite1 TreeViewtvwtvwMenu 7 4 5Login Control 类 型前 缀示 例 ChangePasswordcpwdcpwdUser1 CreateUserWizardcuwcuwLogin LoginloglogCenter LoginNamelognlognUser LoginStatuslogslogsUser LoginViewlogvlogvUser PasswordRecoverypwdrpwdrUser 7 4 6WebParts Control 类 型前 缀示 例 AppearanceEditorPartpaedpaedPart1 BehaviorEditorPartpbedpbedPart2 CatalogZonezcazcatCity ConnectionsZonezconzconDataBase DeclarativeCatalogPartpdcapdcaPart1 EditorZonezedzedNews ImportCatalogPartpicapicaPart LayoutEditorPartpledpledNews PageCatalogPartppcappcaMail PropertyGridEditorPartppgeppgeServer ProxyWebPartManagermpwpmpwpWeb RNOP 产品组开发规范 VS2005 C 第 35 页 共 45 页 WebPartManagermwpmwpSite1 WebPartZonezwpzwpSite2 7 4 7Developer Express 以 Windows 标准控件的规范命名 如果没有对应的 则采用大 写的首字母的缩写 RNOP 产品组开发规范 VS2005 C 第 36 页 共 45 页 第第 8 章章注意事项注意事项 8 1 变量名变量名 以前 多数程序员喜欢把数据类型作为变量名的前缀 m 作为 成员变量的前缀 例如 string m sName int nAge 然而 这种方式在 NET 编码规范中是不推荐的 所有变量都用 Camel 大小写形式 而不是用数据类型和 m 来作前缀 用有意义的 描述性的词语来命名变量 别用缩写 用 name address salary 等 代替 nam addr sal 别使用单个字母的变量象 i n x 等 使用 index temp 等 用于循环迭代的变量例外 for int i 0 i count i 如果变量只用于迭代计数 没有在循环的其他地方出现 许多人还 是喜欢用单个字母的变量 i 而不是另外取名 变量名中不使用下 划线 命名空间需按照标准的模式命名 文件名要和类名匹配 例如 对于类 HelloWorld 相应的文件名应为 helloworld cs 或 helloworld vb RNOP 产品组开发规范 VS2005 C 第 37 页 共 45 页 8 2 符号的使用符号的使用 一一 字符串中的用法字符串中的用法 字符 表示 其后的字符串是个 逐字字符串 verbatim string 只能对字符串常量作用 1 用于文件路径 以下为引用的内容 string s FilePath C Program Files M test txt 相当于 以下为引用的内容 string s FilePath C Program Files Microsoft NET test txt 2 用 表示的字符串能够跨越数行 用于在 CS 中写 JS 或 SQL 代 码比较方便 以下为引用的内容 string s MultiRows Line1 Line2 Line3 string s JavaScript RNOP 产品组开发规范 VS2005 C 第 38 页 共 45 页 二二 标识符中的用法 禁止使用 标识符中的用法 禁止使用 在 C 规范中 可以作为标识符 类名 变量名 方法名等 的第一个字符 以允许 C 中保留关键字作为自己定义的标识符 如 以下为引用的内容 class class public static void static bool bool if bool System Console WriteLine true else System Console WriteLine false class Class1 static void M clu0061ss stu0061tic true RNOP 产品组开发规范 VS2005 C 第 39 页 共 45 页 注意 虽然出现在标识符中 但不作为标识符本身的一部分 因此 以上示例 定义了一个名为 class 的类 并包含一个名 为 static 的方法 以及一个参数名为了 bool 的形参 8 3 在 DataTable 中查询 完成一个查询 返回一个 DataTable 后 很多时候都想在查询结果中继续搜索 这时 可以使用 DataTable Select 方法对结果进行再查询 Select 方法有 4 个重载 我们经常用到的就是 DataTable Select String 这个 String 的参数是查询的限定式 相当于 SQL 查询语言中的 WHERE 语句 不含 WHERE 其语法符合 SQL 语言语法 Select 方法的返回的是包含查询到的数据的 DataRow 但是这个 DataRow 只是被查询的 DataTable 的一个映射 所以 DataRow 是随着 DataTable 的行变化而变化的 例如 DataTable 的行都被删除了 那么 DataRow 中的数据同样被删除了 即便是先 Select 再删 除的 所以 要想把返回的 DataRow 放进数据显示控件中 需要将其放入另一个 DataTable 中 如果直接放入原 DataTable 或将原 DataTable 的行全部清除再放入查询所得的数据都是不行 的 程序会显示错误 错误提示是 表中已有此行 另外 在一个新表中插入行 不能直接用 DataTable Rows Add DataRow 的方式 因为这样 是插入一个新表 也就是 DataRow 是空的 要用导入行的方式 DataTable ImportRow DataRow 当然 前提是这个新表要有与原数据表一样的结构

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论