软件安全-安全编码.ppt

  1. 1、本文档共43页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
软件安全-安全编码.ppt

5.2.1 编码规范 编码规范的必要性: 有助于程序的维护,降低软件生命周期成本,符合项目管理的规律; 使团队中相关人员的流动对项目的影响尽可能小,有利于项目的控制与管理; 提高程序的可读性,有利于相关设计人员交流,提高软件质量; 容易发现代码的问题,调试时比较容易; 体现公司形象。 命名方法 Pascal:每个单词首字母大写。 Camel:第一个单词首字母小写,余下的单词首字母大写。 缩写:两个字母的缩写,Pascal命名法两个字母都大写,Camel命名法,如果两个缩写字母是首单词,两个字母都小写,否则按照常规来处理。两个以上字母的缩写都按照常规处理。 文件命名与组织 文件的命名一般采用Pascal命名规则,无特殊情况,文件的扩展名小写。 文件的扩展名使用统一而且通用的扩展名,如.cs、.java、.cpp 尽量避免超过2000行的文件,尽量避免一行的长度超过80个字符。 缩进、空格与换行 空格、空行不做严格的固定,以使代码清晰为基本原则。空行不影响程序的运行,但可以使代码看起来清晰,增加可读性,因此可以适当的多用。 代码的缩进建议使用tab键进行控制,tab键的大小设置为4个空格。每个层次都要进行缩进。 如: if (isOverFlow) { return false; } 缩进、空格与换行 换行,掌握的原则是不要使一行代码特别的长。另外,换行的原则是,在逗号后,操作符前换行,换行与首行要保持缩进。 if,while,do,try-catch-finally等语句后必须有{},即使里面只有一条语句或为空。 命名规则 – 标识符的名字应当直观且可以拼读,可望文知义,不必进行 “解码”。 例如:CurrentValue与NowValue 。 – 变量的名字应当使用“名词”或“形容词+名词”的格式命名。 例如: float value; float oldValue; – 全局函数的名字应当使用“动词”或者“动词+名词” (动宾词组)。类的成员函数应当只使用“动词”,被省略掉的名词就 对象本身。 例如: DrawBox ( ); // 全局函数 box.Draw ( ); // 类的成员函数 – 静态变量加前缀s_ (表示static) 例如:static int s_initValue; – 如果不得已使用全局变量,全局变量加前缀g_ (表示global) 例如:int g_howManyPeople; – 类的成员变量加m(表示member),从而避免数据成员与成员函数的参数重名。 例如:void Object::SetValue( int width, int height ) { m_width = width; m_height = height; } 声明 每行只定义一个声明,多个声明要分多行来定义。如: int intAge,intWeight; //不推荐 应使用如下的定义形式: int intAge; int intWeight; 声明的位置:变量要在块的开始的地方集中进行声明,不要何时用到何时临时定义。 语句 一行一条语句 注释 要养成良好的代码注释习惯,通常,注释要占实际代码总行数的1/3,同时,要在编写代码前或编写代码的同时进行代码的注释,不要事后补写注释。 注释分为多行注释和单行注释,我们的原则是:在类和方法的前面,要写多行注释,在定义类的全局变量/常量,以及方法的内部,使用单行注释。注释的前面与代码之间要有空行 即使是单行注释,我们鼓励都要单独一行,不鼓励在语句的后面使用注释,当然,在变量定义的后面使用注释也是允许的,但不建议这么做。 另外,在编写注释的时候,建议使用编程语言自己的注释风格。 注释 特别注意,如果是在已经发行版本的基础上添加、修改、删除代码,则需要将原先的代码注释掉,而不是直接删除掉,然后添加自己的代码。如: 添加新代码的注释: //add by [姓名] yyyyMMdd ? xxx //? add by [姓名] yyyyMMdd 修改代码的注释: //update by [姓名] yyyyMMdd ? // xxx

文档评论(0)

tangtianbao1 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档