C++程序设计 丁亚涛 第11章 软件开发技术

C++程序设计 丁亚涛 第11章 软件开发技术

ID:40238191

大小:895.50 KB

页数:34页

时间:2019-07-28

C++程序设计 丁亚涛 第11章 软件开发技术_第1页
C++程序设计 丁亚涛 第11章 软件开发技术_第2页
C++程序设计 丁亚涛 第11章 软件开发技术_第3页
C++程序设计 丁亚涛 第11章 软件开发技术_第4页
C++程序设计 丁亚涛 第11章 软件开发技术_第5页
资源描述:

《C++程序设计 丁亚涛 第11章 软件开发技术》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、软件开发技术11软件的开发包括可行性分析、需求分析、系统设计、程序设计、测试、维护等过程。软件生命周期包括计划、开发和运行三个时期。程序设计只是其中一个编码的环节,而软件的开发是一个系统工程,需要经历更加复杂的过程。需求分析需要搞清楚用户需要用软件解决什么问题,包括这些问题的特点、特征以及完备性检测和一致性检测等等。软件设计就是要把这些需求转化为具体的实现。软件设计的过程包括系统结构设计、数据设计、界面设计和过程设计。11.1软件开发概述软件完成后还需要进行测试和维护。软件测试的目的是验证软件的正确性、可靠性和稳定性等。包括单元测试、集成测试、确认测试和系统测试。测试的

2、方法有很多,如著名的黑盒和白盒测试方法等。软件维护需要解决软件和实际应用之间的矛盾,通过修改错误和完善功能等工作使得软件最大程度地接近用户的需求,完成用户的任务。具体包括校正性维护、适应性维护、完善性维护和预防性维护等。具体的软件开发需要参考软件工程方面的理论和实际软件开发项目等。11.1软件开发概述11.2.1程序设计方法11.2软件开发技术面向过程的程序设计方法采用自顶向下的设计方法,把代码分为顺序结构、分支结构和循环结构三种基本结构,简单易用,是传统的程序设计方法。当软件规模不断扩大时,这种方法会暴露出不易维护和代码重用差的缺点,为了解决这些问题,提高程序设计的效

3、率和质量,人们提出了面向对象的概念和方法。面向对象程序设计方法采用“面向对象”的概念来指导程序设计,以对象为中心,以类、继承、多态等为机制,符合客观世界的认识规律,既充分利用了对象之间的相似性,又能表现他们之间的不同。11.2.2代码复用面向接口的编程对象的组合分离可变和不可变减少方法的长度和参数个数抽象类11.2.3高质量的代码1.语法的标准化头文件空行与空格对齐注释类的版式命名规则类型的一致性2.写好循环语句写法1:for(out=1;out<=10000;out++)for(in=1;in<=10;in++)…写法2:for(out=1;out<=10;out++

4、)for(in=1;in<=10000;in++)3.类的封装性和开放性软件的技术性和艺术性是相关联的,有时候也是矛盾的。软件的技术性是以解决问题的确定性和效率高低来衡量的。无论采取什么编码方式和程序设计技术,解决问题是第一位的,其次是代码的质量、代码的容量等。容错性、可读性等都属于技术性的范畴。技术是软件产品的生产力。软件其实还有艺术性。我们经常比较各种软件产品,排除技术性的层面来观察和分析这些产品会发现,良好的界面和交互性是软件给与用户第一印象,也是非常重要的第一步,就像相同的事物不同的包装,给予观赏者可能完全不同的理解和认识。从软件应用的角度,技术性是内在的,艺术

5、性是外观的,都是应用实体的组成部分。二者都需要程序员关注。11.2.4软件的技术性与艺术性STL(StandardTemplateLibrary)标准模板库。为了实现更高程度的软件代码复用,使得代码适应更多的数据类型,通用类型程序的概念因此而建立起来。这种通用类型程序设计又叫范型程序设计(genericprogramming),其目的就是标准化组件和软件复用。STL是最新的C++标准函数库中的一个子集。11.2.5STL#include#include//STL容器库#includeusingnamespaces

6、td;intmain(){vectorn;inta[10];for(inti=0;i<10;i++){cin>>a[i];n.push_back(a[i]);}sort(n.begin(),n.end());vector::iteratori1;i1=find(n.begin(),n.end(),a[3]);if(i1)n.insert(i1,999);for(i=0;i

7、代器就如同一个指针。事实上,C++的指针也是一种迭代器。但是,迭代器也可以是那些定义了operator*()以及其他类似于指针的操作符地方法的类对象。容器是一种数据结构,如vector、list和deques,以模板类的方法提供。为了访问容器中的数据,可以使用由容器类输出的迭代器。算法是用来操作容器中的数据的模板函数。例如,STL用sort()来对一个vector中的数据进行排序,用find()来搜索一个list中的对象。函数本身与他们操作的数据的结构和类型无关,因此他们可以在从简单数组到高度复杂容器的任何数据结构上使用。容器(conta

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。