首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > perl python >

怎样设计多步骤脚本的结构解决方案

2012-05-22 
怎样设计多步骤脚本的结构对于下面这种结构的脚本,大家一般会怎样设计呢?def 步骤1:子变量1 ...子变量2

怎样设计多步骤脚本的结构
对于下面这种结构的脚本,大家一般会怎样设计呢?

def 步骤1:
  子变量1 = ...
  子变量2 = ...
  def 子步骤1:
  pass
  def 子步骤2:
  pass

def 步骤2:
  def 子步骤1:
  pass
  def 子步骤2:
  pass
  ...
  def 子步骤n:
  pass

...

def 步骤n:
  pass

全局变量1 = ...
...
全局变量n = ...
#主程序开始
if 步骤1成功:
  步骤2
  步骤3
  ...
  步骤n

这种脚本的特点是由一系列步骤(指令)组成,每个步骤又可划分为多个子步骤,我之前将所有这些步骤写在一个模块里,一个步骤定义在一个函数中,子步骤定义为嵌套函数,整个模块大于1000行,使得维护变得很困难。用这个脚本处理相似目标时,需要修改变量的值,以及某个子步骤的实现逻辑,直接修改源代码显然是很低效的方法。请教一下各位高手,是否应该将每个步骤写在单独的模块里,然后由一个main模块分别调用各个步骤模块?为了提高脚本的复用性,是否应该将变量的默认值和步骤的抽象逻辑定义成抽象类,然后将具体的实现逻辑放在子类里完成?有没有这种多步骤代码的设计模式可供借鉴?

谢谢!

[解决办法]
看看设计模式吧 应该会找到答案。求人不如求己
[解决办法]
用类到多态性把变性封装起来,楼上的说得对还是看看设计模式吧
[解决办法]
泛泛的问题,只能得到一个泛泛的答案。问怎么解决重复代码,答用设计模式。答的是废话,因为问的也是废话。
解决软件设计问题万古不变的唯一核心思想:分析代码中的冗余部分,把冗余的部分合并。说起来这么简单,需要你自己去身体力行。你要分析哪里重复了,怎么把重复的归并一起。而这关键的部分别人是不大能提供帮助的(除非问题很完整),要你自己去追求,自己去解决。设计模式都只是例子,可以作为参考,不能作为工具或者准绳。
[解决办法]
我现在用python也会出现写出多个类似脚本的情况,只有靠自己边学习边改进代码了,祝楼主能早日找到解决冗余代码的办法!

热点排行