Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[arch] 架构 #4

Open
Alice52 opened this issue Sep 22, 2023 · 1 comment
Open

[arch] 架构 #4

Alice52 opened this issue Sep 22, 2023 · 1 comment

Comments

@Alice52
Copy link

Alice52 commented Sep 22, 2023

image

  1. 架构的本质: 是要素 & 结构

    • 要素: 指架构中的主要元素
    • 结构: 结构是指要素之间的相互关系
  2. 组织架构

    • 要素: 人(定义人的职责划分)
    • 结构: 人与人之间的关系(人与人之间协作关系)
  3. 应用架构: 难点(怎么落地-最佳实践)

    • 要素: 代码(class | conponent | package | module)
    • 结构: 代码组织(管理组织代码)
    • 原则:
      1. ${\color{red}提倡以业务为核心(多核心/不同domain)}$
      2. ${\color{red}分离业务复杂度和技术复杂度 }$
      3. ${\color{red}抽象共性,合理分层(module)/分包: 职责单一 + 解耦_外部_依赖 + 提供最佳实践}$
    • 核心|目标
      1. 从繁杂的业务系统中提炼出共性, 找到解决业务问题的最佳共同模式
      2. 定义良好的应用结构,提供最佳实践
      3. 应用系统处理复杂业务逻辑也应该是分层的,下层对上层屏蔽处理细节,每一层各司其职,分离关注点

reference

  1. https://blog.csdn.net/significantfrank/article/details/110934799
  2. https://blog.csdn.net/significantfrank/article/details/132241986
@Alice52
Copy link
Author

Alice52 commented Sep 25, 2023

应用架构

  1. 分层架构
  2. 六边形架构
  3. 洋葱圈架构
  4. 整洁架构(Clean Architecture)
  5. DDD架构
  6. COLA

系统典型(共有)业务

  1. 接收request,响应response;
  2. 做业务逻辑处理,像校验参数,状态流转,业务计算等等;
  3. 和外部系统有联动,像数据库,微服务,搜索引擎等;

@Alice52 Alice52 pinned this issue Sep 25, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant