- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
7.3代码演化 7.3代码演化的管理 7.2.1代码演化的管理 随着时间推进,代码版本在不断增多。 7.2.1代码演化的管理 代码变化的原因是什么? 演化原因 正常开发 需求发生变化, 模块规范变化, 版本控制 1 7.3.1 源代码控制、生成 7.3.1 源代码控制、生成 文件管理系统 原理 仓库 功能 常见软件 7.3.1 源代码控制、生成 : 0/4 什么是源代码控制系统? 它是一个软件。 它是一个管理源代码的软件。 文档 文档 文档 7.3.1 源代码控制、生成 : 1/4 代码管理系统的 原理 总机 分机2 分机3 分机1 7.3.1 源代码控制、生成 : 2/4 仓库是一个概念。 程序1 版本1 版本2 版本3 程序2 版本1 版本2 版本3 程序3 版本1 版本2 版本3 … 程序n 版本1 版本2 版本3 仓库示意图 7.3.1 源代码控制和生成 : 功能 3/4 用软件自动管理文档,利于代码文档管理。 基本功能 上传文档 修改文档 下载文档 刷新文档 报告功能 修改的内容 修改的原因 修改的时间 Build功能 寻找所需版本 编译 组成软件 功能 7.3.1 源代码控制和生成 : 常见的软件 4/4 CVS VSS 重构技术 2 7.3.2 重构 7.3.1 重构 本小节讲解四方面内容。 重构 含义 功能 黄金 法则 何时 重构 7.3.1 重构:什么是重构? 1/4 重构是重新设计程序的结构。提高效率。 不修改功能 修改内部结构 在编码过程中完成 7.3.1 重构 :功能 2/4 重构是重新设计程序的结构。提高效率 补充设计上的不完美 修改模块内部结构 减少设计上的压力 7.3.1 重构 :黄金法则 3/4 测试重用以前的脚本 重构完一定要测试 小步骤的重构 7.3.1 重构 :何时去重构? 2/4 当我们闻到程序有坏气味时候,重构 重构的时机 过长 方法过长 类过长 消息链过长 过多 参数过多 类过多 继承 代码重复 耦合性高 下次再见! 感谢同学的参与 好好学习 回头是岸 END 7.1.2 数据隐藏(绪论) 数据隐藏有利于编程和测试。 7.1.2 数据隐藏(2) 有什么用处? 7.1.2 数据隐藏(绪论) 数据隐藏有利于编程和测试。 语言 老语言 没有信息隐藏的机制 程序员自己动手实现信息隐藏 新语言 有信息隐藏机制 方便用户实现信息隐藏 7.1.2 数据隐藏(3) 与语言有关系吗? 实践经验 3 7.1.3程序设计实践经验 7.1.3程序设计实践经验 本小节分四个部分。 数据类型 参数检查 语句 鲁棒性 实践经验 7.1.3程序设计实践经验 1/4 数据类型 参数检查 语句 鲁棒性 实践经验 7.1.3程序设计实践经验 实践经验 : 数据类型篇 尽量重复使用用户自定义数据类型 比如 枚举类型 可以把一周中的天 定义为类型。 7.1.3程序设计实践经验 2/4 数据类型 参数检查 语句 鲁棒性 实践经验 7.1.3程序设计实践经验 实践经验 : 参数检查篇 参数检查 是否合法 长度合理吗? 有非法参数吗? 修改 修改后会引入副作用吗? 逻辑 参数之间的隐含的相关性对吗? 参数个数 不要太多了。 7.1.3程序设计实践经验 3/4 数据类型 参数检查 语句 鲁棒性 实践经验 7.1.3程序设计实践经验 实践经验 : 语句篇 If 语句 不要嵌套太深 Switch语句 最后要写default语句 Goto语句 万不得已时再用 7.1.3程序设计实践经验 4/4 数据类型 参数检查 鲁棒性 实践经验 语句 7.1.3程序设计实践经验 鲁棒性:在异常情况也能运行。 容忍非法输入 容忍错误系统状态 系统坚决不崩溃 4 7.1.4 编码标准 7.1.4 编码标准 编码标准 命名原则 文件规范 语句 注释 布局 7.1.4 编码标准 程序中命名很重要。 1/5 大小写 大写:常量、类、大范围变量 小写:一般变量、包、 混合写:方法名 例如 getValue() 前缀和后缀 前缀 :is 后缀 :Exception 常用动词:放在名词前 Find 、compute——findMin() computerMean() 7.1.4
您可能关注的文档
最近下载
- 引领时尚潮流的可持续时尚品牌.pptx VIP
- 一年级道德与法治教案(全套).pdf VIP
- 版鲁科版英语四年级上册教案.doc VIP
- 一种脱除1,3-丙二醇中微量醛基杂质的脱除方法.pdf VIP
- 国投证券-宁德时代-300750-全球锂电行业龙头全球化布局推动发展.pdf VIP
- 2023-2024学年上海市向明中学高二上学期10月月考数学试卷含详解.docx VIP
- 《婴幼儿动作发展与训练》教案 第8课 2~3岁幼儿精细动作的发展与训练.docx VIP
- MT-500系列说明书(济南华电)-20101216.pdf
- 养成亲社会行为++课件-2025-2026学年统编版道德与法治八年级上册.pptx VIP
- 开学第一课-初中开学第一课班会.ppt VIP
文档评论(0)