浅谈基础平台
一、 什么是基础平台 基础平台对应于业务应用,主要处理技术问题,是为业务应用提供技术支撑以及技术方案的模块或者组件。其目的是使得应用组件可只关注于业务逻辑,而不考虑或者少考虑技术问题。 基础平台通常包括如下:基础功能,开发类库,开发模式以及开发部署工具。 二、 为何要基础平台 应用系统的设计可以说是将一个业务语言翻译成程序语言的过程,这个过程同时处理两个内容:业务和技术。 1. 学习业务,编写的代码符合用例的流程; 2. 学习技术,编写的代码符合技术平台的规范和要求。 这里不同底层技术的难易度不同,导致学习成本、开发成本和应用成本也不同。同时对于一个有较长生命周期的软件项目或者产品,其依赖的底层技术的升级也会带来相应的维护成不 面对特定领域的软件项目或者产品,其所依赖的底层技术的广度和深度相对稳定,基础平台可以填平或者减少技术层面的鸿沟。 那么,我们就面临另一个问题,即:业界已经存在大量优秀的开源框架,我们为何要基础平台。 首先,大量优秀开源框架可以帮助我们,但是: 1. 优秀的开源框架通常偏向通用性,而面向特定领域的相关特性和功能还不支持;即便有面向特定领域的,其支持的特性还存在一定差异性;同时其未必支持相应的基础设施。 因此需要进行二次开发,以完善所需的基础设施; 2. 优秀的开源框架在通用性支持广泛,提供多种选择,同时还有一定学习成本;而面向特定领域,需要的模式相对固定。