人生苦短,请快偷懒——面向可复用性的设计
大一在苏小红博士的课上。我第一次学会了面向复用式设计。还是因为那堂课有一种刷题网站。叫sse。每做一道题之后会有分数的奖励。当时一方面是为了练习代码。另一方面是看着自己分数上升,非常开心。有一天,发现了这个网站出现一个错误。就是这个网站有可能会有一道题不断地反复出现。你每一次做这道题,分数都会涨。你只要保持登录界面,不退出,你就能反复刷这道题。这就是我第一次学习到了可复用式设计——ctrl c+v大法。我用一个答案反复刷了这道题。当时我就感觉。人生苦短。还是得偷点懒了。
我们说回正题。面向可复用设计。是程序的必然要求。随着现如今程序的日益庞大。每一个类,每一个功能块儿。每一个设计理念,如果因为一个问题的改变,而完全推倒重来。是对于可怜的程序员的巨大折磨。人生很短暂。所以我程序工作者要求自己的代码具有可复用性。可复用性代表着可循环使用。一个好的思想。一个简明易懂的程序块。是应该被反复使用的。在软件构造的课堂上,我们也讲了,有关模式的可复用式设计,在代码基础上的可复用式设计。在library上的可复用设计,等等可复用手段。这些复用手段。是我们已经打好的轮子。是我们未来开发程序不断丰富武器库。
贴上书里提到的四种可复用性设计模式:
(1)Creational patterns(创建型模式)
关注于对象的创建
(2)Structural patterns(结构型模式)
处理类和对象的组成。
本文介绍Adapter,Decorator,Facade三种关于可复用的模式。
(3)Behavioral patterns(行为类模式)
描述类或对象交互与分担责任的方式。
本文介绍Strategy,Template method,Iterator三种关于可复用的模式