介绍

2018-11-06 14:28:44

CabloyJS是什么

CabloyJS是基于EggBornJS开发的一款顶级Javascript全栈业务开发框架

EggBornJS是什么

EggBornJS是一款顶级Javascript全栈开发框架

前端采用VueJS + Framework7 + Webpack,后端采用KoaJS + EggJS,数据库采用mysql

EggBornJS在纵向上,将前端和后端打通,形成一个有机的整体,避免前端和后端各自为政的状况

EggBornJS在横向上,提炼出“业务模块化”的代码组织模式,通过不同的模块组合实现业务开发,也为大型Web应用不断增长的业务需求提供有力的基础架构

CabloyJS与EggBornJS的关系

简单的说:

  1. EggBornJS是一个全栈的代码加载器,定义了一套全栈的代码开发规范
  2. CabloyJSEggBornJS的基础上提供了一套核心业务模块,便于快速进行业务开发

EggBornJS只是一个基础的全栈开发框架,如果要进行业务开发,还需要考虑许多与业务相关的支撑特性,如:用户管理、角色管理、权限管理、菜单管理、参数设置管理、表单验证、登录机制,等等。特别是在前后端分离的场景下,对权限管理的要求就提升到一个更高的水平

CabloyJSEggBornJS的基础上,提供了一套核心业务模块,从而实现了一系列支持特性,并将这些特性进行有机的组合,形成完整而灵活的上层生态架构,从而支持具体的业务开发进程

有了EggBornJS,从此可复用的不仅仅是组件,还有业务模块

有了CabloyJS,您就可以快速开发各类业务应用

EggBornJS与EggJS的关系

EggBornJS包含egg-born-frontegg-born-backend两部分,分别对应前端后端的加载机制

从本质上来看,egg-born-backendEggJS都是加载器。但是,为了实现业务模块化的机制,egg-born-backendEggJS的基础上做了许多特性增强,核心特性如下:

  1. 在一个业务模块中,可以单独设置后端路由、控制器、服务、中间件、国际化、config配置等资源
  2. EggJS中,这些资源都是通过约定代码位置的方式组织并加载的。而在egg-born-backend业务模块中,这些资源都是通过require的方式显式组织并加载的。因此,业务模块可以进行单独编译
  3. 业务模块可单独编译,从而可以单独发布、单独部署,单独升级,从而促进CabloyJS整个生态圈的繁荣,进一步加速实际业务的开发
  4. 另一方面,业务模块可单独编译,也可以满足保护商业代码的需求

CabloyJS架构图

cabloy

信念

凡是可以用JavaScript来写的应用,最终都会用JavaScript来写 | Atwood定律

相信,Javascript的深度探索者都会被这句名言激发,共同努力,为Javascript生态添砖加瓦,构建更繁荣的应用生态

CabloyJS正是对这一名言的探索之作。CabloyJS不重复造轮子,而是采用业界最新的开源技术,进行全栈开发的最佳组合

欢迎您也加入CabloyJS的社区生态,一起促进Javascript的繁荣与应用

Cabloy名字的由来

Cabloy来自蓝精灵的魔法咒语,拼对了Cabloy这个单词就会有神奇的效果。同样,CabloyJS是有关化学的魔法,基于原子的组合与生化反应,您将实现您想要的任何东西



评论: