整洁的软件架构设计

目录

  • 架构的价值
  • 架构模型
    • 三层架构
    • MVC
    • 领域驱动模型
    • 四层架构
    • 嵌入式软件架构

架构的价值

软件价值 描述
行为价值 包括需求的实现,以及可用性保障(功能性bug,性能,稳定性)几乎占据了我们的90%的工作内容,支撑业务先赢是我们工程师的首要任务
架构价值 业务通常是不明确的,飞速发展的,这时架构就无比重要,让我们的software more soft,终极目标就是以最小的人力成本来满足构建和维护系统的需求

架构模型

三层架构

整洁的软件架构设计_第1张图片
典型代表就是C#应用,编程工具已经将这三层隔离的十分清晰了,一般都在控件的事件里直接写控制逻辑

MVC

整洁的软件架构设计_第2张图片
典型代表就是web应用,由控制器来掌控全局,根据用户的请求决定用哪个业务模型处理,处理后决定用哪个HTML展示给用户

领域驱动模型

整洁的软件架构设计_第3张图片
领域层为核心业务,应用程序根据各应用场景提供适配器API,主要一个是应用接口层,主要是用于应用控制,另一个是数据访问层,用于数据获取和持久化。实现数据库与应用层的解耦(如DB可以随意切换),各适配器的模块测试

四层架构

整洁的软件架构设计_第4张图片
用户展示层: 负责展示
应用服务层: 各个场景业务
领域层: 核心业务层,一些核心业务,提供给场景业务
基础设施层: 数据库的操作接口,中间件,一些通用控制代码,如链表操作接口,消息事件接口等

嵌入式软件架构

整洁的软件架构设计_第5张图片
基础设施层:负责和硬件打交道的部分,如直接读写一些寄存器
基础API库控制层:将基础功能模块封装成一些API提供给上层调用,很多已经有现成的库可以用了,如socket
领域层:领域层,主要是一些为场景业务提供服务的一些“店铺”即核心业务
各场景业务:各场景业务,通过将自己的事情注册到领域层业务的队列里,让他们来为各应用场景业务服务

你可能感兴趣的:(软件架构,整洁的软件架构,嵌入式架构,应用架构)