zoukankan      html  css  js  c++  java
  • 《C++ API设计》 4.5 架构设计

    摘抄于《C++ API设计》 4.5

    创建架构的过程步骤:

    1.分析影响架构的功能性需求

    2.识别架构的约束 并 说明

    3.创造 系统的主要对象,并确定之间的关系

    4.架构交流 与 文档

    架构的约束,影响架构的因素:

    1.组织因素: 预算、时间、团队大小、专业知识等等

    2.环境因素:硬件、平台(window、mac、linux)、依赖的api、服务端约束、协议、文件格式、数据库、开发工具

    3.运行因素:性能要求、内存利用率、并发性、扩展性、安全性、网络带宽 等等

    创建关键对象 分类方法

    1.自然语言:用语言描述,名词表示对象,动词表示函数、形容词 为属性

    2.属性:将相似属性、特性的对象分为一组

    3.行为:根据 行为的发起者和参与者 推导出对象所属集合

    4.原型:对各类 对象找到 更一般的原型,如 懒人沙发、高脚椅、躺椅,原型都是椅子

    5.领域(Shlaer-Mellor 分类法):先对 系统水平划分,创建一些通用 领域。再对每个领域 独立分析,进行垂直划分。

    好处:易构成复用的概念。

    架构模式

    1.结构化模式:分层模式、管道与过滤器模式 和 黑板模式

    2.交互式系统:模型-视图-控制器、模型-视图-表示器、表示-抽象-控制

    3.分布式系统:客户端/服务器、三层架构、点对点、代理模式

    4.自适应系统:微内核模式、反射模式

    避免循环依赖

    1.循环依赖问题:无法对每个组件 进行单独测试

    2.循环依赖问题:修改代码时,需重新编译 关联的库

    3.解决方法: 回调、观察者、通知系统

    API 是 由逻辑关联组件组成的无环层次结构

    架构的交流与文档

    文档 需要包含 整体设计的原理阐述:设计时,对各个可选方案和权衡做了哪些考虑,最后为何选出该结构。

  • 相关阅读:
    C#编程总结(三)线程同步 多线程
    配置 Spring.NET
    C# Redis
    WPF MvvmLight RelayCommand 绑定Command 的使用
    WCF编程系列(一)初识WCF
    C#/WPF程序开机自动启动
    C# 创建Windows Service(Windows服务)程序
    前端Js框架汇总
    列式存储和行式存储
    llvm-3.4.2 编译失败 解决方案
  • 原文地址:https://www.cnblogs.com/q1076452761/p/14498820.html
Copyright © 2011-2022 走看看