软件架构与组件化服务开发全解析
1. 软件架构概述
在过去十年间,软件架构逐渐发展成为一门独立的学科。它从高层次描述了系统的粗粒度结构及其特性。只要某种技术能够支持这些结构和特性,就可以认为该技术实现了相应的架构。例如,Jini 技术支持面向服务的架构(SOA),因为它具备 SOA 的相关特性。
将软件架构的概念应用于新技术至关重要,这样才能充分发挥新技术的优势。虽然除了 Web 服务,还有其他技术可以实现面向服务的架构,但由于 Web 服务的兴起,“面向服务的架构”这一术语和相关概念才广为人知。比如,计算机行业使用“服务”这个术语来描述各种平台已有约二十年的历史。
不同技术对面向服务架构特性的支持程度有所不同。举例来说,CORBA 和 Jini 的互操作性不如 Web 服务,但 Jini 在其他方面(如服务发现)可能表现更出色,不过这一点也存在争议。
在面向服务的架构中,接口设计或许是设计服务最具挑战性的部分。尽管几十年来所采用的模块化技术仍然适用于服务设计,但服务设计的难度更大,因为服务所支持的领域并非局限于单个应用程序。因此,最好从业务的概念模型而非单个应用程序入手进行模块化设计。若接口设计得当,服务在其他应用程序中的可复用性将大大提高,企业也能获得更高的投资回报。
Web 服务正促使企业重新关注面向服务架构的概念。尽管高可复用性和松耦合架构一直是许多企业追求的目标,但 Web 服务激发了企业对面向服务架构的兴趣,并为其实现提供了技术支持,助力企业达成愿景。
2. 组件化服务开发基础
2.1 组件化服务开发的定义
软件设计的一个基本原则是将软件模块的接口与实现分离。S
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



