`

也谈代码规范

阅读更多
        看了湘南和也写的程序编码应保持良好的规范(C#) ,我也忍不住要说上两句。这两年来,做了几个项目,技术没有长进多少,对于规范倒是有了不少的体会。
        湘南和也提到的四点规范是比较重要的,我再补充几点。
        1、常量的命名:常量使用大写字母,各个单词之间通过下划线的划分。譬如BASE_SALARY;
        2、变量的命名:变量的首字母小写,之后的单词的首字母大写。譬如baseSalaryLow;
        3、常量和变量的命名:两者都必须注意一个问题,就是单词的准确性。在一篇不错的代码中出现了单词拼写的错误,会让人感觉好像一锅好汤掉进了几颗老鼠屎;
        4、代码的缩进:缩进要保持一致。很多规范会建议利用tab作为缩进的占位符号。我是不建议这样做,因为不同的文本编辑器对于tab的显示都不一样,如果有些地方使用了tab,有些地方使用了相应的空格,那么就会出现在这个编辑器中看着还整整齐齐的,换到另外一个编辑器就会乱七八糟的情况。因此,我更倾向于使用空格来做为缩进的占位符号;
        5、空格的使用:空格除了作为缩进的占位符之外,还在很多地方也是必需的。譬如,在条件语句和循环语句中,关键字之后就应该使用空格。在这点上,湘南和也给出的代码并没有做到,如果这样写会更好:

if (hidbrand == ","{
    Body.txtHidBrand.Text 
= "";
}
 else {
    Body.txtHidBrand.Text 
= hidbrand;
}

        
如果大括号与条件语句的括号是同一行的话,大括号之前也要使用括号。同时,除了湘南和也提到的赋值语句中的等号前后要使用空格之外,各种运算符的前后也应该使用空格,除了自增(++)、自减(--)和逻辑非(!)运算符之外。例如:

if (i != arrHidBrand.Count - 1)
    hidbrand 
+= ",";
       
        6、换行的使用:不管是C++、Java还是C#,你都可以将所有代码写在同一行。但是如果你真的这么做了,那么阅读你的代码简直就是噩梦。因此定好一行代码不超过多少列也是相当必要的。这可以让阅读代码者看得更舒服,因为他不需要来回拖动横向滚动条了;
        7、变量的作用域:定义变量的时候要考虑变量的作用域。譬如,在循环语句中,通常都会使用一个变量作为循环的标志,这个变量应该定义为局部变量,仅循环的区域可见。譬如:

for (int i = 0; i < list.length; i++{
    
}

i的定义就应该出现在for循环的括号中,而非for循环之外;
        8、尽量避免使用Magic Number和Magic String:这一点在我的上一篇Post已经作了详细讨论;
        9、注释的使用:代码都应该有一个注释头,包含一些版权声明,作者,修改历史记录等信息。在方法之前都应该使用多行注释来说明方法的功能和参数的含义。单行注释过长的时候,要使用多行注释。
        
        就想到这么多了,如果各位朋友有兴趣,还请继续补充,不吝赐教。最后,我还想说的一点就是,虽然在实际的开发当中都会有专门的工具来对代码进行format,也会有专门的工具来检查代码是否符合规范,但是我们还是应该将这些规范牢记在心,成为你写代码的习惯,毕竟工具不是万能的,而且工具也有失效的时候。
分享到:
评论

相关推荐

    细谈C语言编程规范.pdf

     代码是用来给人看的,不是给机器看的;  成功的代码与优秀的代码是两码事,写成功的代码不一定优秀,但优秀的代码...本文核心内容,围绕嵌入式C语言编程规范,将依照文件管理、软件架构、驱动设计三个层面进行陈述

    谈C51的编程规范.doc

    遵循良好的编程规范,不仅可以提升个人技术水平,也有利于团队间的沟通和代码共享。 1. 注释规范: - 使用中文注释,便于理解。 - 文件或模块注释应包含公司名称、版权信息、作者、修改时间、模块功能和背景介绍...

    浅谈JavaScript编程语言的编码规范

    虽然它给开发者带来了极大的自由度,但同时也意味着代码中的错误和疏忽将更容易产生。在不规范的编码实践中,后续维护人员会遭遇难以预料的问题,这将严重影响项目的长期发展和产品的口碑。 在编码规范的各个方面,...

    c++代码风格谈,教你代码美观又标准

    本文将基于提供的内容概述几个关键的C++代码风格规范。 #### 1. 文件头部注释 在C++项目中,每个`.h`和`.cpp`文件的最开始都应该包含一段统一格式的说明,这有助于快速了解文件的基本信息。这一部分应该包括以下四...

    试谈软件产品发布工作规范标准.doc

    《试谈软件产品发布工作规范标准》 软件产品的发布是软件开发过程中的关键环节,它不仅关乎产品质量,还直接影响用户体验和公司声誉。本文将详细探讨软件产品发布的工作规范标准,旨在为项目组和技术委员会提供一套...

    浅谈JavaScript编程语言的编码规范.docx

    JavaScript编码规范是保证代码质量和可读性的重要指南,尤其对于广泛应用于Web开发的JavaScript语言,良好的编码习惯至关重要。本文将探讨几个关键的编码规范方面,包括文件引用、代码排版、命名规则、变量声明、...

    浅谈JavaScript编程语言的编码规范.pdf

    JavaScript 编码规范是保证代码质量和可维护性的关键要素,尤其在JavaScript这种语法灵活的编程语言中,遵循一定的规范显得尤为重要。以下是一些JavaScript编码规范的建议和详细解释: 1. **JavaScript 文件引用**...

    浅谈规范化信息系统运维体系建设.docx

    - **运维目标**:保障广域网络的高速畅通和信息系统的稳定运行,既满足内部行政办公需求,也能够对外提供高质量的服务。 #### 二、湖北省综合征管软件运维体系现状 - **系统应用**:包括综合征管软件、办公自动化...

    GUI规范漫谈

    )这一段又在接触规范相关的东西,也看了不少同行朋友们的借鉴,,为了对得住大家对我的帮助正好也赶上今天半夜醒来睡不着了,我就来好好胡扯一番(只说方式和方法不谈具体细节,也希望为好友备课起到借鉴作用):记得...

    浅谈设计模式在Android代码重构中的应用.pdf

    【摘要】本文主要探讨了设计模式在Android应用开发中的重要...综上所述,设计模式在Android代码重构中的应用是提升软件质量和开发效率的有效途径,同时也需要开发者不断提升自身的信息素养,以适应快速变化的技术环境。

    VC++中使用合理使用注释和统一代码缩进共1页.pdf.z

    接下来,我们谈一谈代码缩进。代码缩进是代码格式化的一部分,有助于增强代码的视觉层次感,使得代码结构更加清晰。在VC++中,通常遵循一定的缩进规则: 1. **一致性**:所有代码块的缩进应保持一致,通常使用4个...

    浅谈嵌入式软件的规范设计要点--以C语言的函数设计为例.pdf

    这样做不仅可以提高代码可读性,也有助于模块化设计。如示例中的`max()`函数,其功能清晰明了,易于理解和复用。 4. **适度归并小功能**:尽管鼓励将小功能封装成独立函数,但如果一个函数被其他函数调用的频率极低...

    浅谈Android编码规范及命名规范

    在Android应用开发中,遵循一定的编码规范和命名规范至关重要,这不仅有助于提高代码的可读性和可维护性,还能确保团队协作时的一致性。以下是对Android编码规范和命名规范的详细阐述: **编码规范** 1. **字符串...

    Eric Meyer谈CSS(卷2)下载 pdf

    10. **最佳实践**:Meyer总结了他在多年实践中积累的最佳实践,如注释规范、命名约定、避免使用!important等,这些都能帮助开发者写出更高质量的CSS代码。 通过阅读《Eric Meyer谈CSS(卷2)》,读者不仅可以掌握...

    代码编程中的编程范式

    #### 二、从C语言谈起 C语言作为一门历史悠久的编程语言,在其发展历程中积累了大量的编程经验和教训。其中,对于泛型编程的支持一直是C语言的一个弱点。例如,C语言中的`swap`函数只能针对特定类型的数据进行交换...

    【老生谈算法】Matlab实现HoG算法代码.doc

    在上述的`hogcalculator`函数中,需要注意的是,代码可能存在错误或不完善的地方,因为作者自述这是一个个人兴趣的实现,并未经过优化。在实际应用中,可能会使用更高效、更成熟的库,比如OpenCV,其HoG实现速度更快...

    C语言程序设计学习指南.docx

    养成良好的代码规范,对于代码日后的维护,团队的合作等都十分有益,因此养成良好的代码规范非常重要。 在学习C语言时,学生应注意以下几点: 1. 敏而好学,不耻下问。在学生尤其是大一学生刚开始与教师接触的时候...

    【JavaScript源代码】浅谈Angular的12个经典问题.docx

    开发者应遵循安全编码规范,使用Angular提供的安全API,如DomSanitizer来处理用户输入,防止注入攻击。 【性能优化】优化Angular 2应用通常涉及减少HTTP请求、懒加载模块、利用ChangeDetectionStrategy、使用AOT...

    powerbuilder编程经验谈.

    - **代码规范**:建立统一的编码风格和注释规范,提高代码可读性。 8. **部署与发布** - **发布设置**:调整PB的发布选项,优化生成的应用程序大小和启动速度。 - **安装制作**:通过第三方工具如InstallShield...

Global site tag (gtag.js) - Google Analytics