梳理你的思路(从OOP到架构设计)_浅尝架构师的滋味03
目录
1、分与合: 强龙与地头蛇的分工
分工 & 合作
分工的时间点
客人来之前做「分」,客人来之后做「合」
2、结语
肯德基餐厅
火锅店
汽车
从分工到外包模式
1、分与合: 强龙与地头蛇的分工
EIT造形用来表达架构师的先「分」与买主来了之后的「合」 。
分工 & 合作
- 老子.道德经:「无之以为用,有之以为利。」畚箕必须先挖空(无之)才能拿来装东西(有之)。所以先无之而后始能有之。
- 例如,客人(即买主)来之前,强龙「无之」(把锅子挖掉)得接口
- 一旦客人来了,地头蛇「有之」 (把锅子放上去)就收钱。
分工的时间点
为什么会想把锅子挖掉呢? 理由是: 买主来了,才知道买主选择何种火锅;只好等待买主决定和挑选了火锅种类之后,才能将锅子装配上去。
客人来之前做「分」,客人来之后做「合」
- 例如,肯德基快餐店:
-- 客人来之前,厨师做<分>(即庖丁解鸡)。
-- 客人来之后,前台人员做<合>,合出半鸡或全鸡。
- 烹饪的知识,它分散于两种档里:
1. 食谱,
2. 点菜单。
一般而言,食谱主要记载烹饪师傅的知识,而点菜单则记载买主(客人)的知识;两者相汇合之后,才能端出一道好吃的菜肴。
2、结语
肯德基餐厅
- 客人(买主)来之前,大厨师先做<分>的动作。同理,软件架构师也是做<分>的动作。这就扮演强龙角色。
- 客人(买主)来了,柜台的小弟、小妹才做<合>的动作。同理,软件App开发者也是做<合>的动作。这就扮演地头蛇角色 。
火锅店
- 客人(买主)来之前,先做<分>,并得接口。同理,软件架构师的主要任务是做<分>,并设计接口。亦即:
-- 设计<I>,并分离出<E>和<T>
- 因为做<分>,创造了桌子<E>的复用性(Reusability)。以及<T>的抽换性。
- 因分而复用,因合而获利。
- 老子:「 无之以为用,有之以为利。」
汽车
- 福特汽车厂是强龙
- 福特架构(设计)师的工作是:
-- 设计<I>,并分离出<E>和<T>。
- 福特工程师的工作是:生产引擎 。
- 固特异轮胎厂与修车厂都是地头蛇。
- 固特异轮胎厂工程师:生产轮胎
- 修车厂工程师:装配轮胎
从分工到外包模式
- 强龙掌握<E&I>,将<T>外包给地头蛇。
- 掌控<E&I>,外包就不会失控。
- 所以EIT造形支持当今主流的外包模式。
- 强龙不压地头蛇, EIT-based外包正支持此项双赢的商业模式和策略 。