• 《一线架构师实践指南》读后感(二)


        在后面的学习中也逐步明确了架构是什么,架构的本质,这次阅读的内容也是围绕着架构展开的,那么下面就谈谈架构

    在软件行业,对于什么是架构,都有很多的争论,每个人都有自己的理解。因此我们在讨论架构之前,我们先讨论架构的概念定义,概念是人认识这个世界的基础,并用来沟通的手段,如果对架构概念理解不一样,那沟通起来自然不顺畅。Linux有架构,MySQL有架构,JVM也有架构,使用Java开发、MySQL存储、跑在Linux上的业务系统也有架构,应该关注哪一个?想要清楚以上问题需要梳理几个有关系又相似的概念:系统与子系统、模块与组建、框架与架构:

    1.区分系统、模块、组件、框架和架构

    • 系统(system)和子系统:有关联的个体,根据某种规则运行,共同完成独特的功能。子系统:系统的组成部分。
    • 模块(module)和组件(component):模块和组件都是系统的组成部分,只是从不同角度拆分系统而已。 从逻辑角度拆分得到的是模块,从物理角度拆分得到的是组件。 模块是为了实现职责分离, 组件是为了实现复用。
    • 框架:为了实现某个业界标准或完成特定基本任务的软件组件规范,按照规范提供所要求基础功能的软件产品。

    • 架构:顶层设计

    2,架构的分层和分类


    在软件架构中,经典三层架构自顶向下由用户界面层(User Interface Layer)、业务逻辑层(Business Logic Layer)与数据访问层(Data Access Layer)组成。该分层架构之所以能够流行,是有其历史原因的。在提出该分层架构的时代,多数企业系统往往较为简单,本质上都是一个单体架构(Monolithic Architecture)的数据库管理系统。这种分层架构已经是Client-Server架构的进化了,它有效地隔离了业务逻辑与数据访问逻辑,使得这两个不同关注点能够相对自由和独立地演化。

  • 相关阅读:
    SQLite Java Wrapper/JDBC Driver(收集)
    JAVA 并行运行(收集)
    log4net使用方法(转载)
    WMI服务故障,VBS脚本无法运行错误
    ArcEngine中UID使用资料收集
    使用 ArcGIS Engine Runtime 制作安装包(转载)
    Eclipse安装WindowBuilder Pro(转载)
    C#操作SQL Server数据库
    自动化测试 (三) Web自动化测试原理
    HTTP协议 (六) 状态码详解
  • 原文地址:https://www.cnblogs.com/dinghaisheng/p/13105114.html
Copyright © 2020-2023  润新知