ASP.NET教程之C#复杂定名指南
一个很大的类库。应用程序之所以难以跨平台,在于直接调用了特定平台的接口,而一个巨大的类库,就能极大地减少应用程序对平台的依赖。一个好的名字可以让你的程序加倍好懂,他人一看到这个名字,就可以够猜到你在做甚么。大批好的名字离不开好的定名标准,而一个好的定名标准要做到两点:l公道。即简单被人人承受和利用。从这个意义下去说,好的定名标准不该该太长,它应当让你花上10分钟就可以看完,写过几段代码就可以熟习。
l作风分歧。即前后分歧,破例的情形少。
切合以上两点的定名标准就是好的,固然它们详细的划定规矩大概分歧。有的时分,定名标准表现了编程头脑,好比:关于接口,在.NET中,一样平常请求以“I”开首,在Java中没有这个请求,缘故原由是Java以为接口和笼统类常常能够转化,好比:在项目早期,大概界说的是接口,而在前面,大概把它改成笼统类,假如称号分歧,就制止了称号的修改。
别的,分歧的定名标准也表现了程序开展过程。好比:匈牙利定名法请求范例前缀,故在C++、VB、PB一样平常城市大批呈现范例前缀,像intAmount,strName等。而如今一样平常没有这个请求,缘故原由是:1)有些范例大概会做修正,好比Int16酿成Int32。别的关于一些静态言语(Python、JavaScript)来讲,其范例是变更的,编译时没法断定;2)如今的开辟情况加倍的友爱,即便在开辟的时分,你也很简单晓得变量的范例(只需鼠标移上往)。
本文的定名标准次要基于微软的尺度,别的加上实践开辟的一些详细履历。它还在不休的保护和完美,你能够针对分歧项目标请求,做响应的调剂。
定名款式
款式分类
称号
注释
合用情况
例子
Pascal巨细写
首字母和前面的每一个单词的首字母都年夜写;其他字母小写
BackColor
Camel巨细写
首字母小写,尔后面的每一个单词的首字母年夜写;其他字母小写
backColor
年夜写
一切字母都年夜写
l缩写。
l少于即是2个字符
System.IO
System.Web.UI
款式的选择
标识符
定名格局
例子
备注
参数、部分变量
Camel
publicintGetTypeID(stringtypeName)
{inttypeID;…}
Private、Protected的实例字段
Camel
privatestringredValue;
protectedboolisOk;
界面控件
Camel
privateLabellblAlarm;
缩写
年夜写
namespaceSystem.IO
{…}
缩写必需是被广泛承受、尽人皆知的缩写。
除下面的标识符外
Pascal
publicSystem.Drawing.ColorBackColor
{…}
准绳和习气
主要准绳
成心义的,形貌性的词语来定名。可以一眼看出它作甚么。别利用会引发曲解的名字。假如名字一览无余,就无需用文档来注释办法的功效了
1.除商定俗成的,别用缩写。用name,address,salary等取代nam,addr,sal
2.除用于轮回,别利用单个字母的变量象i,n,x等.而要利用index,temp等。
for(inti=0;i<count;i++){...}
其他习气
l除界面控件外,不要利用范例前缀。好比:利用称号amount,而不是intAmount;
l类:利用名词、名词短语定名。好比:publicclassFileStream;
l办法:利用动词、动词短语入手下手。好比:CreateUser(),RemoveAt()等;
l接口:以I入手下手,前面加上名词、名词短语、描述词定名。好比:IDisposable;
l常量:一切单词年夜写,多个单词之间用"_"离隔。publicconststringPAGE_TITLE="Welcome";
l定名空间:
1.基础格局:
CompanyName/ProjectName.TechnologyName[.Feature][.Design]
a)CompanyName/ProjectName:公司名、项目称号或产物称号;
b)TechnologyName:不乱的、公认的手艺称号或架构条理称号;
c)[.Feature][.Design]:可选的功效与计划;
比方:
//微软公司的Web开辟中的UI中的Design
namespaceMicrosoft.Web.UI.Design
//西门子报价项目中营业逻辑层中的项目办理
namespaceSiemensQuotation.BusinessRules.ProjectManagement
2.几个划定规矩
a)嵌套的定名空间应该有依附干系。比方:System.Web.UI.Design中的类依附于System.Web.UI中的类,而不克不及相反。
b)定名空间和类不克不及利用一样的名字。比方,定名空间Debug下最好不要又一个类名为Debug。
c)假如公司名、项目称号或产物称号太长的话,能够用缩写(且全体年夜写)。
控件定名控件的称号中必要加上前缀,之以是如许做是为了辨别界面的控件和一般的工具,因为界面修正常常十分频仍,辨别开来能使你更疾速的找到控件,从而修正界面。举一个例子:
<P>界面有10个TextBox、10个Label。一个TextBox对应一个Label,为了完成读写,你最少要有20条语句来从控件举行取、赋值操纵,假如有前缀的话,输出this.txt,你就几近即刻能找到这个控件。反之,假如没有前缀,因为窗口或页面临象具有大批的属性和变量(>100个),你将消费大批工夫来查找。别的一个TextBox对应一个Label(一个代表值,一个代表称号),它们常常指统一样事物,假如有前缀,就很简单辨别这两个控件。
控件
前缀
备注
Label
lbl
好比:lblName
TextBox
txt
Button
btn
CheckBox
chk
RadioButton
rdo
CheckBoxList
chklst
RadioButtonList
rdolst
ListBox
lst
DropDownList
ddl
DataGrid
dg
DataList
dl
Image
img
Table
tbl
Panel
pnl
LinkButton
lnkbtn
ImageButton 最强的技术支持WebService,而且有.NET的所有library做后盾。而且ASP.NET在.NET3.5中还有微软专门为AJAX开发的功能--ASP.NETAJAX。 当然我们在选择Asp.net主机是,除了要考虑服务提供商在版本是否是实时更新以外,机房的环境和配置也是非常重要的,通常选择骨干网的机房,在速度和稳定性上会非常有保证。 能产生和执行动态、交互式、高效率的站占服务器的应用程序。运用ASP可将VBscript、javascript等脚本语言嵌入到HTML中,便可快速完成网站的应用程序,无需编译,可在服务器端直接执行。容易编写。 微软又推出ASP.NET。这不是ASP的简单升级,而是全新一代的动态网页实现系统,用于一台WEB服务器建立强大的应用程序。是微软发展的新体系结构.NET的一部分,是ASP和.NET技术的结合。 关于ASP.NET功能上,ASP.NET比微软以前的ASP(96年出现)有更强大的library,更好的稳定性。ASP.NET可以使用.NETFramework中所有组件(也就是说.NET能实现的,ASP.NET一样能实现)。 众所周知,Windows以易用而出名,也因此占据不少的服务器市场。 JSP/Servlet虽然在国内目前的应用并不广泛,但是其前途不可限量。 业务逻辑代码都不必做任何改动;继承性和多态性使得代码的可重用性大大提高,你可以通过继承已有的对象最大限度保护你以前的投资。并且C#和C++、Java一样提供了完善的调试/纠错体系。
页:
[1]