下载此文档

[软件工程]CH06-编码.pptx


文档分类:通信/电子 | 页数:约121页 举报非法文档有奖
1/121
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/121 下载此文档
文档列表 文档介绍
2021/2/27 星期六
1
软件工程
软件工程
刘迎春
软件工程
2021/2/27 星期六
2
第六章 编码
问题定义
可行性研究
可行否?


需求分析
终止项目
计划
时期
开发
时期
主要内容
编码概念
程序设计语言
编码风格
编码工具
概要/详细设计
编码
2021/2/27 星期六
3
编码概念
程序设计语言的特性、程序设计风格会深刻地影响软件的质量和可维护性。
概要设计
报告
详细设计
报告
源程序
清单
程序设计语言
2021/2/27 星期六
4
编码概念
【㈠目标】
产生正确可靠、简明清晰、具有较高效率的源程序。
【说明】
⒈源代码越是清楚和简明,就越便于验证源代码和设计文档的一致性,越容易对它进行测试和维护;
⒉清晰和效率却常常会有矛盾,清晰性好的程序一般效率较低,而要求效率高的程序往往清晰度不太好;
⒊对于大多数模块,编码时应该把简明清晰放在第一位。
2021/2/27 星期六
5
面向过程与面向对象编程
面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用。
面向对象是把构成问题事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为。
2021/2/27 星期六
6
编码概念
【㈠目标】
产生正确可靠、简明清晰、具有较高效率的源程序。
【㈡自顶向下,逐步求精】
把一个模块的功能逐步分解。
详细设计
模块功能细化为一系列具体的步骤。
编码阶段
用程序设计语言翻译成一系列的程序。
2021/2/27 星期六
7
编码概念
例:用筛选法求100以内的素数。(从2到100中去掉素数2,3,5,7的倍数,剩下的就是100以内的素数。)
【⒈先按程序功能写出一个框架】
main ( )
{
//1、建立2到100的数组A[ ],其中A[i]=i
//2、建立2到10的素数表 B[ ]
//3、若A[i]=i是B[ ]中任一数的倍数,则剔除A[i]
//4、输出A[ ]中所有没有被剔除的数
}
2021/2/27 星期六
8
编码概念
例:用筛选法求100以内的素数。
【⒉对框架中的局部再做细化,得到整个程序】
main ( )
{
for ( i = 2;i <= 100;i++ ) A[i] = i; //1
B[1] =2;B[2] = 3;B[3] = 5;B[4] = 7; //2
for ( j = 1;j <= 4;j++ )
{
/* 检查A[ ]所有的数能否被B[j]整除并将能被整除的数从A[ ]中剔除*/
}
for ( i = 2;i <= 100;i++ )
{
/* 若A[i]没有被剔除,则输出 */
}
}
2021/2/27 星期六
9
编码概念
例:用筛选法求100以内的素数。
【⒉对框架中的局部再做细化,得到整个程序】
main ( )
{
……
for ( j = 1;j <= 4;j++ ) {
for ( i = 2;i <= 100;i++) {
if ( 0 == A[i] % B[j] ) A[i] = 0;//
}
}
for ( i = 2;i <= 100;i++ ) {
if ( A[i] != 0 )
printf (“A[%d]=%d\n”,i,A[i] ); //
}
}
2021/2/27 星期六
10
编码概念
【㈡自顶向下,逐步求精】优点:
⑴符合人们解决复杂问题的普遍规律。可提高软件开发的成功率和生产率。
⑵用先全局后局部,先抽象后具体的过程开发出来的程序具有清晰的层次结构。
同一层节点的细化工作相互独立。
每一步工作仅在上层节点的基础上做不多的设计扩展。
有利于设计的分工和组织工作。
有利于编码、测试和集成。
程序清晰和模块化强。在修改和重新设计一个软件时,可复用的代码量大。

[软件工程]CH06-编码 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
最近更新