编码规范


    DELPHI编码规范
    版:1000
    编写:邱建伟
    文件历史表



    作者
    说明
    完成日期
    草稿
    Jianweiqiu
    DELPHI编码规范
    200479












    前言

    该规范参考网资料结合验起草程序设计编码规范草稿验限难免许足方请指正

    目录
    1 概述 5
    11 目 5
    12 范围 5
    13 术语 5
    14 容 5
    2 总体说明 6
    3 外部文件组织 7
    31 文件夹文件命名 7
    32 文件理 7
    33 文件夹文件分布 7
    34 文件修改踪 7
    4 般代码书写规范 8
    41 源代码格式 8
    411 缩进 8
    412 边距 8
    42 Object Pascal语句书写规范法 8
    421 beginend 语句 8
    422 括号 8
    423 保留字关键字 8
    424 变量 8
    425 类型 9
    426 语句 9
    427 函数(例程) 9
    428 结构化异常处理 10
    429 语句构造 10
    5 正确性性 11
    51 正确性 11
    52 性 11
    521 容错处理 11
    522 调试测试 11
    523 版封存修改 11
    6 易理解性 12
    61 命名规范 12
    62 注解规范 12
    7 效率性 13
    71 程序运行时间 13
    8 移植性重性 14
    9 附录 15

    1 概述
    11 目
    现代软件合作结晶程序设计风格否统直接关系软件项目读性维护性合作难易程度软件编程程中风格统利整项目利开展程序员间交流果程序员惯风格编写程序种异程序风格势必降低程序读性软件测试交流重软件维护产生极利影响
    文档Delphi开发员提供源代码书写标准程序文件命名标准编程时致格式遵循样编程员编写代码够理解
    12 范围
    文档适程序设计编码程规范规定编码规范性求编程员具体语言时应时遵循具体语言编码标准
    13 术语
    14 容
    2 总体说明
    l 贯彻软件设计中模块化信息隐藏等原努力提高程序正确性理解性移植性重性程序运行效率性
    l 结合结构化程序设计关方法原采面象技术方法

    3 外部文件组织
    31 文件夹文件命名
    l 根系统设计规定结构建立相应文件夹根需建立子文件夹
    l 文件夹文件名称应够表达意义必须英文命名
    l 确保台兼容性文件夹文件名称必须全部写字母
    l 单元文件模块名字项目中单元名字相
    32 文件理
    l 工程文件集中应该文件集根文件夹中设置readmetxt文件模块文件进行说明
    33 文件夹文件分布
    见附件
    4 般代码书写规范
    41 源代码格式
    411 缩进
    l 缩进级间两空格
    l 源代码中放置制表符
    制表符宽度着设置代码理实程序(印文档版控制等)
    通 Tools|Editor 菜单 Editor Porperty话框 Souce Option 页
    选中 Use Tab Character Optional Fill 复选框样制表符会保存
    412 边距
    l 边距设置80字符
    源代码般会写单词超边距规较灵活
    长度超行语句应逗号运算符换行
    换行应缩进两字符
    通 Tools|Editor 菜单 Editor Porperty话框 Display 页设置Right margin
    42 Object Pascal语句书写规范法
    421 beginend 语句
    l begin end语句必须单独占行

    for i0 to 10 do begin 错 begin for 行
    for i0 to 10 do begin 外行中begin
    begin
    end
    422 括号
    l 必须易引起误解错误方括号语句中必括号
    423 保留字关键字
    l Object Pascal 语言保留字关键字总完全写
    424 变量
    4241 局部变量
    l 局部变量程部果需话应程入口处立初始化变量

    局部AnsiString类型变量动初始化空字符串
    局部接口dispinterface类型变量动初始化nil
    局部VariantOleVariant类型变量动初始化Unassigned
    4242 全局变量
    l 般鼓励全局变量
    l 时候需应全局变量限制需环境中
    例全局变量单元实现部分全局


    全局数果许单元应移动公单元里象
    注意全局变量动进行零初始化全局变量初始化诸0nilUnassigned等空值
    零初始化全局变量EXE文件中占空间零初始化数保存虚拟数段中虚拟数段应程序启动时分配存非零初始化全局数EXE文件中占空间
    425 类型
    4251 浮点类型
    l 鼓励Real类型老Pascal代码兼容保留
    通常情况浮点数应Double

    Double处理器优化IEEE定义标准数格式
    需Double提供范围更时ExtendExtendintel专类型Java支持
    浮点变量物理字节数重时(语言编写DLL)应Single

    4252 VariantOleVariant
    l 般建议VariantOleVariant

    数类型运行期知道时(常常COM数库应程序中)两类型编程必进行诸动化ActiveX控件COM编程时应OleVariant非COM编程应VariantVariant够效保存Delphi原生字符串OleVariant字符串转换OLE字符串(WideChar字符串)没引计数功

    426 语句
    4261 ifcase
    l 避免出现许if语句 case 语句代果5级 if 语句请改更清楚方法
    l if 语句中余括号
    4262 whileforrepreat
    l 循环嵌套超五级深度
    l 建议Exit程退出while循环
    果需话应循环条件退出循环while循环进行初始化代码应位while入口前关语句隔开业务辅助工作应循环立进行
    l 果循环次数确定应for语句代while repeat语句
    4263 with
    l with语句应心
    避免度with语句尤with语句中象记录
    例:
    with Record1Record2 do
    情况容易迷惑编程员导致调试困难

    427 函数(例程)
    4271 形参
    l 类型形参应起:
    procedure Foo(Param1Param2Param3ImtegerParam4string)
    4272 常量参数
    l 记录数组短字符串接口类型参数程修改应形参标 const
    样编译器效方式生成代码保证传递参数变果类型参数希程修改标 const
    效率没影响程调者带更信息
    428 结构化异常处理
    4281 try…finally法
    4282 try…except法
    4283 try…except…else法
    l 鼓励带else子句tryexcept阻塞异常包括没准备处理异常

    43 语句构造
    431 结构化求
    l 量采三种基控制结构编写程序
    l 循环嵌套超五级深度
    l 量避免嵌套if语句种情形应if语句判断种
    l 禁止出现两条等价支路
    l 般应禁止GOTO语句
    l CASE 实现路分支
    l 避免循环引出出口
    l 函数出口
    l 避免必分支
    l 行中写语句
    l 括号清晰表达出逻辑表达式算术表达式运算次序
    l 利添加空格清晰表示语句成分
    432 逻辑求
    l 量条件赋值语句
    l 轻易条件分支换逻辑表达式
    l 避免测试条件非常
    l 避免复杂条件测试
    较浮点数相等: 100 * 01 10

    5 正确性性
    51 正确性
    l 程序必须首先满足正确性求程序必须满足需求规格说明关求精心选择合法测试例应该出符合规格说明求结果
    l 显式说明切变量变量前必须进行初始化应该该变量作范围起始处进行初始化
    l 数说明次序应规范化先常量说明简单类型说明然构造类型说明
    l 变量出现说明语句中时变量名应字母序排序便查找
    l 函数(程)中局部变量应遵循变量命名约定时变量取名应合理
    l 量减少全局变量必须时候全局变量量保证段文范围全局变量果算单元全局数应该放置公单元中然单元
    52 性
    521 容错处理
    l 程序环境状态发生关系时必须动处理发生意外事件
    文件否逻辑锁定印机否联机等
    522 调试测试
    l 程序编写完进行代码检查
    l 改错误时产生新错误修改前首先考虑程序影响
    l 程序编写完成应进行必单元测试
    523 版封存修改
    l 版封存修改定老语句注释符号(* * )封闭删修改文件函数修改记录中加记录
    6 易理解性
    61 命名规范
    请附件
    62 注解规范

    7 效率性
    71 程序运行时间
    l 写程序前先简化算术逻辑表达式
    l 仔细研究嵌套循环量语句层外移
    l 量避免维数组
    l 量避免复杂表
    l 执行时间短算术运算
    l 表达式中混合数类型
    l 量整数运算布尔表达式
    l 非常必时汇编语言
    l ifthenelse语句中常发生行应放then子句中发生性较行应放else子句中
    l 果if语句中条件需测试条件应计算强度少序左右排列样做编译器编译代码时获布尔估算逻辑捷径代码获佳优化
    注:果条件1快条件2条件2快条件3if语句中排列应: if 条件1 and 条件2 and 条件3 then
    l 形参序考虑寄存器调规常参数应作第参数
    8 移植性重性
    l 量标准库函数公函数
    l 重复完成相独立功算法代码应抽象公控件类
    l 公控件类应考虑面象思想减少外界联系考虑独立性封装性
    l 公控件类应建立模板
    9 附录
    10 文档香网(httpswwwxiangdangnet)户传

    《香当网》用户分享的内容,不代表《香当网》观点或立场,请自行判断内容的真实性和可靠性!
    该内容是文档的文本内容,更好的格式请下载文档

    下载文档到电脑,查找使用更方便

    文档的实际排版效果,会与网站的显示效果略有不同!!

    需要 2 积分 [ 获取积分 ]

    下载文档

    相关文档

    编码

    编码教学目标:(1)学生通过生活中的事例,初步体会数字编码思想在解决实际问题中的应用。(2)学生通过观察、比较、猜测来探索数字编码的简单方法,学会用数进行编码,初步培养抽象能力和概括能力。(3...

    4年前   
    809    0

    来自ISL的编码规则

    来自ISL(Integrate Service)网站的一份编码规则说明:以物料的编码为主线讲解编码的原则,但所讲编码原则同样适用于系统的客户编码、供货商编码、职员编码、部门编码、单位编码、仓库...

    11年前   
    619    0

    员工编码标准

     员工编码标准 第一条 本标准按公司机构图和岗位图自上而下,自左向右顺序来编排,员工编码共7位。 第二条 首位码为级别码:高管级为1,部门级为2,主管级为3,员工级为4。 第三...

    11年前   
    16595    0

    沈阳东东系统集成有限公司质量管理规范文件——编码标准

    作业标准S-04006总页数8正文4附件4文件控制部门:项目管理部编码标准 批准人刘岩审核人崔戈拟制人刘慧丰批准日期1999.5.12生效日期1999.5.12关联文件沈阳东东系统集成

    9年前   
    474    0

    LTE预编码设计开题报告

    1. 选题的目的及意义: 90年代初第三代移动通信技术(3G)的横空出世使得让多媒体服务的质量与应用得到广泛人的认可,随处可见的宽带覆盖网络给人们物质文化的提高带来了深远的意义,并且摒弃了环...

    5年前   
    1292    0

    农产品追溯编码设计

    农产品追溯编码设计研究背景    建立农产品追溯系统,促进中国农产品平安体系搭建是保障消费者食用农产品平安和提升农产品竞争力的重要手段。而统一编码是实现农产品追溯系统的根底。关于追溯码编码的研...

    2年前   
    396    0

    74汉明码编码原理

     74汉明码编码 1. 线性分组码是一类重要的纠错码,应用很广泛。在(n,k)分组码中,若 冗余位是按线性...

    7个月前   
    215    0

    编码体系的设计原则

    编码体系的设计原则赛迪网-中国计算机报编码体系的建立应遵循以下设计原则:  1)信息分类编码体现科学化、标准化、规范化、合理化。  2)参照国家标准中有关分类标准体系。  3)参照企业原有的编...

    11年前   
    557    0

    香农编码实验报告

     中南大学 《信息论与编码》实验报告 题 目 信源编码实验 指导教师 学 院专业班级 姓名 学号 日期 ...

    1年前   
    392    0

    2023年数字与编码专题

    2023年数字与编码专题 第一篇:数字与编码专题 浙江省农村中小学现代远程教化工程资源建设多媒体教学课件 人教版版五上《数字与编码》教学设计 运用范围:小学数学〔人教版〕...

    1年前   
    324    0

    物料及客户、供应商编码实例

    物料及客户、供应商编码实例 某工业企业编码方案 《JYS—MACS 企业经营管理与控制系统》 物 品 统 一 编 码 标 准 标准号:信息2001(001) ...

    9年前   
    24832    0

    湘潭大学信息论与编码试卷

    湘大信息论与编码试卷一、填空题(每空1分,共30分) (1) 在现代通信系统中,信源编码主要用于解决信息传输中的 有效 性,信道编码主要用于解决信息传输中的 可靠 性 ,加密编码主...

    2年前   
    661    0

    鞋业公司物料编码方案

    鞋业公司物料编码方案 1.货品编码规则: 编码构成:生产厂家码 + 出厂编号 + 商品颜色码 + 商品尺码 编码含意: (1)生产厂家码(两位字母,详见“生产厂家码表”)例...

    11年前   
    6243    0

    长安电缆厂编码方案

    长安电缆厂编码方案--关于成品编码方案 1、关于成品编码方案: 构成: 商标 + 型号 + 面积 + 颜色 + 电压指数 –定制(客户+长度) 位数: 1 2 3 3 1 不限(...

    11年前   
    20242    0

    《消防设施主要组件编码规则》

    附录E消防设施主要组件编码规则为精确掌握各类消防设施各组件的检查和运行情况,需要对各组件进行唯一性身份标识。为此,制定如下编码规则,不同单位可根据情况参照本规则自行设定编码。一、火灾报警控制器...

    2年前   
    2648    0

    伺服电机编码器原理

      伺服电机编码器原理 伺服电机编码器分类 ,伺服电机编码器使用注意的事项   伺服电机编码器原理 伺服编码器这个基本的功能与普通编码器是一样的,比如增量型的有A,A反,B,B...

    9年前   
    7378    0

    税收分类编码及税率表

    营改增后有关税收分类编码的常见问题处理问题一:税收分类编码库不全怎么办?比如说没有5%和1.5%的。答:最新版开票软件160425版本,正常情况下第一次进入系统会自动更新税收分类编码,出现提示...

    4年前   
    2834    0

    火灾自动系统编码表

    火灾自动联动系统编码表工程名称:xxxxxxxxxxxxxxxxxxxxxxxxxxxxx项目序号控制器号回路号部位号汉字注释部件类型操作1111XXX一层储物间烟感无2112XXX一层配电室...

    2年前   
    1099    0

    某电子厂供应商及客户编码实例

    某电子厂供应商及客户编码实例 1、供应商编码: 供应部供应商系列编码规则 编码由六位阿拉伯数字组成 六位数字由左至右各数字代表涵义如下: 第一位数字代表供应部,固定用数字“1”表...

    9年前   
    9432    0

    信息论与编码曹雪虹课后习题答案

    《信息论与编码》-曹雪虹-课后习题答案第二章2.1一个马尔可夫信源有3个符号,转移概率为:,,,,,,,,,画出状态图并求出各符号稳态概率。解:状态图如下状态转移矩阵为:设状态u1,u2,u3...

    2年前   
    954    0