C#编程规范C#常用命名规范Word格式.docx

上传人:b****5 文档编号:16200533 上传时间:2022-11-21 格式:DOCX 页数:11 大小:20.98KB
下载 相关 举报
C#编程规范C#常用命名规范Word格式.docx_第1页
第1页 / 共11页
C#编程规范C#常用命名规范Word格式.docx_第2页
第2页 / 共11页
C#编程规范C#常用命名规范Word格式.docx_第3页
第3页 / 共11页
C#编程规范C#常用命名规范Word格式.docx_第4页
第4页 / 共11页
C#编程规范C#常用命名规范Word格式.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

C#编程规范C#常用命名规范Word格式.docx

《C#编程规范C#常用命名规范Word格式.docx》由会员分享,可在线阅读,更多相关《C#编程规范C#常用命名规范Word格式.docx(11页珍藏版)》请在冰豆网上搜索。

C#编程规范C#常用命名规范Word格式.docx

//修改描述:

----------------------------------------------------------------*/

文件功能描述只需简述,具体详情在类的注释中描述。

创建标识和修改标识由创建或修改人员的拼音或英文名加日期组成。

如:

一天内有多个修改的只需做一个在注释说明中做一个修改标识就够了。

在所有的代码修改处加上修改标识的注释。

代码编写规范

换行

当一行中的代码过长影响美观时,需要换行,请遵循以下规则进行

1、在逗号后换行。

2、在操作符前换行。

3、规则1优先于规则2。

当以上规则会导致代码混乱的时候自己采取更灵活的换行规则。

缩进

使用缩进是为了使代码有层次感提高代码的可阅读性;

使用缩进时请使用Tab(4个空格);

VisualStudio.Net设置:

工具->

选项->

文本编辑器->

C#->

制表符->

插入空格。

空行

空行是为了将逻辑上相关联的代码分块,以便提高代码的可阅读性。

在以下情况下使用两个空行

1、枚举和类的定义之间。

2、类与类的定义之间。

在以下情况下使用一个空行

1、方法与方法、属性与属性之间。

2、方法中变量声明与语句之间。

3、方法中不同的逻辑块之间。

4、注释与它注释的语句间不空行,但与其他的语句间空一行。

空格

在以下情况中要使用到空格

除了“.”之外,所有的二元操作符都应用空格与它们的操作数隔开。

一元操作符、++及--与操作数间不需要空格。

a+=c+d;

a=(a+b)/(c*d);

while(d++=s++)

{

n++;

}

PrintSize(“sizeis“+size+“\n”);

花括号-{}

1、左花括号“{”放于关键字或方法名的下一行并与之对齐。

if(condition)

publicintAdd(intx,inty)

2、左花括号“{”要与相应的右花括号“}”对齐。

3、通常情况下左花括号“{”单独成行,不与任何语句并列一行。

4、if、while、do语句后一定要使用{},即使{}号中为空或只有一条语句。

if(somevalue==1)

somevalue=2;

5、右花括号“}”后建议加一个注释以便于方便的找到与之相应的{。

while

(1)

if(valid)

}//ifvalid

else

}//notvalid

}//endforever

代码注释的规范

注释的原则

1、在编写代码时就注释,因为以后很可能没有时间这样做。

2、使用注释来解释代码的意图。

3、注释代码中不十分明显的任何内容。

4、修改代码时,总是使代码周围的注释保持最新。

5、在所有的代码修改处加上修改标识的注释。

6、为了是层次清晰,在闭合的右花括号后注释该闭合所对应的起点。

namespaceCcn.Procument.Web

{

}//namespaceCcn.Procument.Web

文档型注释

该类注释采用.Net已定义好的Xml标签来标记,在声明接口、类、方法、属性、字段都应该使用该类注释,以便代码完成后直接生成代码文档,让别人更好的了解代码的实现和接口。

如:

///<

summary>

///用于根据输入的产品编号获取产品信息

/summary>

paramname="

strProNo"

>

输入参数:

产品编号<

/param>

dtProduct"

输出参数:

产品信息的集合<

returns>

返回值:

符合条件的记录数<

/returns>

history>

2010.12.09wlj创建

///2010.12.17wlj修改(修改原因)

///<

/history>

publicintGet_ProductInfo(stringstrProNo,outDataTabledtProduct)

单行注释

该类注释用于方法内的代码注释。

如变量的声明、代码或代码段的解释。

注释示例:

IntiResult=0;

//返回值-存储查询到的符合条件的记录数

if(表达式==1)//当表达式为1时执行的操作

{

}//当表达式为1时执行的操作

/*

如果要注释的代码块行数较多,可以使用下面的方法

*/

#region当表达式为1时执行的操作

if(表达式==1)

//用于取得***信息

thesourcecode;

#endregion

多行注释

该类注释用于不再使用的代码、临时测试屏蔽的某些代码。

用法

/*

[修改标识]

[修改原因]

...(thesourcecode)

*/

修改代码时的注释:

1、要在被修改方法的注释中加入修改的描述

2、在方法中修改时把修改日期和修改人进行标注

///2010.12.17wlj修改(根据客户XX年XX月XX日的XXXXXXX的要求,增加产品所属部门的显示)

//2010.12.17wljeditstart根据客户XX年XX月XX日的XXXXXXX的要求,增加产品所属部门的显示

//strSelectSql=“selectproid,pronamefromt_productwhereproid=‘+strProNo+’”;

strSelectSql=“selectdeptname,proid,pronamefromt_proinfopro,t_deptinfowheredept.deptid=pro.deptidandproid=‘+strProNo+’”;

//2010.12.17wljeditend

代码声明规范

