关于架构的几件小事:架构是什么

2020 年 05 月 07 日 阅读数: 727
关于架构的几件小事:架构是什么

前言

这是我架构师系列的第0篇。这几年经历了很多很多的事情。有幺蛾子的项目,有公司的重点项目,有加入公司的架构师组织,也有通过公司的架构师认证。业余时间也有去学习摄影和艺术。在这个过程中,结识了很多很多人,有国内的、有国外的。他们给我的思想上带来很大的冲击。很多之前非常模糊的念头,在我的脑海中渐渐清晰。我觉得是时候拿起笔来写点什么了。由于架构的理解多来自特定公司的理论体系和实践,所以我对架构的理解可能和大家不大一样。也欢迎大家交流。当然,摄影方面的也欢迎大家交流,我尽量使用自己拍的照片作为题图。

架构到底是啥

架构就像是那啥,每个人都在谈论它,但从没没人真正的见过它。

我曾经被这个问题困扰了很长很长时间。甚至为了回答这个问题,我加入了现在所在的公司。在经过系统化的学习以及很多架构师交流之后。我意识到,架构它不是一个东西,它甚至可以和coding没关系。架构是一种层次化思考的方法论。它将业务目标和具体的实施方法连接起来,通过多个层次描述出来,让不同层次的人都可以理解这个共同的目标,并找到自己合适的位置。

这就是架构的复杂之处。每一个架构师,每一个项目,似乎产出的东西都不大一样。甚至本身就有好多好多种架构师:系统架构师、软件架构师、业务架构师、企业架构师... 即使是技术方面的架构师也有很多种:大数据架构师、应用架构师、前端架构师... 很难说一些技术化的组件图就是架构,也很难说一行code 都没有的组织结构图不是架构。架构是这些东西的一个超集。具体的技术,具体的业务流程,都只是架构的一个面。架构就是由这些面组合起来的一个整体。我的理解,架构就是从具体术到了道的升华。架构师是道,是体系的蓝图和指导,它落地成了具体的技术和对应的组织形式、流程。但是架构是有共性的,即使是不同的架构师,互相交流起来其实也没多少障碍。大家基本可以迅速的明白对方的点,迅速的达成一致。因为大家在方法论层面是一致的。

层次化

没有一种文档能描述清楚一个架构设计。要想描述清楚一个架构设计,我们需要一大堆文档,还需要从不同的高度来逐层阐述。

架构设计的输出,一定是一个多种层次的输出。正如一个企业的组织形式。一定是从高到低存在不同的层次。可能大家已经想到了,最高的架构设计其实是人的架构的设计、组织结构的设计。系统是组织结构的映射。所以大型企业特别关注与高层设计。一开始的出发点就错了,那是没办法挽救的。架构设计也是一样的。最高的层次就是业务目标的层次。然后围绕这个业务目标,需要那么人和系统对接,需要实现什么样的价值。内部需要有哪些模块等,层层推进。在这个过程中,要和各种各样的人和需求打交道。将不同的需求整合在一起,形成一个业务和性能都能接受的设计,让大家认知都保持一致。

分层设计还有一个好处,就是可以将问题的复杂度限制到一个可以理解的范围内。这也和人类思考的本质相一致,分层抽象化。实际上没有任何一种文档或者设计图,能画下上千个组件。即使有,这种文档也是不可读的。所以有的解决方案,洋洋洒洒几百页PPT也很正常。为了能将每一页的信息量限制在一个可理解的范围内,必须进行抽象和分层。

自证的、可落地的

空中楼阁不是架构,严谨的自证才是

OK,到现在咱们有层次化的一些文档或者设计了。但是这不是重点。重点是这些层次化的文档是需要连接起来的,是自证的。在逻辑上是严丝合缝的。也就是说,下一次层是上一层的延展,下一层是上一层的证明。其实我们在做架构工作的时候,也会经常的往前审视,经常发现上一层次的设计中存在各种问题,或者有遗漏。这个时候一般都会打回重写。直到所有的冲突和遗漏都被处理掉了。所有的文档和设计层层递进,却又互相映证。直到最后一层应该是一个可发布的、可执行的、可落地的。否则,始终是空中楼阁,那不是架构。当然,最后还应该用需求来验证架构设计是否和之前的出发点一致。不能实现业务目标的系统,不管处理能力有多大,都是失败的。

Beyond Technical is ART

摄影艺术来源于器材,高于器材。同样架构构建在技术之上,但是高于技术。

这是一个我比较喜欢的品牌的广告slogen。我是一个码农出身的人。从前是码农,现在是码农,以后还是码农。但是我现在越发的感觉到。技术人应该尝试去跳出技术思考。coding 只是解决问题的手段,但不是问题本身。摄影也是非常类似。技术的发展让摄影变得容易了。但是镜头背后的脑袋变得越发重要。一个合格的摄影师,必须在拿起相机之前,就能在脑海中想象出成品的样子。否则很难拍出好的片子。即使蒙出一两张还可以的,也无法保证质量的重现。架构也是类似的。coding 是解决问题的最后一公里。在这之前,架构师应该在脑海中,在文档中,用不同的手段,面向不同的人描绘出项目应该有的样子。Beyond Technical is ART。架构也是ART。

用户头像

北风

关注

不想当咖啡师的架构师,不是好摄影师 2019.03.26 加入

斜杠中年

评论 (2 条评论)

发布
用户头像
文章段落间建议空一行,这样比较方便阅读。请尽量不要使用 “TMD” 等词。
16 小时前
回复
谢谢,我修改了一下。朋友看了也说排版有问题,需要好好琢磨琢磨,学习一下。
15 小时前
回复
用户头像
感谢分享,文章我推荐到InfoQ官网首页了。
17 小时前
回复
没有更多了
关于架构的几件小事:架构是什么