上周四的时候,公司的唯一一位国内的架构师,来做培训。顺便就记录一下,我的一些思考和想法吧。

前言

在很早以前的时候,我的个人职业规划的目标就是架构师,在后续的工作,学习了解中。越来越认识到,成为一个架构师是如何的困难,渐渐也就淡忘了这个想法。在这次的培训中,他讲解的很多的内容,现在已经忘记的差不多了(完全符合学习金字塔),只能分享一下我个人的观点了。

学习金字塔

抽象归纳的能力

在我的观念中,这是一个非常非常重要的能力。现在的所有的科学结论,都是从这个能力上长出来的。
人类发明的工具,越来越多的代替人类的功能延伸(如望远镜延伸视野,起重机延伸力量);就连大脑也有逐渐被替代的趋势,如现今火爆的人工智能;但我个人认为,目前唯一最难最替代,就是抽象归纳的能力。

架构师的作用,应该是从现实的环境中,自下而上一层层的抽象归纳,将底层的大量问题,归纳为四五个高度抽象的问题;然后,解决这四五个高度抽象问题之间的逻辑问题,说不定还顺带解决了未发现的细节。
比如,就像物理定律的发现,在实际的实验中,归纳总结出规律,验证规律;再总结,再验证,不断地的循环。然后,达到普遍使用的情况。我现在想到的就是,麦克斯韦方程组可以解释宇宙间一切的电磁现象,恰当的数学形式才能充分展示经验方法看不到的整体性

如下图的举例,要解决实际的问题,解决方案的产生,应该是由从下而上来层层抽象归纳;但是在实际中,很多人都是从上而下来一步步的规划,这样就非常容易产生偏离,成为屠龙术:
可参考,项目管理和系统工程中的WBS工作分解结构

  • 具体的功能;实现代码的部分,大部分都是CRUD 增删改查的场景;
  • 模块,一系列功能的抽象;一般软件开发人员来实现,如人员管理,邮件管理模块;
  • 子程序,多模块的汇总;一般由核心程序员来做,比如,后台管理,邮件监控服务;
  • 领域,多个子程序互相辅助组成;一般是项目经理来划分的,比如,人力资源,财务等原子领域;
  • 单系统,多领域组合成,可以独立运作;大多是项目经理所在的层次,大项目也会有架构师的参与;抽象的层次会,如企业资源管理系统;
  • 多系统;一定是由架构师所决定的层次,要定义各个系统的职责范围,接口协议规则,数据的流转方式等;
  • 最上层是决策层制定的战略目标,比如提高周转率,降低失业率等,这些极度抽象的事物;

举例-软件系统分层

架构限制软件

个人认为,一个好的架构,是要在设计阶段就限制软件开发的发展方向功能范围,不允许到后期,出现南辕北辙的情况。目的也是为了,节约成本(时间成本资金成本)。
假设软件的目标,是制造一个三角形,在前期就通过各种工具定义规则,限定它不会变成四边形或五边形。突然想到,为什么不把三角形称为三边形,网上大概查了一下,只是大家的约定成俗。

架构的作用就是:

  • 定义,软件中的关键组织;比如,定义什么是人员,分哪些部门;
  • 制定软件中的运行规则;比如,接口的定义;协议的使用;
  • 整个软件生命周期中,人员的行为规范;比如,代码规范,文档规范;

大型的软件设计而已

越来越发现,软件架构就是大型的软件设计。有点类似于分形自相似

分析-引用自维基 分析-引用自维基

软件架构,是由一个个小型的软件设计组成;而一个个小型的软件设计,则是由更小的软件设计组成;而这个软件架构又是另一个软件中的软件设计。越来越像,那条著名的衔尾蛇(咬着自己尾巴的蛇)一样。没想到还真找到了,这副物理课本上的图片。

衔尾蛇

说起来很绕,但是如果理解了的话,可以解释很多的社会现象。比如,一个家庭,一个社区,一个县,一个省,国家。在结构上是相似的,也应了成语以小见大。但这也仅仅是结构上面的,千万不能管中窥豹

  • 一个个人在意的指标是:赚了多少现金,有多少现金存款,工作如何,社会关系如何等,这一类非常具象的事物。
  • 一个县市在意的指标是:引入了企业的数字,税收收入数字,犯罪率等,这一类的抽象程度明显高于个人;
  • 一个国家在意的指标是:CPI,PPI,PMI,M1,M2,基尼系数,GDP等等这类,大部分人听都没有听过的名词。更别说理解里面的内涵。因为国家的决策者,所处的高度,决定他们只能通过这一类高度抽象的事物,来**决定这辆“火车”**的行经方向

T型人才和π型人才

不太认同他的关于π型人才的观点,我认为只会存在T型人才。

  • I型人:只拥有单一专长,较无法拥有多领域的专长。
  • T型人:就是瞄准一个领域,不断向下钻研,形状像一个T字。可以使你有基本的广度以及一个专长领域的深度。
  • π型人:具有双专长、熟悉双领域、怀有双视野、适任双职位、拥有双文凭、或精通双外语的人,都可称为「π型人」。

因为,人类目前的领域中,不存在绝对的孤立。某一领域越深入,它的层次越高,就会可能与其他领域相连通。到最后,就到达所有学科的根基哲学

现代的物理学家,为了大统一理论前仆后继,认为宇宙间万物可以用一种理论来解释。

引自 百科

以麦克斯韦方程组为核心的电磁理论,是经典物理学最引以自豪的成就之一。它所揭示出的电磁相互作用的完美统一,为物理学家树立了这样一种信念:

物质的各种相互作用在更高层次上应该是统一的

架构师需要的三个条件

最后,我向他验证了一下,架构师的需要的三个条件。

  • 专业能力,T型的那一竖条;
  • 学习能力,不断扩展T型那一横条;
  • 培养训练,通用能力;整个源自于,我认为大部分领域中,都包含的能力。比如,交流沟通,自制力,团队协作,应变,创新等;

后记

其实很早的时候(大概半个月前),我就有记录这篇文章的想法。可是,最近的行动力,真的真的真的很差劲。可能是受JLPT考试的打击,心态大崩导致的。哪怕非常的空闲,也想去玩游戏,看视频去浪费,也不愿意去学习,来写文章,这类有意义的事情。我目前的状态,还是处于非常😟😟😟。

源自 佛教
凡夫畏果
菩萨畏因