zoukankan      html  css  js  c++  java
  • 代码规范V1.1

    作业要求:https://edu.cnblogs.com/campus/nenu/SWE2017FALL/homework/993
    代码规范文档/代码规范执行记录:https://coding.net/u/Dawnfox/p/f4/git/tree/master/doc
    结对同学:袁玥
    我和队友于2017/10/3确定四则运算作业的代码规范主要由三方面构成:格式、命名和注释。

    一、格式

        A.  代码行数
            (1)	代码文件不超过500行
            (2)	函数的行数不超过50行
        B.  换行
            (1)	函数与函数之间空一行
            (2)	函数内部变量声明与函数内部逻辑代码之间空一行
            (3)	函数内部不同逻辑代码之间空一行
        C.  大括号
            “{”和“}”必须单独在一行上,且上下对齐。
        D.  缩进
            代码缩进一致使用Tab实现,规定Tab键宽度为4个字符,不建议使用空格进行缩进。
        E.  空格
            (1)	函数参数列表中不同参数之间应该用一个空格分开,即逗号后面应跟一个空格。如:
                void updateData(int source, int target)
            (2)	for循环中表达式之间应该用一个空格分开,即分号后面应跟一个空格。如:
                for(exp1; exp2; exp3)
            (3)操作符与操作数之间应该用一个空格分开,一元操作符(例如自增“++”,自减“--”等)与操作符不作此限定。如:
                a += b + c;
                ++a;
    

    二、命名

    变量主要分为类的公有和私有变量,方法的参数变量与内部使用的临时变量。
        A.  变量的名称由多个名词单词或一个名词单词组成时,第一个单词首字母小写,其他单词首字母均大写。如makeRule。
        B.  对于const常量,所有单词均大写,且单词之间由下划线”_”连接,如APP_NAME。
        C.  函数名称的第一个单词首字母为大写的动词。如IsDir(是否为目录)。
        D.  变量名和函数名能够表达它所具有的实际含义。如函数名IsDir表示输入路径是否为目录,res表示是判断的结果。
    

        E.  尽量避免单词缩写,即便它可能是众所周知的。
    

    三、注释

        A.  只采用“//”作为注释符
        B.  注释的位置
            (1)	注释在被注释函数定义的顶部
    

            (2)	注释在函数内部变量声明的右边
    

            (3)	注释在函数内部逻辑代码的顶部
    

        C. 注释的内容
            (1)	代码的功能
    

            (2)	对读者阅读代码时可能产生的疑问做解释,比如,该段代码使用了堆栈,为什么需要堆栈而并非数组,在此处代码部分给出注释
    

    四、代码执行记录

    规范项 情况记录 违反次数 待修订 已修订 备注0(是否对条款进行增强) 备注1(是否对条款进行消弱) 备注2(是否对条款进行废除)
    格式.A.(1) 代码文件不超过500行 1 1 0 0 1 0
    格式.A.(2) 函数的行数不超过50行 3 3 0 0 0 1
    格式.B.(1) 函数与函数之间空一行 0 0 0 0 0 0
    格式.B.(2) 函数内部变量声明与函数内部逻辑代码之间空一行 0 0 0 0 0 0
    格式.B.(3) 函数内部不同逻辑代码之间空一行 2 0 2 0 0 0
    格式.C “{”和“}”必须单独在一行上,且上下对齐 11 0 11 0 0 0
    格式.D 代码缩进一致使用Tab实现,规定Tab键宽度为4个字符,不建议使用空格进行缩进 0 0 0 0 0 0
    格式.E.(1) 函数参数列表中不同参数之间应该用一个空格分开,即逗号后面应跟一个空格 1 0 1 0 0 0
    格式.E.(2) for循环中表达式之间应该用一个空格分开,即分号后面应跟一个空格 0 0 0 0 0 0
    格式.E.(3) 操作符与操作数之间应该用一个空格分开,一元操作符(例如自增“++”,自减“--”等)与操作符不作此限定 0 0 0 0 0 0
    命名.A 变量的名称由多个名词单词或一个名词单词组成时,第一个单词首字母小写,其他单词首字母均大写。如makeRule 0 0 0 0 0 0
    命名.B 对于const常量,所有单词均大写,且单词之间由下划线”_”连接,如APP_NAME 0 0 0 0 0 0
    命名.C 函数名称的第一个单词首字母为大写的动词。如IsDir(是否为目录) 0 0 0 0 0 0
    命名.D 变量名和函数名能够表达它所具有的实际含义。如函数名IsDir表示输入路径是否为目录,res表示是判断的结果 0 0 0 0 0 0
    命名.E 尽量避免单词缩写,即便它可能是众所周知的 3 0 3 0 0 0
    注释.A 只采用“//”作为注释符 0 0 0 0 0 0
    注释.B.(1) 注释在被注释函数定义的顶部 0 0 0 0 0 0
    注释.B.(2) 注释在函数内部变量声明的右边 0 0 0 0 0 0
    注释.B.(3) 注释在函数内部逻辑代码的顶部 0 0 0 0 0 0
    注释.C.(1) 代码的功能 2 0 2 0 0 0
    注释.C.(2) 对读者阅读代码时可能产生的疑问做解释,比如,该段代码使用了堆栈,为什么需要堆栈而并非数组,在此处代码部分给出注释 0 0 0 0 0 0
    修订时间 版本
    2017/10/11 0:00:00 V1.0
  • 相关阅读:
    byvoid
    soa文章摘抄
    也谈设计模式,架构,框架和类库的区别
    GoF设计模式三作者15年后再谈模式
    陈梓涵:我们为什么要学习设计模式
    陈梓涵:关于编程的胡扯
    hung task机制
    iscsi target tgt架构
    iscsi target IET架构
    ISCSI工作流程target和initiator
  • 原文地址:https://www.cnblogs.com/ranh941/p/7629151.html
Copyright © 2011-2022 走看看