ivaneeo's blog

自由的力量,自由的生活。

  BlogJava :: 首页 :: 联系 :: 聚合  :: 管理
  669 Posts :: 0 Stories :: 64 Comments :: 0 Trackbacks
作法(Mechanics)
    • 建立一个新class,根据[待被处理之函数]的用途,为这个class命名。
    • 在新class中建立一个final值域,用以保存原先大型函数所驻对象。我们将这个值域称为[源对象]。同时,针对原(旧)函数的每个临时变量和每个参数,在新class中建立一个个对应的值域保存之。
    • 在新class中建立一个构造函数(constructor),接收源对象及原函数的所有参数作为参数。
    • 在新class中建立一个compute()函数。
    • 将原(旧)函数的代码拷贝到compute()函数中。如果需要调用源对象的任何函数,请以[源对象]值域调用。
    • 编译。
    • 将旧函数的函数本体替换为这样一条语句:[创建上述新class的一个新对象,而后调用其中的compute()函数]。
现在进行到很有趣的部分了。由于所有局部变量现在都成了值域,所以你可以任意分解这个大型函数,不必传递任何参数。
posted on 2005-08-29 16:13 ivaneeo 阅读(98) 评论(0)  编辑  收藏 所属分类: refactoring-从地狱中重生

只有注册用户登录后才能发表评论。


网站导航: