design icon indicating copy to clipboard operation
design copied to clipboard

架构设计相关知识

logo

star fork commit code style

DESIGN

DESIGN 是个人对于软件系统架构的心得和总结。

架构之道,在于权衡;权衡之术,在于取舍。

📖 内容

设计步骤

解决方案(Solution),就是针对某些已经体现出的,或者可以预期的问题、不足、缺陷、需求等等,所提出的一个解决整体问题的可行性方案。就软件系统而言,解决方案就是一个可以解决具体业务问题,并且可以落地的软件系统。

解决方案,毫无疑问是顶层系统设计,这需要设计者既懂技术,也懂业务。

第一步:需求分析

把所有需要的东西聚集在一起,审视问题。不停的提问,以至于我们可以明确使用场景和约束。讨论假设。

  • What:系统的作用是什么?系统的目标是什么?
  • Who:系统的用户群体是谁?
  • How:用户希望怎样使用系统?系统如何为用户提供服务?
  • How many:有多少用户?日活/月活有多少?——用户体量会极大的影响系统的性能要求,从而影响系统的规模和复杂度。
    • 容量:系统需要处理多少数据?
    • 并发量、吞吐量:系统需要每秒钟处理多少请求?
    • 读写比率:系统的读写比率是多少?——读多写少或写多读少决定了不同的架构方案。
  • How much:系统的预算是多少(包括物料、人力成本等)?
  • 输入输出:系统的输入输出分别是什么?

第二步:顶层设计

使用所有重要的组件来描绘出一个高层级的设计。

  • 画出主要的组件和连接
  • 证明你的想法

第三步:组件设计

对每一个核心组件进行详细深入的分析。

第四步:扩展设计

确认和处理瓶颈以及一些限制。举例来说就是你需要下面的这些来完成扩展性的议题吗?

  • 负载均衡
  • 水平扩展
  • 缓存
  • 数据库分片

设计

架构

综合
  • 如何设计系统
  • 系统架构面试总结
  • 系统架构概述
  • 系统高性能架构
  • 系统高可用架构
  • 系统伸缩性架构
  • 系统扩展性架构
  • 系统安全性架构
  • 大型系统核心技术
  • 系统测试架构
微服务
  • 微服务简介
  • 微服务基本原理
安全
  • 认证和授权
  • OAuth2.0

设计模式

面向对象原则

创建型模式

创建型模式提供了创建对象的机制, 能够提升已有代码的灵活性和可复用性。

  • 简单工厂模式 (Simple Factory)
  • 工厂方法模式 (Factory Method)
  • 抽象工厂模式 (Abstract Factory)
  • 建造者模式 (Builder)
  • 原型模式 (Prototype)
  • 单例模式 (Singleton)
结构型模式

结构型模式介绍如何将对象和类组装成较大的结构, 并同时保持结构的灵活和高效。

  • 适配器模式 (Adapter)
  • 桥接模式 (Bridge)
  • 组合模式 (Composite)
  • 装饰模式 (Decorator)
  • 外观模式 (Facade)
  • 享元模式 (Flyweight)
  • 代理模式 (Proxy)
行为型模式

行为模式负责对象间的高效沟通和职责委派。

  • 模板方法模式 (Template Method)
  • 命令模式 (Command)
  • 迭代器模式 (Iterator)
  • 观察者模式 (Observer)
  • 解释器模式 (Interpreter)
  • 中介者模式 (Mediator)
  • 职责链模式 (Chain of Responsibility)
  • 备忘录模式 (Memento)
  • 策略模式 (Strategy)
  • 访问者模式 (Visitor)
  • 状态模式 (State)

重构

  • 代码的坏味道和重构
  • 代码坏味道之代码臃肿
  • 代码坏味道之滥用面向对象
  • 代码坏味道之变革的障碍
  • 代码坏味道之非必要的
  • 代码坏味道之耦合

UML

  • UML 快速入门
  • UML 结构建模图
  • UML 行为建模图

📚 资料

🚪 传送

◾ 🏠 DESIGN 首页 ◾ 🎯 钝悟的博客

你可能会感兴趣: