
软件架构
kjfcpua
这个作者很懒,什么都没留下…
展开
-
为什么类是单继承的?接口是多继承的?
如果将资源的组织结构看作空间的话资源确实是单继承的,确实应该是树。因为一个空间单元只可能有一个直接的父空间单元不可能会有两个,因为空间是不交叉的。那个PrivilageBigram两两组合出的多继承应该是从运动的角度观察事物的,运动就是变化,就是时间。比如一个人肯定是只有一个直接领导的,但是这个人在开展工作的时候是可以从任何他人那里得到(继承或者别人委托给他)权限的,这是多继承的。类是单继转载 2015-03-25 14:41:08 · 3529 阅读 · 1 评论 -
范畴category:组合的本质
之前我在分解和组合的抽象方法一文中谈了分解decomposition和组合composition具体特点,范畴理论大师Bartosz Milewski最近正好写了这篇Category: The Essence of Composition,从范畴角度挖掘了分解组合和树形结构以及构造定律的本质,并解释了函数编程FP的一些原理,如果你对这方面已经有所思考,让我们一起深入细节吧。下面是大概翻译。转载 2015-03-25 14:38:41 · 1267 阅读 · 0 评论 -
设计模式及继承和接口
周星驰在《武状元苏乞儿》中的苏灿亦是做上帮主之位,才得到降龙十八掌的秘芨,可惜只练成十七掌,一直未能参透如何施展最后一掌。待至最后危机时刻,苏灿才悟到第十八掌“亢龙有悔”即是前十七掌的融为一体(此招与金庸原著并不相同).结果此掌挥出登时将对手赵无极打得灰飞烟灭、不见尸骸…… 设计模式常见有23招(不算上多线程模式中的8招),根据类型又可以分为3类,Creational 模式转载 2015-03-25 14:48:43 · 1772 阅读 · 0 评论 -
分解和组合的抽象方法
抽象方法一般有两个分解decomposition和组合composition,这两种方法的方向正好相反,分解是将整体分解为部分,而组合是将部分组合成整体。在软件架构设计和编码中,我们经常快速灵活使用这两种方法,比如将一个类分解为多个小类,将一个方法分解为多个方法,或者将几个类合成一个类一起调用,GoF设计模式中有不少模式是展示这两种方法的使用,比如桥模式或适配器模式是将几个类组合在一起调用转载 2015-03-25 14:37:40 · 2027 阅读 · 0 评论