《Unity3D高级编程之进阶主程》第二章 架构(二) - 软件系统架构思维方式

软件研发、系统架构中最重要的能力------抽象能力。

架构师先要在大脑中形成抽象概念 ,然后是子模块分解 ,以及子模块之间的沟通方式 ,然后是依次实现 子模块,最后将子模块拼装组合起来,形成最后系统。我们常说编程和架构设计就是搭积木,优秀的架构师受职业习惯影响,眼睛里看到的世界都是模块化拼装组合式的。

思维方式

1、分层思维

构建一套复杂系统,我们把整个系统划分成若干个层次,每一层专注解决某个领域的问题,并向上提供服务。这样的抽象做法,让复杂的事务变得更加清晰有序。有些层次并不一定是横向的,也可以是纵向的,纵向的层次贯穿其他横向层次,称为共享层。

架构案例

中小型的Spring Web应用程序,三层架构:

Linux操作系统

TCP/IP协议栈

2、分治思维

分而治之也是应对和管理复杂性的一般性方法。

分治的思维流程:

作者2015年思考Unity3D手游项目开发整体流程时,用分治法抽象出来的对整个问题的分解。

3、演化思维

架构既是设计出来的,同时也是演化出来的,对于互联网系统,基本上可以说是三分设计,七分演化,而且是在设计中演化,在演化中设计,一个不断迭代的过程。

架构师除了要利用自身的架构设计能力,同时也要学会借助用户反馈和进化的力量,推动架构的持续演进,这个就是演化式架构思维。

从单块架构开始,随着架构师对业务域理解的不断深入,也随着业务和团队规模的不断扩大,渐进式地把单块架构拆分成微服务架构的思路,这就是演化式架构的思维。

相关推荐
智慧化智能化数字化方案3 分钟前
数据架构进阶——解读数据架构管理培训【附全文阅读】
大数据·架构·数据架构管理培训·企业it架构·it治理·it规划·it蓝图
行走正道12 分钟前
MateChat记忆化引擎设计:长期记忆与用户画像构建方案
microsoft·架构·向量检索·用户画像·matechat
光头程序员29 分钟前
学习笔记——vite 打包构建优化之tree shaking
笔记·学习
安得权38 分钟前
Office365 SSO Azure的配置笔记
笔记·flask·azure
晚霞的不甘1 小时前
跨端一致性与体验统一:构建面向全场景的 Flutter UI 自适应架构
flutter·ui·架构
走在路上的菜鸟1 小时前
Android学Dart学习笔记第十一节 分支
android·笔记·学习·flutter
郑州光合科技余经理1 小时前
技术架构:跑腿配送系统海外版源码全解析
java·开发语言·前端·数据库·架构·uni-app·php
智元视界1 小时前
智慧金融智能风控:AI算法如何服务小微企业
人工智能·金融·架构·云计算·数字化转型·产业升级
峰顶听歌的鲸鱼2 小时前
13.docker部署
linux·运维·笔记·docker·容器·云计算
自不量力的A同学2 小时前
WordPress 6.9「Gene」发布
人工智能·笔记