Elpis 项目介绍

202 阅读3分钟
注:文章理解源于哲玄前端(全栈)的大前端全栈实践

时代背景分析

纵观前端发展历程,自 2012 年 PC 时代 崛起,到 2018 年移动互联网 的鼎盛发展,行业发展经历了快速增长。然而,盛极而衰的趋势不可避免。由于前端产品数量减少,市场对前端岗位的需求逐步下降,2024 年已然成为前端开发者的“寒冬”。

尽管如此,产业互联网依然是不可逆转的时代大趋势。在这一背景下,如何提升开发者的单兵作战能力,并高效交付多个行业的项目,成为新的关注重点。在这样的需求下,全新的框架—— Elips 应运而生。

我们的优势

  1. 统一解决方案

    • 沉淀 80% 的重复性工作,通过配置化方式实现功能自动化。
    • 为 20% 的定制化需求 提供高效开发支持。
  2. 方案落地为可持续集成的平台

    • 解决方案需要形成一个稳定、可扩展的平台,并支持系统化持续集成。
  3. 支持多系统建设与功能复用

    • 平台需要支持构建多套系统,同时在系统间实现功能模块的高效复用,避免资源浪费。

项目架构设计

image.png

展示层

展示层的核心在于高效呈现用户界面。我们通过 单页面客户端渲染(SPA) 和 多页面服务端渲染(SSR) 两种方式,为不同项目需求提供灵活支持。这种架构确保了复杂场景下的响应速度和用户体验。与此同时,我们配置了前端工程化方案,进一步提升开发效率,缩短开发周期。

BFF 层

BFF(Backend for Frontend)层为系统的稳定运行提供了强有力的保障,架构细分为以下三个层级:

  1. 接入层:负责请求的统一接收与路由分发。
  2. 业务层:处理具体的业务逻辑,保证模块功能的独立性和可扩展性。
  3. 服务层:提供基础服务支持,连接后端数据源和外部服务。

image-1.png

通过上述分层设计,可以有效地将不同层级的文件进行统筹管理,实现模块间的有机关联。简单来说,就是将不同的模块挂载到 app 实例 下,形成高内聚、强关联的系统结构。

领域模型与定制化支持

image-2.png 我们采用领域模型的设计方案,致力于沉淀 80% 的重复性工作,大幅减少基础模块的开发成本。同时,基于面向对象的继承思想,为 20% 的定制化需求 提供高效开发支持,确保灵活性与扩展性兼顾。

模板化与多系统支持

image-3.png 通过模板化方式,我们能够高效构建多套系统,且在系统间实现功能模块的高度复用。这不仅避免了资源浪费,还显著降低了开发与维护成本,为复杂业务场景下的快速交付提供了保障。

系统实践

image-4.png

如上图所示, 当我们开发两个电商系统, 往往会包含 商品管理 , 订单管理 , 客户管理 等重复模块; 那么我们即可沉淀一个电商领域的模型, 通过配置化方式渲染出对应的重复模块;

image-5.png