每个程序员都有成为架构师的梦想,那我们来聊聊到底什么是架构?
什么是架构
目前主流的有两种定义:组成派和决策派
组成派
架构是顶层设计
首先,“系统是一群关联个体组成”,这些“个体”可以是“子系统”“模块”“组件”等;
架构需要明确系统包含哪些“个体”。
其次,系统中的个体需要“根据某种规则”运作,架构需要明确个体运作和协作的规则。
决策派
软件系统架构-是由一个个决策组成的有机整体
架构设计:根据需求、限制决定技术、框架和实现
架构的目的
业务赋能:增强业务场景化的能力
通过技术手段来实现业务,如秒杀,美图秀秀等。
快速发展:快速发展
互联网效应,应对业务的爆发式增长。
规模效应:降低业务成本
通过技术手段减少成本,如利用图像识别减少人工审核。
通过技术手段增加业务效率,比如一键发布功能,智能供应链。
技术服务于业务
架构设计的主要目的是为了解决软件系统复杂度带来的问题。保证系统有序
架构的分类
按照不同的角度,架构可以有很多分类,但一般来说,主要分为业务架构、应用架构和技术架构。</