2020年5月23日星期六

从零开始搭建一个PaaS平台

从零开始搭建一个PaaS平台


前言

从最开始的小公司做小网站,到现在进入现在的公司做项目,发现小公司里很多很多工作都是重复的劳动(增删改查),不过想想也是,业务软件最基础的东西不就是增删改查吗。

但是很多时候,这种业务逻辑其实没有必要挨个重写。总不能说你的增删改查比我的高级很多。很大程度上,复杂的问题只是数据太多了怎么优化。

 

简介

在真的开始做之前,先来简单介绍几个概念。简单介绍一下PaaS是什么,大概意思就是已经做好了一个大的平台,你可以在上边快速的配置、扩展你的服务。

详细的介绍推荐看一下阮一峰老师的博客  我们要做什么

假设我们现在要做一个人员管理系统,我们一般需要以下内容。

- 增加数据

可以配置一个或者多个新增数据的页面,点击保存就保存了数据

 

 

 

 

 

 

- 删除数据

可以配置个按钮,点击一下就把相关数据删除掉

 

 

 

- 修改数据

可以配置个按钮,点击一下出现一个编辑页面,里边会出现对应的数据,你可以修改,然后点击一下更新,数据就更新了

 

 

 

- 查

-- 列表页面

你可以在列表页面,配置几个筛选项,然后你修改完数据之后,点击搜索,就会根据你的数据来改变列表内容数据

 

 

 

-- 详情页面

你可以在列表页面点击名称(点击哪个可以配置)然后,就会自动跳转到详情页面

详情页面要展示哪些内容也可以通过配置来进行修改

NoCode能力

这个是整个业务的核心,也是PaaS之所以可以将几个月的工作量浓缩为数周的原因所在。

其实就是一个简单想法的转变,原本我们要实现我上边画的几张图,都是考改变代码来实现,比如说列表页面应该是战士什么Title、列表要不要出现选择框、列表究竟展示那几列、右上角究竟有什么按钮等等。

现在将这些原本需要写到代码里边的逻辑整理到配置里边,然后通过解释这些配置,渲染出页面,渲染出逻辑。

 

LowCode能力

当然了,上述的情况太过于简单了,基本上就是一个数据库的内容简单展示而已,如果我们需要更复杂一点的内容呢?

 

比如说我们需要输出这个人的年龄分层(幼儿、少年、青年、中年、老年),我们要怎么做呢?

很显然这个状态不应该被存放在数据库中的,因为这个实际上是通过年龄动态计算出来的,过一年之后这个展示状态可能就会过期了,这个时候我们就需要能够动态插入逻辑根据年龄计算这几个值,然后输出结果。

 

当然这并不是全部了,其他还有很多需要解决的事情。比如

  • 使用配置来实现渲染,配置数据,读取起来是不是要比写代码慢很多?
  • 搜索条件可能有很多,怎么实现这些条件可用呢?
  • 如果默认的页面满足不了我的需求怎么办?
  • 业务权限要怎么处理?总不能进入系统的人都有权限吧?
  • 开发完了这个玩意怎么发布到线上去?
  • ... ...

 

这个玩意有点庞大,一口气说不完。这次内容就这么多,我也只能一边整理一边写博客,这可能会是一个很长,也可能是做不下去很短的系列。

写的不好,能力有限多多见谅


没有评论:

发表评论