第62节 应用系统设计思路

一.应用程序结构及开发方法

1.设计方法: 自顶向下–>逐步细化–>模块化设计–>结构化编码

2.常用结构: main–>菜单–>功能1,…功能n–>细化功能模块

二.应用程序结构设计思路

1.设计原则:高内聚、低耦合

 函数高内聚: 代码相关性强,责任单一;

 函数低耦合: 各模块间相互联系少(参数少,全局变量少);

2.具体技术

 提取出独立的功能,与通用的功能

 慎用全局变量、静态局部变量

 尽量使用值传递,慎用传地址

/包含文件
#include<……>
……
/自定义函数声明
……
/必要的全局变量
……
int main()
{
          
   
	...
}
/定义自定义函数
……

三.一个"打豆豆"程序实例

#include <stdio.h>
int choose();
void eat(int, char*);
void sleep(int);
void hitdoudou();
int main()
{
          
   
	int iChioce;
	do
	{
          
   
		iChioce = choose();

		switch (iChioce)
		{
          
   
		case 1:
			eat(2, "鲜鱼");
			break;
		case 2:
			sleep(30);
			break;
		case 3:
			hitdoudou();
			break;
		case 0:
			break;
		default:
			printf("07选择错误!
");
			continue;
		}
		printf("恭喜你完成了一项工作!

");
	} while (1);
	return 0;
}

int choose()
{
          
   
	int i;
	printf("请选择: 
");
	printf("** 1.吃饭
");
	printf("** 2.睡觉
");
	printf("** 3.打豆豆
");
	printf("** 0.退出
");
	printf("** 请选择0-3: ");
	scanf_s("%d", &i);
	return i;
}

void eat(int n, char* food)
{
          
   
	printf("我吃了%d斤%s.
", n, food);
}
void sleep(int m)
{
          
   
	printf("我睡了%d分钟.
", m);
}
void hitdoudou()
{
          
   
	static int count = 0; //使用静态函数记录次数,符合高内聚原则;
	count++;
	printf("打豆豆%d次了.
", count);
}

四.编程的决定因素——— 对初学者的忠告

 不在于你对语言多么熟悉、对概念理解的多么透彻,而是你是否能将你想做的事说清楚。

 若没有正在做什么和应如何去做的清晰思路,无论选何种语言编程,都无济于事。

经验分享 程序员 微信小程序 职场和发展