有哪些过程式代码转化成声明式代码的手法?

过程式代码量变大以后难以管理, 有的时候就抽象出函数, 对象, 接口,
有时候不方便抽象出那些, 或者尝试转化成接近声明式的风格,,

比如我遇到的很多 if 的代码, 就用一个 Table 保存了多种判断,
然后通过一个字符串里的名字表示满足判断, 将代码变清晰..

if item.isExp()
  if item.isShort()
    if item.isLast()
      # do
    else if item.isFirst()
      # do

转化成

if item.is 'exp short last plain block'
 # do

还有哪些方案可以将代码变成声明式的呢?

阅读 3.9k
1 个回答
item.is=function(){
  if(item.isExp()&&item.isShort()){
    if(item.isLast()||item.isFirst()){
        return true;
    }
  }
  return false;
}

if(item.is()){
    #do
}

把大段的判断语句剥离出,成一个独立的函数。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进