一行只作一个声明,能做初始化的建议在变量声明时就对其做初始化。

命名规范

变量及参数的命名遵守Camel大小写;

数据类型简写对照表:

数据类型

数据类型简写

标准命名举例

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

str

strFirstName

常量的命名:

所有单词大写,多个单词之间用"

_"

隔开。

publicconststringPAGE_TITLE="

Welcome"

;

集合的命名建议在后面使用“s”;

控件的命名规范:

命名方法

遵守Camel大小写(控件名简写+英文描述,英文描述首字母大写)

主要控件名简写对照表:

控件类型

简写

示例

Label

lbl

lblHelpMessage

Button

btn

btnSearch

ImageButton

imgbtn

imgbtnSearch

ListBox

lst

lstPolicyCodes

DataList

dl

dlPublisher

CheckBoxList

chkls

chklsAllIcons

RadioButtonList

rbtnls

rbtnlsAllIcons

Panel

pnl

pnlProductInfo

TextBox

txt

txtLastName

RichTextBox

rtf

rtfReport

LinkButton

lnkbtn

lnkbtnSearch

DropDownList

ddl

ddlStartDate

DataGrid

dg

dgProduct

CheckBox

chk

chkReadOnly

RadioButton

rbtn

rbtnClass

Image

img

imgBackGround

ProgressBar

prg

prgLoadFile

StatusBar

sta

staDateTime

TrackBar

trb

trbRegion

Table

tbl

tblDepartment

TabStrip

tab

tabOptions

Toolbar

tlb

tlbActions

Splitter

spt

sptTest

TreeView

tre

treOrganization

Form

frm

frmEntry

名称空间的命名规范:

名称空间遵守Pascal大小写

命名名称空间时的一般性规则是使用公司名称,后跟技术名称和可选的功能与设计,如下所示。

CompanyName.TechnologyName[.Feature][.Design](TechnologyName指的是该项目的英文缩写,或软件名。

namespaceCcn.Procurement

namespaceCcn.Procurement.DataRules

类的命名规范:

遵守Pascal大小写,用名词或名词短语命名类.

publicclassFileStream

接口的命名规范;

1、用名词或名词短语,或者描述行为的形容词命名接口。

例如,接口名称IComponent使用描述性

名词。

接口名称ICustomAttributeProvider使用名词短语。

名称IPersistable使用形容词。

2、遵守Pascal大小写。

3、给接口名称加上字母I前缀,以指示该类型为接口

publicinterfaceIServiceProvider

publicinterfaceIFormatable

方法的命名规范:

1、使用动词或动词短语+”_”+方法描述命名方法。

2、使用Pascal大小写。

3、以下是正确命名的方法的实例。

Remove_All()

Get_CharArray()

Invoke()

编程规范考核

1、

2、项目负责人负责在项目期间对开发人员的编程规范进行监督并在发现有不符合编程规范时及时提醒开发人员进行纠正;

3、开发结束并上线后一周内,项目负责人负责将项目进行归档(归档到48服务器),并填写源代码及文档归档记录表;

测试人员在项目测试期间可对开发人员的编程规范及项目的归档情况进行监督,当发现有不符合规范的对其进行邮件提醒,对同一开发人员连续三次提醒仍没有纠正者,可进行上报情况由上级记录入考核不合格表中(部门经理在项目期间对项目进行抽查,当抽查后发现不符合规范时,直接记入考核不合格表中);

对于编码安全性的规范:

依据前段时间公司聘请的专业安全公司对我们技术部开发的程序进行安全检测后给给出的建议:

1.口令强度:

在中商以前及近期开发的系统中都没有对系统账户口令强度问题进行重视,这样就会给很多不法人员留下可利用的漏洞,通过猜密码的方式登录系统后台再通 

过图片、文件上传功能上传伪装木马文件进行破坏。

建议参考大型网站在注册账户时对账户口令强度进行判断(长度限制,数字字母混合等),如不能满足要求不允许注 

册,口令强度增大后为了避免客户密码遗忘可增加通过邮件或短信密码找回功能。

2.上传检测:

目前发现最多的是木马文件伪装成图片的方式,但是这种伪装也是有迹可循的,例如仅仅是文件后缀是图片格式(gif,jpg等),但是图片的尺寸都 

是0,因此建议是否可在文件上传时增加一层判断,对上传文件进行审核,避免异常文件的上传。

我们采取的措施:

1、新建一个密码强度验证组件(只在注册时使用),该组件实现对帐户的口令强度的验证(密码长度不小于10位,密码必须为数字字母混合);

(可开发一个公司通用的组件,可以shell为起点对其进行实现)

密码必须经过md5加密后才能存储进数据库;

●对于B/S架构的项目在注册时,必须提供手机号;

当客户遗忘密码后,可通过确认用户名及手机号后才能进入修改密码页面(此页面不需要输入原先密码);

●B/S架构的项目,当客户遗忘密码后,可通过输入用户名及手机号后,下发重置密码(默认密码)至手机号的功能;

●B/S管理页面中,需提供修改密码功能的页面,此页面必须要输入原密码后才能更改密码;

对于C/S架构的项目,须在管理页面提供重置密码(默认密码)的功能;

C/S架构的项目,需对登录用户提供修改密码的功能,需要输入原先的密码;

2、对于上传的检测,在上传界面中的文件选择中只允许上传本项目中使用到的文件格式的后缀名,并且对于后缀名为图片格式的文件(例如:

gif\jpg\bmp\等),需要验证其图片的尺寸是否大于零;

以上两点是我们在开发中需要注意到的地方,必须在开发中进行落实,随着安全检测的深入,对于编程中的安全措施会不断补充;

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 英语

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1