上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
1.1 应用软件的总体架构
通常,应用软件的总体架构,可以分为两大部分:应用层和平台层,如图1-1所示。
图1-1 应用软件架构
平台层提供基础框架和大量可重用组件,这些组件以一定的接口方式暴露出来,供应用层来调用。平台层通常不提供与具体业务相关的逻辑处理,而是提供:
● 与业务无关的功能组件,比如日志、安全、线程池、连接池、告警监控等。
● 多种业务之间可共用的机制,如工作流、事件通知机制、远程通信等,这部分也与具体的业务无关。
应用层提供具体应用相关的逻辑处理部分,包括页面、应用逻辑、应用数据等。
平台层和应用层,是个逻辑划分的概念,在实际的软件实现中,平台层和应用层都可以由多个层来实现,也可以合并到一个程序中,这要视软件系统的规模和具体需求而定。
从图1-1可以看出,构建一个高度可重用的平台层,可以使应用开发人员只需集中精力关注业务逻辑,而与业务无关的功能组件和机制都由平台层提供,供直接调用,并且多个应用程序可以充分共享这些组件,这样就极大地简化应用开发,缩短软件交付周期,并保障软件质量。
而构建一个高度可重用的平台层,最核心的挑战就是设计和开发高度可重用的组件,使其能够提取应用的共性需求,简化接口,真正做到应用开发时可以直接拿来就用,而且非常简单易用。