ad

读懂《Java架构之完美设计 实战经典》_为更好架构做准备_1.1 架构来源

admin 86 2023-10-26

【摘要】 本书摘自《Java架构之完美设计 实战经典》一书中第1章,第1节,由颜廷吉编著。

1.1 架构来源

架构一词最初来源于建筑行业,指的是人们对一个结构内的元素及元素间关系的一种主 观映射产物。所涉及的技术有地基、整体结构、外观、供水系统、供电系统、煤气系统、网 络系统、安全系统等。设计师要把这些因素结合起来传达给施工者,用以指导建设,同时也 给客户描绘出一个整体愿景图。

如今架构已经被广泛应用到企业管理和IT 等领域,并演变成了各个领域的核心技术 之一。

1.1.1 软件架构

软件架构是软件系统的顶层结构,是对重复性业务的抽象和未来业务拓展的前瞻,关注 系统的可用性、信赖性、扩展性、安全性以及稳定性等非业务方面。

读懂《Java架构之完美设计 实战经典》_为更好架构做准备_1.1 架构来源

架构的设计目标是解决软件的复杂性,主要体现在以下两方面:

(1)决定应用程序的结构

大中型企业的应用程序开发都具有一定的规模,因此会把系统中的一部分功能划分成很 多组件。所以应用程序的结构应该从以下方面去考量:

1)如何划分组件,要决定组件的划分原则与标准,即组件粒度大小。

2)如何实现架构组件之间特定的协作与交互。

3)如何使架构组件与业务组成一个系统。

4)如何形成应用程序自己的架构风格。

(2)决定应用程序的处理方式

处理方式指的是实现应用程序所提供的各种服务的通用机制。服务是指系统“业务上能干什么",即"What", 而处理方式指的是“技术 上如何实现",即 “How"。 例如:在处理由多个页面 组成的数据登录业务时,经常会发生重复提交的问题, 为解决此问题而选择的Token 方案,就是架构的处理 方式。

架构涉及一系列对设计和编码起约束作用的策略性 的决定、规则和模式。架构的决定是最基本的决定,它 的变将产生很大影响,因此要做好充分的架构验证, 如图1-1所示

1.1.2 架构单位

图1- 1 架构决定性作用

《软件品质之完美管理 实战经典》 一书中介绍了软件品质管理的基本单位是模块, 而软件架构的单位是组件 (Componet), 即实现了架构的必要功能,可以用于分布、集成、 交付、替换的模块单元,如图1-2所示。模块单元,不一定是一个单一的代码单元或单一 的二进制文件,在Java中是由一个或多个类共同来完成其相应的服务。

模块化是指解决一个复杂问题时自顶向下逐层把软件系统划分成若干模块的过程。软件模块化技术是软件架构技术中最早讨论的

技术之一,每个模块完成一个特定的功能,所有的模块按某种方法组装起来,就构成了整个系统所要求的功能。架构设计中所关注的“隐藏信息”“提高开放性”“高内聚”"低耦合”等亦是当今架构技术的重要原则,可以说模块化的结构设计技术是软件架构技术的根源。模块与组件是实际工作中经常用到的术语,根据上下文不同,有不同的含义。 一般把系统从逻辑角度拆分后得到的单元称为“模块”,而从物理角度拆分 后得到的单元称为“组件”。划分模块的主要目的是职责分离,划分组件的主要目的是代码 复用。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们 [email protected] 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:读懂《Java架构之完美设计 实战经典》_为更好架构做准备_2.3.4 Scrum 开发模型
下一篇:读懂《Java架构之完美设计 实战经典》_为更好架构做准备_2.7.4 演化思维
相关文章

 发表评论

暂时没有评论,来抢沙发吧~

×