近年来,低代码平台大行其道,尤其是在Mendix和Outsystems的收购融资之后,越来越多的人认为低代码平台有可能成为继云计算之后的又一个千亿级赛道。什么是低代码平台那么什么是低代码平台呢?一般来说,低代码开发平台是指不同层次的开发者,甚至是没有任何开发经验的开发者,都可以通过可视化用户界面,使用拖放组件和模型驱动的逻辑来创建网页或移动端的平台应用程序。创建应用程序的过程就像拼图游戏,将不同的模块拼接在一起形成一个应用程序。由于低代码平台还处于起步阶段,其定义比较模糊,市场上出现了不同形式的实现方式。常见的有:完全简化前后端开发,用户甚至可以不用写代码就可以构建应用,但是灵活性较差;在线IDE和编辑器,页面采用可视化设计,方便开发者组合模块,但仍需编写少量代码进行二次开发才能正常使用;简化前端开发,开发者不再需要编写前端代码;简化后端开发,即开发者只需编写前端代码,后端可在线设计数据结构,实现增删改查功能;提供一站式开发平台,提供持续集成、部署、运维等功能,以帮助开发者提高效率为目的;低代码应该解决什么问题?“低代码”概念的出现,形成了两种极端的观点。由于“低代码”还处于起步阶段,产品还不成熟,很多时候开发效率不如直接写代码快。许多专业的开发人员认为,所谓的“低代码”只是一个玩具,根本无法应用于开发工作。.另一种以普通人为代表的观点认为,低代码平台大大降低了开发应用的门槛,不懂代码也可以开发程序,以后程序员会失业。这两种观点其实都不正确。低代码平台只能解决“效率”的问题,不能解决“写代码”的问题。常见的低代码平台可以通过以下方式实现:提供简化版的DSL,类似于excel公式;提供图形代码编辑器;支持编写代码或外部api扩展;平台的内置实现;前三个是要求用户可以写代码,或者至少理解实现逻辑,但不能做到完全零代码零体验。如果某个需求很常见,你可以使用内置平台来实现这个需求。比如淘宝,其实就是一个集成了很多常见电商功能的低代码平台。商家可以根据自己的需要组合使用这些功能,也可以定制属于自己的店铺。显然,低代码平台可以解决“开发效率”的问题,但如果需求不通用,开发者还是要写代码进行开发。目前现阶段的低代码平台不太可能用来创建ToC应用,因为这类应用一般是公司的主营业务,需要足够的灵活性、自主性和可控性。还有就是对定制和展示的要求很高,这在低代码平台是无法通过组件来实现的。如果需要使用大量的代码进行扩展,不如自己开发效率高。低代码平台面临的问题虽然低代码平台可以大大提高开发效率,但是仍然有很多问题制约着平台的发展。(1)学习成本所有低代码平台都使用内部独立框架,用户需要支付额外的学习成本。(2)黑盒由于用户不知道平台是如何实现功能的,比如bug、性能等问题,只能等待平台解决。当平台不能满足需求时,他们只能等待平台升级。(3)复杂功能由于无法像本地代码那样进行全局搜索,低代码平台信息分布在各个地方,不利于找到需要的功能组件。(4)多人协作困难低代码平台难以实现分支管理,不利于多人协作。低代码平台既没有普通人认为的那么好,也没有专业人士认为的那么糟糕。在某些领域,低代码平台会成功,比如面向客户的应用程序很可能会失败,但如果应用程序是内部应用程序,低代码平台很可能会发挥重要作用。
