如何0到1构建DevOps?
从0到1构建DevOps,首先得弄清楚这个DevOps的受众群体,它的用途到底是什么,解决什么问题,比如Android Studio是为了解决Android应用的开发,3UCS xPlus是为了解决应用的快速个性化定制及PC、手机、网页等不同模式的共用与高性能问题。
接着你还得规划好系统架构,它DevOps成败的关键。
下面就拿xPlus(3UCS)具体谈谈。
首先为什么要做xPlus?
应用的个性化定制是个老大难的问题,要不然不会有那么多的低代码平台出来,但在3UCS团队看来,这些只是预制模块的低代码拼接并不能解决个性化定制的实际问题,在这种封闭的平台里,新的功能模块、存储过程都得仰仗平台供应商的后续,局限性太大,对于复杂应用更是难委以重任,简单的可视化勉强用用还行。
应用代码在PC、手机、网页平台上的兼容适用也是个大问题,往往需要为应用单独开发手机客户端什么的。
还有一个特别大的问题,一个手机客户端动不动占存储内存数百兆甚至几个G,运行内存也是数百兆起步,手机能装多少个APP?能同时运行多少个APP?要么手机卡的要命,要么干掉一些应用,手机APP的性能越来越成为问题!
怎么办?
3UCS在打造xPlus考虑了很多方案,最后确定了几点:
1、重新定义一组业务语言规范,便诞生了BizXML,用XML描述业务应用的界面、逻辑、流程等;
2、C/S架构为主,同时支持B/S模式,于是原生设计PC客户端引擎、手机客户端引擎、网页服务引擎,为保证高性能,这三类引擎内核全C++开发并使用同一套代码,UI部分参考不同平台特性单独设计:Windows、linux界面渲染与交互使用C++、Android使用Java、IOS使用Obj-c、web使应CGI(C++开发),服务端使用C++。事实上各平台的执行程序都只有几M,低资源耗消高效;
3、各组件为不同平台解释执行通用的BizXML代码。简单的讲可以理解BizXML 类似于html,浏览器载入解析html,xPlus的PC、手机客户端、web服务引擎载入解析执行BizXML。你可能会问那为什么就不直接用html,webview?这种方式大家用的少吗?凸显的问题还不够么?xPlus平台是想打造一个轻量级的高性能5S软件平台,这一点您可以参看下:5S软件就是将软件应用全维度简单化的软件系统;
4、为了应用定制更简单,推出了xLogic,尽可能减少if-else之类的代码编写而是可视化表格编辑;
5、推出BizTool,开发者可以打开数据表结构,稍作配置就可以生存应用(电脑客户端、手机客户端都可以操作),可参见:分分钟快速定制您的专属个性化软件应用——BizTool自动化工具简介;
6、PC客户端XOne提供开发者模式,直接定位界面、逻辑代码,在线编辑修改更新执行。
完整的关于xPlus的技术可参看:让软件飞——“X+”技术揭秘
如何0到1构建DevOps?的更多相关文章
- SpringBoot开发案例从0到1构建分布式秒杀系统
前言 最近,被推送了不少秒杀架构的文章,忙里偷闲自己也总结了一下互联网平台秒杀架构设计,当然也借鉴了不少同学的思路.俗话说,脱离案例讲架构都是耍流氓,最终使用SpringBoot模拟实现了部分秒杀场 ...
- 从0到1构建适配不同端(微信小程序、H5、React-Native 等)的taro + dva应用
从0到1构建适配不同端(微信小程序.H5.React-Native 等)的taro + dva应用 写在前面 Taro 是一套遵循 React 语法规范的 多端开发 解决方案.现如今市面上端的形态多种 ...
- 《从0到1学习Flink》—— Mac 上搭建 Flink 1.6.0 环境并构建运行简单程序入门
准备工作 1.安装查看 Java 的版本号,推荐使用 Java 8. 安装 Flink 2.在 Mac OS X 上安装 Flink 是非常方便的.推荐通过 homebrew 来安装. brew in ...
- 基 vue-element-admin升级的Vue3 +TS +Element-Plus 版本的后端管理前端解决方案 vue3-element-admin 正式对外发布,有来开源组织又一精心力作,毫无保留开放从0到1构建过程
项目简介 vue3-element-admin 是基于 vue-element-admin 升级的 Vue3 + Element Plus 版本的后台管理前端解决方案,是 有来技术团队 继 youla ...
- vue.js2.0的独立构建和运行时构建
转自:https://jingsam.github.io/2016/10/23/standalone-vs-runtime-only-build-in-vuejs2.html?utm_source=t ...
- Spark 1.0 开发环境构建:maven/sbt/idea
因为我原来对maven和sbt都不熟悉,因此使用两种方法都编译了一下.下面记录一下编译时候遇到的问题.然后介绍一下如果使用IntelliJ IDEA 13.1构建开发环境. 首先准备java环境和sc ...
- 《前端之路》之 webpack 4.0+ 的应用构建
目录 一.版本 二.webpack 的主体概念 2-1.入口 2-1-1.单页面入口 2-1-2.多页面应用的入口 2-2.输出 2-3.loader 2-4.plugins 三.如何使用 3-1 关 ...
- Mongodb4.0副本集构建
目前最新的mongodb4.0.2已经支持事务这个重要特性,需要使用的话必须是复制或副本集,这是第一篇先研发如何构建副本集,因为副本集是目前最低成本的高可用群集方式. 1.准备三台服务器,本次使用是的 ...
- drone 1.0 新的构建徽章特性
drone 1.0 昨天新发布的功能,支持了一个方便的查看构建状态的功能徽章 如下: 环境准备 docker-compose 文件 version: '3' services: drone-serve ...
随机推荐
- Solution -「ABC 217」题解
D - Cutting Woods 记录每一个切割点,每次求前驱后驱就好了,注意简单判断一下开闭区间. 考场上采用的 FHQ_Treap 无脑莽. #include <cstdio> #i ...
- 数码管动态显示Verilog实现(参考小梅哥教程)(视觉暂留)
一个数码管有九个引脚,控制八段二极管的亮灭,用以显示需要的数字. 当有N个数码管时,一个一个控制的话需要N x 9 个引脚,消耗资源较多. 因此可以利用动态显示的方案通过人眼的视觉暂留特性达到静态显示 ...
- python 异常捕捉与异常处理
简介 在实际开发中,为了防止异常界面直接被用户看到,往往我们会采用捕捉异常的方式来进一步处理异常. 异常捕捉 如下代码由于下标越界会导致异常 data = range(10) print(data[1 ...
- PHP memcache add replace set的区别和其他用法收集
add replace set的区别 最近在面试时遇到一个问题 memcache 的add replace set的区别,故在此进行加强 add 是向服务器添加一个缓存的数据,当该键已存在会返回一个f ...
- 如果让我设计一套,TPS百万级API网关!
作者:小傅哥 博客:https://bugstack.cn 沉淀.分享.成长,让自己和他人都能有所收获! 是滴,小傅哥又要准备搞事情了!这次准备下手API网关项目,因为这是所有互联网大厂都有的一个核心 ...
- package.json 与 package-lock.json 的关系
模块化开发在前端越来越流行,使用 node 和 npm 可以很方便的下载管理项目所需的依赖模块.package.json 用来描述项目及项目所依赖的模块信息. 那 package-lock.json ...
- 基于SpringSecurity的@PreAuthorize实现自定义权限校验方法
一.前言 在我们一般的web系统中必不可少的就是权限的配置,也有经典的RBAC权限模型,是基于角色的权限控制.这是目前最常被开发者使用也是相对易用.通用权限模型.当然SpringSecurity已经实 ...
- 延时任务-基于redis zset的完整实现
所谓的延时任务给大家举个例子:你买了一张火车票,必须在30分钟之内付款,否则该订单被自动取消.订单30分钟不付款自动取消,这个任务就是一个延时任务. 我之前已经写过2篇关于延时任务的文章: <完 ...
- C语言小游戏:贪吃蛇
#include <graphics.h> #include <conio.h> #include <stdio.h> #define WIDTH 40 //设置宽 ...
- Linux之SElinux服务详解
SElinux -> Linux安全访问策略 -> 强制性 (security安全) 是Linux操作系统的一个额外的强制性的安全访问规则.用于确定哪个进程可以访问哪些文件.目录和端口的一 ...