欢迎来到冰豆网! | 帮助中心 分享价值,成长自我!
冰豆网
全部分类
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • 党团工作>
  • ImageVerifierCode 换一换
    首页 冰豆网 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    《C#编程风格英汉对照》.docx

    • 资源ID:4031743       资源大小:68.42KB        全文页数:75页
    • 资源格式: DOCX        下载积分:12金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要12金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    《C#编程风格英汉对照》.docx

    1、C#编程风格英汉对照 C#编程风格 目录 第一章 2第2章 32.1 空白 32.2 花括号 72.3 类的组织 10第三章 113.1一般原则 113.2缩略形式 133.3预处理器符号 133.4类型和常量 143.5 枚举 153.6 接口 153.7属性 163.8 方法 163.9 变量和参数 173.10特性 183.11 命名空间 183.12 事件处理 193.13异常 19第四章 194.1 一般原则 204. 2 API 214.3内部代码 23第五章 265.1 工程 265.2 类的设计 285.3 线程安全和并发 345.4 效率 35第六章 386.1 类型 386

    2、.2 语句和表达式 406.3控制流程 416.4.类 436.5生命周期 456.6字段和属性 486.7方法 496.8 特性 506.9泛型 516.10 枚举 516.11类型安全、强制转换与转换 536.12错误处理和调试 536.13事件、委托和线程 57第七章 587.1 文件 587.2命名空间 587.3 程序集 60 第一章 一般原则 编写性能良好的软件固然重要,但专业的开发者还应注意其他许多问题。好多的软件能完成任务,但以一致风格写成的卓越的软件则明晰、健壮、可维护性、可支持且可扩展。1 保持原有风格修改别人编写的软件时,应遵循原始代码的风格。修改时不要引入新风格,也不要

    3、仅为了吻合新风格而重写就旧软件。在一个源代码文件中存在多种不同风格会使代码更难读懂。为修改风格而重写代码将产生本不可避免的缺陷,增加软件成本。2 坚持最小惊奇原则最小惊奇原则建议你避免做出可能让其他软件开发人员吃惊的事情。这意味着,软件所展示的互动及行为方式必须可预料并保持一致。如果不是这样,文档就必须清晰地指出所有非通常的用法或行为。为了降低其他人在使用你的软件时遭遇惊奇的可能性,你应当在软件的设计、实现、打包和文档中强调以下原则:简单性 用简单的类和简单的方法满足用户期望。清晰性 确保么个类、接口、方法、变量和对象都有清晰地目的。 阐明何时、何处、如何使用它们。完整性 提供任一可能的用户期

    4、望找到和使用的最小功能。创建完成整的文档,描述所有特性和功能。一致性 相似实体的外观和行为应该相同,不同实体的外观和行为应该不同。应该尽可能制定并遵守相关标准。健壮性 对软件中可能出现的错误和异常做出预测,并将解决方法记入文档。不要隐藏错误,也不要等着用户去发现错误。3 第一次就作对对所有代码实施这条规则,不仅限于正式产品的代码。原型或实验性代码多半会用到最终产品中,所以你改洞悉先机。即便代码永远不会采用到正式产品中,别人也可能读到它。任何阅读你的代码的人,都会从你的专业性和贯彻这些规则的先见之明中获益匪浅。4 记录所有非规范行为没有十全十美、普适一切的标准。有时你会有偏离某条既定标准的需要。

    5、无人如何也要努力保持清晰和一致。在决定忽略某条规则之前,你应该先确信自己了解该条规则存在之理由,以及不采用该规则会引起的后果。如果你决定要违反某条规则,记下这么做的原因。这是第一守则。5 考虑采用代码检查工具强制遵循编码标准可采用源代码分析工具检查嗲吗是否符合编号标准和最佳实践。例如,FxCop是一种流行的.NET代码分析工具,其利用反射技术、MSIL解析和调用图分析来检查代码是否符合.NET框架设计的指导原则。FxCop可扩展,所以能加入你所在组织的特殊编码标准。第2章 格式2.1 空白 6. 使用空白空白时页面上没有可见字符的区域。只有少量空白的代码很难阅读和理解,故应多用空白来凸显方法、

    6、注释、代码块和表达式。使用单个空格分隔符控制流程语句中的关键字、圆括号以及括号:for() /.while()/ do /.while()switch() /if(/else if() / else /try /catch(Exception) /.finally /在二元操作符左右分别放一个空格,“.”操作符除外:double length=Math.Sqrt(x * x+y * y);double xNorm=(length 0.0) ? (x / length) : x;double currentTemperature=engineBlock.Temperatuer;在逗号和分号后面放

    7、一个空格:Vector normalizedVector=NormalizeVector(x, y, z);for(int i=0; i100; i+) /在方法声明中,括号内的参数列表的各项间加上空格:Vector NormalizeVector(double x, double y, double z) /使用空行分隔方法体中的逻辑块:public void HandleMessage(Message message)string content=message.ReadContent();switch(message.ErrorLevel) case ErrorLevel.Warning

    8、: /进行一些操作 break;case ErrorLevel.Severe: /进行一些操作 break;default: /进行一些操作 break; 使用空行隔开类中每个方法定义: public void SendEmail() / public void SendFax() /7.使用缩进的语句块改进代码可读性的方法之一是将多条独立的语句组合为语句块,统一缩进,使之与其他代码区分开。如果使用集成开发环境(如Visual Stodio)生成代码应确认组内每个成员均采用相同的缩进规则。如果手工编写代码,使用两个空格的缩进方式,在确保可读性的同时也不至于浪费过多空间:void PesterC

    9、ustomer(Customer customer) customer.SendLetter(); if(customer.HasEmailAddress() customer.SendEmail(); if(customer.IsForgetful() Customer.ScheduleReminderEmail(); if(customer.HasFaxNumber() Customer.SendFox();如果你负责管理开发团队,别让团队中的每个开发人员自行选择缩进量和缩进风格,应设定标准缩进策略,确保所有人以此行事。8.缩进标记后的语句除了缩进语句块内容外,还应缩进标记后的语句,让标记

    10、更易于阅读:void DoSomethingUseful(int arg) loop: for(int index=0;index=arg; index+) switch(index) case 0: / Break;/退出switch语句 defualt: / Break;/退出switch语句 9.不用“硬”制表符许多开发人员使用制表符(Tab)做缩进和代码对其,而没有意识到在不同环境中制表符会有不同解释。在最初使用的编辑环境中看似正常的格式,迁移到以不同方式解释制表符的其他环境,或者由其他开发人员查看时,可能会显得毫无格式或极不可读。要避免这种情况发生必须总是使用空格符,而不用制表符缩进

    11、和对齐源代码。可以用空格键代替制表符键,也可以配置编辑器,使之自动用空格符代替制表符。有些编辑器也具有“智能”缩进功能。如果编辑器使用制表符做自动缩进,则应该禁止智能缩进功能。10.切分长语句为多行语句基于视窗的现代编辑器能够通过水平滚动条轻易处理长语句,但如果能在一屏内显示而不用滚动的话,开发人员阅读代码就会更有效率、更不不易出错。另外,在超出最长打印行长度时,打印机会自动截断、换行或在另一张纸上打印代码。要保证代码在打印出来后任可阅读,应将代码行限制在打印环境支持的最大长度内,通常会是80132个字符。首先,如果可能超出允许的最大长度,则不要把多个语句放在一行以内。如果两个表达式语句放在同

    12、一行:double x=random.NextDouble();double y=random.NextDouble(); /太长!就应该分成两行:double x=random.NextDouble();double y=random.NextDouble();其次,如果行中包括复杂的表达式,导致一行过长:Double distance=Math.Sqrt(Math.Pow(x1-x2),2.0) +Math.Pow(y1-y2),2.0)+Math.Pow(z1-z2),2.0);/太长则将表达式清晰地分割为数个表达式。在单独一个代码行中使用临时变量保存每个字表达式的运算结果:double

    13、 dx=Math.Pow(x1-x2),2.0);double dy=Math.Pow(y1-y2),2.0);double dz=Maht.Pow(z1-z2),2.0);double distance=Math.Sqrt(dx+dy-dz);最后,如果长代码不能按照上述指导原则缩短,则采取以下规则切分、换行、和缩进代码。第一步如果行中最顶层表达式包含一个多个逗号:double value=Foo(Math.Pow(x,2.0),Math.Pow(y,2.0),Math.Pow(z,2.0);则在每个逗号后换行。将每个逗号后的表达式与该逗号前面表达式的第一个字符对齐:double value

    14、=Foo(Math.Pow(x,2.0), Math.Pow(y,2.0), Math.Pow(z,2.0);第二步 如果行中最顶层表达式不包含逗号: return person1.Name=person2.Name & person1.Address=person2.Addess & person1.Phone=person2.Phone; /太长则在最低优先级的操作符之前换行;后者,如果有多个优先级相同的操作符,像这样对齐: return person1.Name=person2.Name & person1.Address=person2.Address & person1.Phone=

    15、person2.Phone ;第三步按需要重复进行第一步和第二步,直至从原始表达式语句转换而来的每一行代码都少于允许的最大长度。2.2 花括号1.1 按同一风格放置花括号放置语句块左花括号的方式有两种,可以把左花括号放在控制语句块入口代码行的行尾,也可以放在下一行,使之和上行首字符对齐。应当始终把右花括号单放一行,并使之与包含左花括号那行对齐:void SameLine()void NextLine()虽然许多程序员混用这两种方式,但你的组织应该二中选一,并且坚持使用。本书适用第二种放置花括号的方式,下例展示了如果在不同c#定义和控制结构中应用此规则。类声明namespace MyOrgani

    16、zation public class Outer public Outer()/ public class Inner public Inner() /方法声明 public void Display() /for循环语句 for(int i=0;i=j; i+) /if和else 语句if (j0) /else / try块和catch块 try /catch()/ finally / switch语句 switch (value) case 0: / break; default: / break; while语句 while( +k =j) / do-while语句 do /while

    17、(+k=0) If(x0) Positive();else /Oops!匹配最近的if! NegativeX();下面的方式看似累赘,但逻辑流程却清晰易于维护:if(x=0) if(x0) PositiveX();else /什么都不做.else NegativeX(); /这才是我们想要的!使用语句块更便于往既有流程控制结构中添加新语句:for( int i=n;i=0;i+) for(int j=0;j=n;j-) Foo(i,j); Goo(i,j);/为何i和j超出了作用域?for( int i=n;i=0;i+) for(int j=0;j=n;j-) Foo(i,j); Goo(i

    18、,j);/这才是我们想要的!2.3 类的组织13.在源文件开始分组放置using 指示符如果源文件中使用了using 指示符,在文件开始分组放置这些指示符。先依字母顺序列出系统定义的命名空间,后面加上一个空行;然后依字母顺序列出第三方命名空间,后面加上一个空行;最后再依字母顺序列出用户定义的命名空间:using System;using System.IO;using System.Xml;using CenterSpace.Nmath.Core;using CenterSpace.Nmath.Staus;using MyOrganization.BusinessUtilities;14.将源

    19、代码组织到不同区域中15.依可访问性排列类元素16.单独声明每个变量和特性第三章 命名 一致地使用一种命名约定,能给那些阅读代码的人留下极有价值的直观线索。本章给出一些命名约定,可以让代码更为可读。3.1一般原则 17.使用有意义的名称 使用对读代码的人始终有意义的名称。使用有意义的单词创建名称。使用可被未来读者所理解的一致的语言。避免使用单个字符或太一般性的名称,那样对定义所命名的实体无所助益。 在下面的代码中,变量a和常量65的目的不清晰: if(a65) / a的属性是什么? /这里j正在计算什么?else y=0;改用有意义的名称后,下面这段代码更易于理解:if(ageRetireme

    20、ntAge) yearsToRetirement=RetirementAge age;Else yearsToRetirement=0;本条规则的唯一例外是,当足以从上下文中判断出其目的时,可用简约方式命名临时变量,例如在循环内部用作计数器或索引的变散(讲规则47):for(int i=0;i XmlString LoadXMLDocument() LoadXmlDocument()条件编译指示符的名称中的缩略词不适用这一规则,因为这类名称只能用大写字母写出(见规则25): conditional(GUI) 本规则不适用于在变里或参数名开始处的缩略词,因为这些名称总以小写字母开头: Docum

    21、ent xmlDocument ; 3.3预处理器符号 25.用大写字母和下划线表示预处理器符号 用大写字母表示预处理器符号,使之与用C#语法定义的符号区分开来: #define EVAL_VERSION 26.给预处理器名称添加唯一前缀 给预处理器名称添加前缀,避免与用户定义或第三方软件中的预处理器名称相冲突。建议使用你所在组织名称的缩略形式,可自行选择是否加上产品名称的缩略形式,例如ACME_DB_ USER。3.4类型和常量 27使用Pascal写法给命名空间、类、结构、属性、枚举、常最及函数命名每个单词的首字母大写,区分名称中每个独立的单词。第一个字母大写提供了一种使其与参数或变量相区

    22、分的机制见规则43 ) 。public enum BackgroundColor None= 0 Red=1, Green=2. Bule = 3;const int FixedWidth=10;class BankAccount /Public double CalculatePercentitle(double percent) /28.使用名词命名复合类型应该用名词来命名定义了对象或其他事物的类、结构或属性:public class Customer public string Name get Return name_;29用复数形式书写集合名称对象集合的名称应该有能反映集合中对象的类

    23、型的复数形式,这样阅读你的代码的人才能区分表示多个值的变量和表示单个值的变量:List shapes =Shape shape=shapesindex;30给抽象基类型加上“Base“后缀清晰定义的基类更易于管理。 Public abstract class AccountBasePublic class PersonalAccount :AccountBasePublic class BusinessAccount :AccountBase31.给实现一种设计模式的类添加模式名称 例如,名为MessageFactory的类对熟悉设计模式的开发人员来说有某种特定含义。32.使用单个大写字母命名

    24、泛型参数 public static List Unquify(List) /3.5 枚举33.用单数形式为枚举命名枚举类型通常用于相互独立的元素组成的列表,应使用单数形式:pubilc enum SortOrder34.用复数形式给位域命名位域通常用于可以组合形式出现的元素的列表,应使用复数形式:Flagspublic enum PrintSettings Draft=0, Duplex=1. Color=2;参见规则136。3.6 接口 35.用大写字母“|”作为接口名称的前缀 如果真的某个类是继承自父类还是实现一个接口,这就做会比较方便。 public class Worker:Iworkable36.使用名词或形容词给接口命名接口声明了对象提供的服务,或描述了对象的能力。使用


    注意事项

    本文(《C#编程风格英汉对照》.docx)为本站会员主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2022 冰点文档网站版权所有

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

    收起
    展开