序 3:架构之为物
我用了 20 年的时间,终于有了自己对“程序”的理解——程序是可被组织的元素 1 。这事实上是对程序的可结构化特性的一个阐释,貌似是说着相同的话。然而如果程序是可被组织的,那么“结构化”其实就只是组织的手法之一。这意味着后者——结构化——只是“程序是什么”的一个解,而绝非唯一解。
这就是架构视角的独特处。当它找到一种新的抽象来定义事物时,旧的事物哪怕没有形式与内容上的变化,却在思维框架中有了新的位置、新的理解,以及新的矛盾与冲突。而所谓问题,就来自这些外在视角的变化和内在冲突的产生。架构的目标最终就是直指这些问题,而非解决一个切实的需求,例如写一个程序。
一切的起源在哪里呢?
我将我作为程序员时对“程序”的观察体会写在了《程序原本》这本书中,然而书中最终写到的是一个称为“系统”的东西——它既是一种程序的目标,也是指该目标的规模。那个所谓的系统由一些称为“分布、依赖、消息、子系统”等等的基础部件构成。我想在大多数人看来,这些更多地应该是属于架构师讨论的话题集,而非程序员。然而,到了现在你所读的这本《我的架构思想》中,却只剩下了“系统”这个讨论对象,那些基础构件已经全然不见了。
这一切的根源又在哪里呢?
架构本质上是一个映像。洞见映像背后的事实,就如同从镜子去观照现实,知道镜子是一层,知道镜子中的映像是第二层,知道镜子映像所现的实体是第三层。而至第四层时,还要看得到那实体周围的背景,这是实体之为实体所必须的依托,如绿叶之于红花。再深入到第五层,你得知道背景之外不可见的那些影影绰绰的事实,它们是环境中的残片和推想,它们不可确知而又影响着你在镜子中看见的那个主体。再至第六层……
如此层层渐近,才是真正的“镜之用在鉴”,才是“鉴”这一行为的本意。然而一旦你触及到“鉴作为行为的事实存在”,那么你就看到了镜子一侧的自我,进而看到自我之见,看到由自我、镜鉴和自我之见等等所构成的整个系统,这个系统被称为“观察”。当然,在这整个“被称之观察系统”的系统之外,还要有光。否则一切所谓事实都将湮灭,即便存在,亦无可证实,无可证伪。
架构需要那束光来观照事实,以证明自己的存在。
周爱民
2017.02.26
- 这是我在 SD2C 2016 大会演讲的主题《有前端思想的物联网架构》中提出的观点。 ↩
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论