认识架构最重要的事
你要知道你所面对的是一个系统而不是一件事。
你可能每天会面对一堆待处理的事,如果你看到的只是事的过程和结果,而非事情本身,你就仅仅是工程师,一位实施者。跳出这个框子,你面临的其实是一个系统,你看清楚这个系统之后,还要看清楚这个系统里面的关键要素。
举个例子
一个人在河的前面想过这条河,有一条船放在那里。
如果你认为过河是一件事,你的第一件事是跳到船上想办法把船划过去。你遇到的第一个问题可能是你没有划船的技能。
但是如果你是一个架构师,你的第一个问题是:这是什么东西?你可以定义其为一个障碍,河这个东西对你来讲是阻碍,你跨过阻碍的方法不一定是划船。我架一个桥不行吗?我直接跳下去,游泳过去不行吗?另外,这条河是不是障碍还是一个问题,如果它很浅呢?你非要认为它是障碍就制造了矛盾,系统中也许不存在这样的矛盾。
所以,从架构思维的角度来讲,第一件事是要看到这是一个系统,第二件事是定义问题,第三件事是看到这个问题是不是真实存在。找到这个问题跟方案之间的关系在哪里,你就会做架构了。
领悟、领域、领袖
第一个部分就是领悟的能力,知道划船不是第一要素,思考问题和定义问题以及否定这些问题的整个过程就是架构思维。
第二个部分是领域能力的部分,你得知道河流,你得知道船,你得知道桥,这些东西是属于领域的部分。
第三部分是领袖能力,你真的想要造一座桥的话,你得组织一群人把桥造出来;如果你们是4、5个人,你的决策是我往上走一公里尝试一下寻找源头,那么你怎么让其他4个人跟着你往那一公里的上游走,这是领袖能力。否则你就会自己变成排头兵,“你们大家等着,我去上游看看”。如果你是领袖的话,可以安排一些人去上游看看,另一些去下游看看,半个小时后在这里集合。这就是领袖,把你设想的解决问题的架构实施下去。
注:本文节选自《码农》(第14期)里的文章《真正的架构师是没有title的》,作者 周爱民。 略有改动。