什么是架构?
什么是架构?
生活中总是看到充斥着各种架构词汇,如下图
又例如我现在所在的部门负责的技术架构
架构的本质是以拆分生命周期的方式来做增长
什么是生命周期
生命周期:事物的生老病死
人每一天的活动,眨一次眼、吃一口饭,都是一个生命周期,生命周期又包含生命周期,每个生命周期都有一个主体
以<用户购买>生命周期为例,可以拆分成
- <物品选购>(物品意向)
- <物品执行购买>(购买行为)
拆分出来的物品选购可以外包,例如导购、网上购物、智能推荐
为什么会产生架构
人最终都会消逝,而人总想活得更久、占有更多、享受更多,如何才能延长自己的生命?
同样的时间创造出更多的产出,相当于把自己的生命延长了。
于是有了所谓的时间管理,为了让每份时间更高效,又出现了精力管理
古代,一个人必须要先种田,完成粮食的产生,并消费粮食,结束粮食的生命周期才能完成能量的获取以维持生命,而粮食的生命周期外包出去后,人类的核心生命周期并没有受到影响,却大大的节省了时间,延长了自己的生命。正是因为有了分工,才形成了人类社会
什么是核心生命周期
核心生命周期:必须由自己完成的事
围绕核心生命周期切分,非核心的生命周期独产出来,并行地开展工作,设立沟通机制,使非核心围绕核心做出贡献
被切分的生命周期,如果连续的时间内持续执行,就不能切分出去,例如:比如孕妇十月怀胎,不能切分成十个人一个月完成
稻盛和夫就是一位牛逼的架构师,提出阿米巴经营
什么是业务
解决人类问题,支撑人类自身生命周期,使人类获得利益
什么是技术
通过人为创造条件,让指定的规律按照人类的意愿发生
软件的核心是什么
软件的核心:模拟人类的业务
软件最早更多的是应用在科学计算,对于大部分行业而言门槛比较高,建立在数学、物理、电子电路等学科
传统企业业务增长方式:增加人和空间,成本很高,而虚拟空间的增长成本远低于真实空间,拆分生命周期开始转到了虚拟空间。
以语言类似,很多人学习英语等语言,最终从事语言本身研究的人少之又少,软件主要还是服务于其他行业的,所以我们需要涉猎各行各业的知识,科学、教育、经济、历史、艺术、心理等等。
不变的规律:让非核心生命周期的处理更少地占用人类的时间,变相的延长人类生命
软件架构师的职责是什么
- 理解业务组织架构,对业务生命周期拆分
- 根据业务生命周期对软件开发生命周期进行拆分
- 结合两者匹配合适的组织架构
简单地说:架构师拆分生命周期,技术人员实现生命周期
技术、业务与架构的联系
- 业务是核心,技术是解决业务问题的工具,架构是让业务长大的方法
- 架构用技术来实现拆分,而技术需要架构来合理组织以提升效率
- 技术为解决业务问题而产生,没有了业务技术也没有存在的前提
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· C++代码改造为UTF-8编码问题的总结
· DeepSeek 解答了困扰我五年的技术问题
· 为什么说在企业级应用开发中,后端往往是效率杀手?
· 用 C# 插值字符串处理器写一个 sscanf
· [翻译] 为什么 Tracebit 用 C# 开发
· 腾讯ima接入deepseek-r1,借用别人脑子用用成真了~
· Deepseek官网太卡,教你白嫖阿里云的Deepseek-R1满血版
· DeepSeek崛起:程序员“饭碗”被抢,还是职业进化新起点?
· 深度对比:PostgreSQL 和 SQL Server 在统计信息维护中的关键差异