- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
软件设计与实现 电子科大生命学院 王玲 P* 第三章 软件设计与实现 王玲电子科大沙河校区主楼西301 w_ling@uestc.edu.cn 软件的详细设计,完成了软件的过程性的描述。 编码(Coding)阶段的任务, 是为每个模块编写程序。即是将详细设计的结果转换为源程序代码。 3.7 软件实现 SP 结构化程序设计 OOP 面向对象程序设计 结构化程序设计方法 (Structured Program),即SP法是结构化开发方法的重要组成部分。 基本思想: 自顶向下、逐步求精。 基本原则: 功能的分解与抽象。 3.7.1 结构化程序设计 1.自顶而下、逐步求精 开发的程序层次结构清晰,易读、易理解还易验证,程序的质量高。 2.单入口和单出口的控制结构 仅由顺序、选择、循环三种基本控制结构组成 一、结构化程序设计特点 二、结构化程序设计的步骤 提出和分析问题 确定数学模型 设计算法 模块化编程 程序整个编译、运行 结构化程序设计步骤 三、优化设计 优化设计有多方面的内容,例如结构的优化,功能的优化,算法的优化和时间、效率的优化等等. ⑴不考虑时间因素的前提下开发并精简软件结构。 ⑵寻求软件设计结构中的 “关键路径” 和 “关键事件”。仔细的设计该模块的实现算法。 ⑶选择合适的高级编程语言,提高程序的编译效率。 ⑷在效率和实现功能之间寻求平衡点。 对时间起决定性作用的软件的优化方法 从如何提高软件的质量和可维护性的角度,讨论在编码阶段所要解决的主要问题: 程序设计语言的特性及选择的原则 程序设计风格 算法与程序效率 软件代码审查 3.7.2 软件编码中的注意事项 按照语言级别可以分为两大类: 低级语言 高级语言 (1)低级语言:包括机器语言和汇编语言。 低级语言表示成二进制形式的机器基本指令集, 或者是操作码经过符号化的基本指令集,由于其依 赖于特定的机器,其使用复杂、繁琐、费时、易出 差错,因而程序编写也有一定的难度。 3.7.2.1 程序设计语言的选择 一、程序设计语言的分类 按照语言级别可以分为两大类: 低级语言 高级语言 (2)高级语言 高级语言的表示方法要比低级语言更接近于待 解的问题,其特点是在一定程度上与具体机器无关, 易学、易用、易维护。高级语言的实现极大的提高 了软件的生产效率。 3.7.2.1 程序设计语言的选择 一、程序设计语言的分类 1. 按应用范围分: 通用语言有:PASCAL、C、C++、Java等 专用语言有:APT等 二、高级语言的分类 2. 按用户的要求分为: 过程式语言和非过程式语言; 3. 按使用方式分: 交互式语言和非交互式语言; 4.按语言的内在特点分: 系统实现语言 静态高级语言 动态高级语言 块结构高级语言; 1. 项目的应用领域。应尽量选取适合某个应用领域的语言。 2. 算法和计算复杂性。 3. 软件的执行环境。要选取机器上能运行且具有相应支持软件的语言。 4. 性能因素。应结合工程具体性能来考虑。 5. 数据结构的复杂性。要根据不同语言构造数据结构类型的能力选取 。 6. 软件开发人员的知识水平以及心理因素。 三、程序设计语言选择准则 四、高级语言的内在特性 1. 传统的高级语言 具有代表性有:BASIC、FORTRAN、ALOGOL 2. 通用的结构化程序设计语言 具有代表性的有: PASCAL、PL/1、C、Ada 等,它们都是从 ALOGOL 语言派生出来的。 四、高级语言的内在特性 3. 面向对象的程序设计语言 具有代表性的有:Smalltalk、C++、Java、C#语言、Visual Basic、Borland Delphi等。 4. 第四代语言(4GL) 常见的有:查询语言、程序生成器和其它4GL语言。 Smalltalk语言,最先实现真正的面向对象的程序设计语言,支持程序部件的“可复用性”。 C++程序设计语言,既融合了面向对象的能力,又与C兼容,保留了C的许多重要特性。维护了大量已开发的C库、工具及C源程序的完整性。 Java语言,是一种简单的面向对象的分布式的语言。功能强大、高效安全,与结构无关,易于移植,是多线程的动态语言。增加了Objectiv
文档评论(0)