架构学习-general

  1. 1. 架构Intro
    1. 1.1 架构世界的历史背景
  2. 2. 概念梳理
    1. 2.1 系统与子系统
    2. 2.2 模块与组件
    3. 2.3 框架与架构

1. 架构Intro

  • 架构设计的关键思维是判断和取舍,程序设计的关键思维是逻辑和实现

1.1 架构世界的历史背景

  • 机器语言
    • 01书写
    • 难读,难写,难改
  • 汇编语言
    • 用地址符号或标号代替指令或操作数的地址
    • 面向机器的语言,不够友好
  • 高级语言
    • Fortran 公式翻译器
    • LISP 枚举处理器
    • Cobol 通用商业导向语言

2. 概念梳理

2.1 系统与子系统

系统泛指由一群有关联的个体组成,根据某种规则运作,能完成个别元件不能单独完成的工作的群体

  • 系统
    • 关联:相互之间有关联
    • 规则:按照指定的规则运作
    • 能力:产生了新的个体不具备的能力
  • 子系统
    • 更大系统的一部分

划分系统的时候一般是按照业务系统来划分的,可能一个子系统里面会有服务层,数据层,blabla.

2.2 模块与组件

  • 模块

    • 互相有紧密关联的软件组织
    • 程序和数据结构两部分
    • 模块作为合成的单位
    • 模块的接口表达了由该模块提供的功能和调用它所需的元素
    • 模块是可以分开来编写的单位
  • 组件

    • 自包含的,可编程的,可重用的与语言无关的软件单元
  • Summary

    • 模块和组件都是系统的组成部分,只是从不同角度来拆分了系统
    • 逻辑角度拆分系统,得到的就是模块;划分模块的主要目的是职责分离
    • 划分组件的主要目的是单元复用
  • E.G

    • 一个信息管理系统,逻辑角度,可以划分成登录注册模块,个人信息模块,个人成绩模块
    • 物理角度,Nginx,Web服务器,Mysql

2.3 框架与架构

  • 框架
    • 为了实现某个业界标准或完成特定的基本任务的软件组件规范,也指为了实现某个软件组件规范时,提供规范锁要求的基础功能的软件产品
    • 框架是组件规范 - MVC MVVM J2EE
    • 提供基础功能的产品
    • 面向编程或配置的半成品

架构指软件系统的基础结构,创造这些基础结构的准则以及对这些结构的描述

  • 软件架构指软件系统的顶层结构
    • 系统是一群关联个体组成,可以使子系统,模块,组件等
    • 系统中的个体需要根据某种规则运作

转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 stone2paul@gmail.com

文章标题:架构学习-general

文章字数:662

本文作者:Leilei Chen

发布时间:2020-02-04, 11:58:33

最后更新:2020-02-04, 11:59:05

原始链接:https://www.llchen60.com/%E6%9E%B6%E6%9E%84%E5%AD%A6%E4%B9%A0-general/

版权声明: "署名-非商用-相同方式共享 4.0" 转载请保留原文链接及作者。

目录
×

喜欢就点赞,疼爱就打赏