单兵 Web 快速开发框架!
Jmix 是低代码?
自从 Jmix 2018 年在中国推广以来(那时叫 CUBA 平台),很多开发者会在使用之前询问我们,Jmix 是不是低代码,扩展性怎么样?
低代码应用程序平台(LCAP)是当今最流行的企业软件开发方法之一。今天,全球有超过 300 家 LCAP 供应商,产品数量也在不断增长。低代码平台的主要目的是减少业务技术人员和专业开发人员之间差距,甚至希望直接由业务人员替代专业开发人员进行软件系统的构建,这个想法是非常完美的。
作为专业软件开发市场经验丰富的参与者,Jmix 的开发团队也一直在跟踪趋势,希望发现能带来真正商业价值的功能,而低代码平台就是团队研究的方向之一。仔细看来,各种希望能替换掉专业开发人员的方案都有一些优势和劣势。下面我们看看大家关心的低代码范式是如何让企业买单的。
什么是低代码?
低代码基本上是描述应用程序可视化开发功能的术语,使用可视化开发的同时,可以编写有限的代码或脚本。低代码应用程序开发系统源自企业级系统,如 BPM、ECM 或 CRM 解决方案,专为特定目的构建。为了满足业务对灵活性的要求,供应商创建了复杂的工具,可以自由地自定义表单上的字段、设计自动化工作流程、并支持集成流行的办公软件。这是大多数低代码平台发展的典型方式。
如今,低代码市场一直在增长,同时分裂成不同的细分市场。低代码供应商根据产品适用场景、产品抽象级别和开发人员技能要求来区分产品和用户组。而其中某些平台仅关注一个非常狭窄的业务场景,并能完全不用编写代码,只提供可视化工具来构建应用程序。这种类型的产品也称为无代码平台。其他参与者则专注于专业的开发人员技能要求,为他们提供自动化日常操作的工具,关注更广泛业务领域的应用程序开发。
因此,一方面,当你尝试搜索应用程序开发技术时,由于产品众多,选择会相当困难。但从另一方面来说,你也完全有可能找到符合你需求的产品。
低代码能带来什么益处?
在任何低代码平台营销物料中,首先他们会承诺能提供极快的开发速度,在某些情况下,这确实是事实,也是低代码平台最大的优点。
低代码的另一个优点是,成为开发人员非常容易,因为这些平台不需要对编程语言或软件架构有深入的了解。供应商为不同的功能、集成、UI 组件等提供开箱即用的模块。
但是,当你需要的某些功能平台不能提供时,你需要再次联系平台的供应商并使用他们提供的附加服务。因此,低代码平台的灵活性非常有限,零代码的灵活性更低。
更重要的是,应用程序源代码并不归你所有,并且这些代码只能在供应商的环境中运行。同时,平台的使用费通常比较高,是基于你系统的用户数进行计算的。最后的结果就是,一旦使用,则服务供应商就锁死了,不容易替换。
当然,这些缺点可能也不是缺点,比如,你的团队由市民开发者构成,并且寻找的是一个类似电子表格的产品,那么低代码是一个很好的方案。但是,如果你的团队主要由深入参与业务领域的软件工程师组成,则可以考虑使用更高级、更通用的方案:只需要根据团队技能、产品的需求和使用环境仔细选择高效的开发工具。
少代码概念
无需学习新的低代码开发人员技能,企业可以通过关注开发人员的效率来获得更高的软件开发生产力。
“让专业的人做专业的事” - 我们只需要考虑如何提高专业人士的效率。通过使用高生产力工具对日常操作进行自动化,以及使用开箱即用的功能模块,专业的软件工程师可以高效地完成更多的任务。并且最好让他们控制代码,在专业开发环境中工作。
除了高效的开发工具之外,软件工程师还希望能实现下列功能
- 代码审查:能在一个开发工具中查看和审查代码
- 代码调试:能使用专业的开发工具调试应用程序的代码
- 代码重载:能重载或重写一些核心逻辑
- 协作编程:在编码时,能在团队中使用一些流行的代码管理工具
- 自由部署:希望能按需部署和分发应用程序
为了满足开发者的期望,Jmix 团队定义了一个新的概念。
我们称之为: “少代码” 框架
那么,我们说的少代码究竟是什么?
“少代码”是面向专业开发人员的快速应用程序开发工具,结合了面向未来的技术栈,并提供丰富的即用型业务扩展组件。从概念上讲,它介于低代码应用程序平台和传统开发之间,结合了前者的高开发速度和后者的灵活性。少代码与低代码类似,但专注于服务专业开发人员。
企业在选择低代码时犯的一个常见错误是忽略了开发人员的体验。这里的关键问题是谁将在你的公司中使用这个开发平台?如果开发人员是该技术的主要用户,那么最好专注于他们的需求,并相信我们的经验 - 开发者不想学习另一种无法获得专业技能的技术。
少代码 vs. 低代码
少代码虽然看起来与低代码概念相似,但基本上是两种不同的开发方法。主要区别在于技术栈类型。低代码需要使用某个企业的专有工具,而少代码基于开源技术栈。据此,我们总结了下列不同:
同时,低/零代码平台在这几个方面缺少灵活性:
- 界面灵活度:支持复杂界面设计以及界面的自定义能力。低代码并不支持自定义界面,而只能使用已有的界面模板。少代码支持自定义用户界面或使用内部集成的界面模板。
- 业务逻辑灵活度:数据模型的复杂度,BPM 和工作流的复杂度。低代码的数据模型通常比较简单,而且难以构建复杂的系统。少代码能提供更广泛的数据模型支持和业务逻辑支持。
- 供应商独立性:在运行时能脱离供应商。低代码平台一般运行在供应商提供的环境中。少代码支持用户使用任何运行时环境。
- 集成能力:平台的开放 API 能力以及与企业目前的 IT 系统集成的能力。低代码的集成能力受限于供应商的运行环境。少代码提供特定的集成和部署工具。
因此,少代码是低代码和传统开发之间的折衷。我们的团队这样定义 Jmix:
一个用于企业开发的快速应用程序开发工具,为专业开发人员设计,基于面向未来的开源架构,提供强大的即用型组件。
Jmix 少代码总结
Jmix 可以节省成本
当谈到商业工具时,企业主首先需要考虑投资是否能获得回报。由于 Jmix 是按开发人员的席位付费,因此,在 ROI 上具有绝对的优势。
Spring 开发,就用 Jmix!
单兵 Web 快速开发框架!的更多相关文章
- KoaHub.js是基于 Koa.js 平台的 Node.js web 快速开发框架
koahubjs KoaHub.js -- 基于 Koa.js 平台的 Node.js web 快速开发框架.可以直接在项目里使用 ES6/7(Generator Function, Class, A ...
- 基于 Koa.js 平台的 Node.js web 快速开发框架KoaHub.js demo 可安装
KoaHub.js demo KoaHub.js KoaHub.js -- 基于 Koa.js 平台的 Node.js web 快速开发框架.可以直接在项目里使用 ES6/7(Generator Fu ...
- KoaHub.js -- 基于 Koa.js 平台的 Node.js web 快速开发框架之koahub-yilianyun
koahub-yilianyun 微信易联云打印机接口 koahub-yilianyun易联云打印机node接口 Installation $ npm install koahub-yilianyun ...
- web快速开发框架 WebBuilder 8.7发布
一个强大的web开发框架往往与他开发速度有关,他需要帮助程序员尽可能快的完成项目的同时确保它的安全性,WebBuilder是基于Java的web开发框架,其核心开发目标是开发迅速,代码少,学习简单,功 ...
- KoaHub.js -- 基于 Koa.js 平台的 Node.js web 快速开发框架之koahub-handlebars
koahub-handlebars koahub-handlebars koahub handlebars templates Installation $ npm install koahub-ha ...
- KoaHub.js -- 基于 Koa.js 平台的 Node.js web 快速开发框架之koahub-loader
koahub loader Installation $ npm install koahub-loader Use with koa // 1.model loader var model = ...
- KoaHub.js -- 基于 Koa.js 平台的 Node.js web 快速开发框架之koahub
Installation $ npm install koahub Use with koa var app = require('koa')(); var router = require( ...
- KoaHub.js -- 基于 Koa.js 平台的 Node.js web 快速开发框架之koahub-skip
koahub-skip koahub skip middleware koahub skip Conditionally skip a middleware when a condition is m ...
- KoaHub.js -- 基于 Koa.js 平台的 Node.js web 快速开发框架之koahub-body-res
koahub body res Format koa's respond json. Installation $ npm install koahub-body-res Use with koa v ...
- Node.js web快速入门 -- KoaHub.js
介绍 KoaHub.js -- 基于 Koa.js 平台的 Node.js web 快速开发框架.可以直接在项目里使用 ES6/7(Generator Function, Class, Async & ...
随机推荐
- 静态文件配置 django连接MySQL django模型层初识 ORM基本语句
目录 静态文件配置 1. 问题描述 2. 静态文件 3. 资源访问 form表单属性补充 action method 请求方法 get请求 post请求 views层 request对象 reques ...
- docker-compose + mysql8.x 主从数据库配置
0.准备 (略过docker的安装与镜像拉取) docker / docker-compose 安装 拉取 mysql 8.x 1. master和slave的mysql配置 master: [mys ...
- js 中常用函数汇总(含示例)
〇.前言 js 在日常开发中还是比较常用的,本文将常用的 js 方法简单汇总一下,希望对你我有一点帮助. 一.重复 / 延迟操作 1.设置固定时间间隔,重复执行(setInterval(funcRef ...
- Generator(生成器),入门初基,Coroutine(原生协程),登峰造极,Python3.10并发异步编程async底层实现
普遍意义上讲,生成器是一种特殊的迭代器,它可以在执行过程中暂停并在恢复执行时保留它的状态.而协程,则可以让一个函数在执行过程中暂停并在恢复执行时保留它的状态,在Python3.10中,原生协程的实现手 ...
- [图像处理] YUV图像处理入门1
目前数字图像处理技术已经应用生活各个方面,但是大部分教程都是利用第三方库(如opencv)对RGB图像格式进行处理.对于YUV图像格式的图像处理教程较少.于是博主搬运总结了多个大牛的文章,总结出来这个 ...
- 我的基于 JamStack 的新博客
概述 今天心血来潮,介绍一下我的新博客站点 -- https://EWhisper.cn. 我是做基础平台 PaaS 运维和架构的,挺喜欢把工作中学到的新知识写下来.记笔记,突然有一天就抱着「资源共享 ...
- 01-Tcl基本知识
1 Tcl基本知识 1.1 Tcl是什么? Tcl全称是Tool Command Language,是一种基于字符串的命令语言. Tcl是一种解释性语言,类似于其他脚本语言一样,直接对每条语句顺次解释 ...
- MySQL 表的创建、复制、修改与删除
MySQL中如何利用代码完成表的创建.复制.修改和删除. 一.创建表 --创建新表,如果存在则覆盖 drop table [if exists] 表名; --创建新表,如果存在则返回 create t ...
- 超级容易理解的函数节流(throttle)
今天搞了一个简单的写法 话不多说,直接上代码 <!DOCTYPE html> <html lang="en"> <head> <meta ...
- vulnhub靶场之FUNBOX: GAOKAO
准备: 攻击机:虚拟机kali.本机win10. 靶机:Funbox: GaoKao,下载地址:https://download.vulnhub.com/funbox/FunboxGaoKao.ova ...