论坛大神
  
- 积分
- 2201
- 金钱
- 2201
- 注册时间
- 2012-2-8
- 在线时间
- 35 小时
|
发表于 2013-1-11 13:11:36
|
显示全部楼层
回复【28楼】lsj9383:
---------------------------------
我这里的耦合的意思是一个任务很容易影响到另外一个任务. 一些本来逻辑上分离的东西在代码中却有可能相互影响. 在写程序的时候为了可移植和方便调试, 应该尽量把各模块之间的耦合降到最低.
简单的当然没什么, 再复杂一些呢,
调试的时候往往是分模块调试的, 第一次写的一个小任务, 内部有 N 个状态
下次写的时候又有更复杂的要求, 算法流程图上原来的任务本应该是一个简单的子函数, 但是你在写的时候必须把它当作多次调用来处理,
下下次呢? 修改代码的工作量可能是指数增长的.
一个任务模块不能像一个 C 函数一样编写, 在代码复用的时候就要考虑到诸多问题, 这是很头疼的. 在移植以前的代码或者别人写的代码的时候, 甚至不得不修改原来的代码. 但是编程的一个原则就是尽量不要修改现有的代码. 因为修改往往就会带来新的 BUG.
并不是这种方式不能用. 它本身只是一个简单的状态机模型罢了. 它并不适用于作为真正的多任务的框架.
|
|