抽象优化

1.最近在做一个抽象优化的工作任务。

2.接手了一个已经存在的项目,发现代码写的不够抽象。例如,定义接口的方式是,给每一组API都创建了一套接口。然后实现类和接口是一对一的关系。这样一来接口就没有抽象作用了,干脆只定义实现类就得了。

3.我要做的抽象优化第一步是将不同组API分层归类。例如,一共10组API。第一层定义一个总接口A,第二层定义两个子接口B和C。其中9个属于B,1个属于C。

4.除了整体的分层分类之外,在根据不同功能层面进行更细分的分层抽象。例如那9个之中在某个小功能层面还需要继续分类。

5.总之,抽象优化的本质就像是在种模型树,要将具像的琐碎事情结构化为一棵树,树根是看不见摸不着的抽象本质,越远离树根越具像。

6.抽象优化的难点就在于,你要创造出看不见的概念,并将他们定位成一个树状的概念系统。

7.抽象也正是计算机科学的一个重要方法论,因为计算机科学的最重要挑战就是控制复杂度。而树状结构正是收敛复杂度的方法论。

 
0
Kudos
 
0
Kudos

Now read this

第一章.进入忍者的世界(1.Enter the ninja)[完成]

翻译 Secrets of the JavaScript Ninja (JavaScript忍者禁术) 第一章 进入忍者的世界(1.Enter the ninja) 本章重点: 1.介绍本书的目的和结构 2.我们将要关注的类库,我们将要讲解的比较cool的亮点都会在这些类库中找到具体的实现。 3.什么是JavaScript的高级编程(世界级的开发者用什么方式来编写JavaScript) 4.什么是跨浏览器编程 5.展示测试组件(如何测试你的代码) 目录链接:... Continue →