zoukankan      html  css  js  c++  java
  • C#程序编写规范

    写程序的过程应该是一种艺术创作过程,我们写出来的程序体现了我们的技术水平和个人修养,

    也就是说作为程序员,自己写的程序就是自己的脸面。让自己有脸有面的第一步就是要遵循程

    序编码规范,这里总结一些程序编写规范。

    1. 命名规范

      表达清晰是命名规范的核心,常见的命名分格有:

      1.1 Pascal风格

        包含一到多个单词,每一个单词第一个字母大写,其余字母小写。例如:HelloWorld

      1.2 Camel风格

        包含一个到多个单词,第一个单词首字母小写,其余单词首字母大写。例如:name, userPhone

      除了参数与变量之外,所有命名空间,类,函数,接口,属性等名称的命名,使用Pascal风格

      参数与变量的命名使用Camel风格

    2.通用命名约定

      约定的是如何选择最适当的名称

      2.1 命名方式

        2.1.1 选择容易读的英文名称,可读性比详细描述重要。例如:ScreenX 比 ScreenHorizontally

           更具有可读性

        2.1.2 除了下画线之外,不要使用连字符或者其他非字母数字字符

        2.1.3 避免使用与常用编程语言的关键字冲突的标识符

        2.1.4 变量和方法参数使用Camel风格

        2.1.5 不要使用成员变量属性作为成员变量的前缀(其他变量命名也一样)。例如:不要像 

        Users m_users; 这样定义成员变量,应该是 Users userModel;

      2.2 字母缩写

        通常不要使用缩写,除非这种缩写已被广泛接受,或者团队当中大家都认可一种缩写。

      2.3 namespace命名

        命名空间的命名采用Pascal风格,取名的一般规则为Zhangsan.ProjectName(人名.项目名称),

        需要用复数时,使用复数;例如使用System.Collections而不是System.Collection

        需要缩写时,不需要加复数;例如使用System.IO而不是System.IOs

      2.4 类,结构和接口命名

        2.4.1 按照Pascal大小写格式,使用名词或者名词短语为类,接口和值命名

        2.4.2 接口命名以字母I为前缀,例如,Icomponent

        2.4.3 派生类的末尾使用基类的名称。例如从Stream继承的Framework类型以Stream结尾

    3 代码编码规范

      3.1 适当使用空行,来增加代码的可读性

        3.1.1 应该添加一行空行的情况:

            1.方法之间

            2.局部变量和它后面的语气之间

            3.方法内的功能逻辑部分之间

        3.1.2 应该添加两行空行的情况:

            1.同一文件的不同部分之间

            2.在类,接口及彼此之间

      3.2 避免使用大文件。如果一个文件里的代码超过300~400行,必须考虑将代码分开到不同的类中

      3.3 避免一个方法代码行数超过25行。如果超过,应该考虑将其分解成不同的方法。

      3.4方法的命名。一般将其命名为动宾短语。一个方法只完成一个任务。不要把多个任务组合到一个方法中,

        即使那些任务非常小。

      3.5 避免使用很多成员变量,声明局部变量,并传递给方法。在方法内部可以定义变量,被称为

        局部变量;在类内部可以定义变量,被称为成员变量

      3.6 不要在方法间共享成员变量,如果在几个方法间共享一个成员变量,那就很难知道哪个方法什

        么时候修改它的值。

      3.7 布尔型变量或者方法一般可以用iscanhas或者should做前缀。如,isFinished, canWork等

      3.8 在类的顶部声明所有的成员变量,静态变量声明在最前面

    4. 控件命名

      c#控件命名往往采用首字母小写,其后的单词首字母大写的方式进行命名,而且往往以控件缩写作为前缀,

      后面跟名字。举例:lblName(存放Name的lable), btnEdit(编辑button)

      常见的控件缩写如下:

     5. 注释

      5.1 三斜杠(///)方式

        一般用于类或者方法的前面

      5.2 双斜杠(//)方式

        一般是对临时变量,属性等的注释,当然也可以用在类或者方法前面,反正都是注释

      5.3 块注释(/*XXXX*/)方式

        一般用于一段连续的注释代码块

    6. 参考文章

      1.《c#从入门到精通(第二版)》 人民邮电出版社

      2. https://www.jianshu.com/p/dc26cb8ffcb9

      3. https://blog.csdn.net/antchen88/article/details/56282160

      4. http://blog.jobbole.com/86170/

     

        

  • 相关阅读:
    《Machine Learning in Action》—— 白话贝叶斯,“恰瓜群众”应该恰好瓜还是恰坏瓜
    《Machine Learning in Action》—— 女同学问Taoye,KNN应该怎么玩才能通关
    《Machine Learning in Action》—— Taoye给你讲讲决策树到底是支什么“鬼”
    深度学习炼丹术 —— Taoye不讲码德,又水文了,居然写感知器这么简单的内容
    《Machine Learning in Action》—— 浅谈线性回归的那些事
    《Machine Learning in Action》—— 懂的都懂,不懂的也能懂。非线性支持向量机
    《Machine Learning in Action》—— hao朋友,快来玩啊,决策树呦
    《Machine Learning in Action》—— 剖析支持向量机,优化SMO
    《Machine Learning in Action》—— 剖析支持向量机,单手狂撕线性SVM
    JVM 字节码指令
  • 原文地址:https://www.cnblogs.com/vijing/p/10417531.html
Copyright © 2011-2022 走看看