低代码平台:创新 or 炒作?
从 2020 年开始,低代码成为了业界热点,无论是资本市场还是企业用户都纷纷追捧。在低代码洪流下,支持和反对声并存,有人认为低代码可以像 Office 一样达到全民普及,也有人认为低代码是新瓶装旧酒炒作概念。
在争议不休下,如何正确地看清、认清低代码?如何清晰地辨别并选择适合自己企业的低代码开发工具和平台?
为此,51CTO 特别梳理了关于低代码的十大问题,并邀请腾讯云、网易数帆、用友、微软等不同低代码平台服务提供商的专家共同探讨,试图解答业界关于低代码的相关疑问。
问题一
低代码真的是新瓶装旧酒么?
腾讯云微搭基础产品负责人骆勤
认为“新瓶装旧酒”的同学,可能没有真正深入体验低代码,低代码平台本身是一种开发模式的重构,对传统人力密集型开发模式的一种补充,既不会取代专业工程师也并非老生常谈。
低代码有它特有适宜的场景,对于大多数企业来说,它能让产研部门的产出人效比更高,工程师能聚焦在更高维度的架构工作之中。
微搭低代码起步不算早,但目前我们大量的合作伙伴客户案例也已经证明其行业价值,行业内的早期玩家也在商业价值探索中逐步走向成熟。
新事物的出现,大家都会有“新瓶装旧酒”的疑惑,就如同 2016 年的云计算初期也面对过很多的质疑,随着大家认知的越来越深入,这几年低代码的发展也迎来了它的最好的时代。
网易数帆轻舟低代码平台负责人严跃杰
鼓吹低代码是新瓶装旧酒的一种主要观点是,低代码可视化开发这个核心特性二三十年前已经有人实践过了,比如 Delphi、PowerBuiler 等 IDE 工具,但这些工具早就被淘汰了,所以今天的低代码也没戏。
但鼓吹这一观点的人有意无意的忽略了两点:
第一点是,当年即使Delphi和PowerBuilder还是非常初级的一种低代码形态,但是在当时桌面应用软件研发领域也发挥了巨大作用、占据了非常大的一个市场份额。而且他们被淘汰不是因为“低代码”的问题,而是因为他们没有跟上互联网发展引发的软件需求、技术和理念的革命。
第二点是,互联网发展所引发的需求、技术和理念的革命,包括MDD/DDD等设计思想的推广和普及,为“低代码”进一步发展带来全新的契机。
现阶段的“低代码”产品,围绕模型驱动思想实现全栈的可视化开发,而且能够支持各种客户端应用的设计、支持多种数据源连接;以 DevOps 的理念实现应用的自动化部署和运维,能很好融合并利用云原生体系技术成果;根据各种标准协议实现开放集成,支持各种形式互联互通;还有些产品,比如轻舟低代码产品,还能从 DSL 层面支持各种 UI 和逻辑组件的自定义扩展。所以可以说现在的“低代码”产品,虽然“低代码”这个概念不怎么新,但产品和技术层面都是一种全面的创新。
所以,回到上面的问题,我的回答是低代码不是新瓶装旧酒,如果非要瓶和酒来比喻,我觉得用旧瓶(低代码这个概念)装新酒(全新的产品和解决方案)来比喻可能更合适。
微软(中国)有限公司全渠道事业部,创新技术总经理崔宏禹
任何技术的兴起、流行或者消失,不仅取决于技术本身,更取决于现实的需求。
低代码技术之所以在这个时候重新发扬光大,有两个方面的原因:
一方面,相关技术发展到一定程度,使原来不可能的事情成为可能,比如人工智能已经在一些专业领域达到或超过人类水平,决定性因素是市场对更高生产力工具的追求;
另外一个方面,生产力工具在不同时代有不同的特征。在数字化时代,通过软件手段开发出的各种生产力应用成为人类提高工作和生活效率的主要手段。
这种时代的变化要求各行各业的从业人员具备基本的应用开发能力,这是低代码带来的主要改变,即可以让非专业的开发人员通过低代码技术来实现其业务上的述求和能力的构建。
当然,低代码技术的目的并不是把这些人培养成专业程序员,而是借助这种能力来提高自己的工作效率。所以,低代码能力是一种未来我们必须掌握的‘办公能力’,是能够发挥所有业务参与者能力的“新瓶新酒”。
用友网络助理总裁、生态布道师刘鑫
低代码不是一种创新型技术,确切的说法是一系列成熟技术的组合,因此对于低代码而言,过往有深厚技术积累的公司更适合做低代码产品,这一技术背景可以更好地去支撑公司去把低代码技术产品做好。
问题二
低代码开发就像是拼搭乐高积木?
腾讯云微搭基础产品负责人骆勤
低代码平台综合了无代码的易用性,又提供了很高的定制化能力,所以既可以搭积木如开发一些工具类的小程序,也可以盖大楼如大型企业级内部办公系统。
网易数帆轻舟低代码平台负责人严跃杰
这种比喻用来向完全不了解低代码(但玩过乐高)的人解释低代码比较合适,但实际上并不准确。所有的低代码产品本质上都是在寻找各种编程模型,用来方便承接各种业务需求的表达。
不同的模型,在应对需求场景的广度,特定场景表达易用性方面有不同的侧重点。
比如 outsystems、网易轻舟这类低代码产品,他们提供的包含“页面、逻辑、模型、数据”这些设计对象的编程模型有比较好的普适性;像 airtable、labtree 这种电子表格以及明道云、轻流、宜搭这种表单及流程引擎类的产品,则比较适合于某些场景的需求表达。
说低代码开发像搭乐高积木,在表单及流程引擎类低代码产品那里确实有比较高的相似性,比如表单搭建、流程搭建;在通用性低代码产品的逻辑设计、页面设计等环节也有一定的相似性。但这也只是操作形式上的相似性,低代码开发的本质和核心还是业务建模。
另外用乐高比喻,我觉得还有一个相似点,值得提一下。陪娃玩过乐高的同学知道,乐高有无数个系列,幻影忍者系列、城市系列、太空系列、星球大战系列等等,几乎所有系列都会有该系列专用的积木块。
这就好比低代码平台用在不用的行业,比如制造、金融、能源、化工、零售等行业需要有不同的 UI、逻辑等组件。所以面向低代码平台的开发,其实不仅是应用的开发,还有 UI、逻辑等组件开发。这点在通用性低代码产品那里体现的非常明显。
微软(中国)有限公司全渠道事业部,创新技术总经理崔宏禹
我们经常会用这样的比喻,帮助大家对低代码开发有更直观的印象。从一定程度上来讲,拼搭乐高积木的过程和低代码开发的过程很类似,都是通过简单的模块化构建的方法,逐步搭建复杂的作品或方案。
当然,它既遵循一定的规律或规则,又鼓励大家在既定的模板之上发挥各自天马行空的创意和想法。因此用拼搭积木来形容低代码开发的过程,还是比较恰当的。
不过,如搭乐高积木需要一张图纸和模板一样,在开始之前,一定是有一些基础的服务能力的,例如,必须具备通用的数据服务能力,和其他应用系统的接口能力等。这些能力一定是由专业的开发人员预先定义好的。
用友网络助理总裁、生态布道师刘鑫
现阶段行业泛指的低代码开发,并非无代码,仍会涉及编写少量代码或者叫轻量代码,还是要用户具备基础的技术知识,当然最终的目标希望能够透过降低技术的瓶颈或门槛,让更多的人去参与到整个 IT 化、数字化智能化进程中来。
问题三
低代码适合开发哪些应用?
腾讯云高级技术产品经理张章
1)C 端小程序:利用低码快速开发小程序/H5 页面,并可以快速定制化、个性化。
2)数据模型应用:针对关系数据库中的数据,基于数据库表单的增删改查应用。
3)表单应用:基本的数据的收集、处理、上报页面应用。
4)企业门户:低代码可以帮助快速创建具有公共前端或用户界面的门户阵列,而不是手动编码和后端组件。
5)业务流程/系统:为任何复杂的任务定义工作流并建立流程,以跨多个部门自动化操作,完成业务流程系统,比如 OA、人力资源管理、财务管理、采购管理等。
6)基于物联网的应用程序:企业可以使用低代码来构建应用程序和功能,以集成 IoT 终结点并收集数据,通过后端计算基础设施发送 IoT 数据,并向内部或外部客户提供最终的数据请求。
网易数帆轻舟低代码平台负责人严跃杰
借助低代码,我们可以创建像普通的 web 应用、小程序应用、H5 应用等各个端的应用。
从企业应用方面的,其实我们可以支持常规的信息交互类,比如说财务、HR、行政、电商的一些系统,很多都是人跟信息打交道,或者跟流程打交道的应用。因为它使用的技术栈,就是我们常规的程序员做 web 应用开发,做移动应用开发使用的技术栈。
我们根据软件工程支持的 MVVM 框架提供了一种软件设计的模型,所以他对应用复杂度、灵活性的设计是比较好的。所以像是一般的信息化系统,其实我们都是可以比较好地实现和支持的。
另外比较有前景和发展潜力的我认为是各种数字孪生需求场景,比如 IOT 领域各种设备监控管理,但这个往往需要各行业龙头或者行业平台的推动落地。
微软(中国)有限公司全渠道事业部,创新技术总经理崔宏禹
低代码适合开发的应用本质上没有限制。我们希望未来的应用都是可以通过低代码平台来开发实现的。但就目前我们看到的客户和伙伴的应用场景来讲,内部 IT、财务、人力资源等部门都是低代码应用需求的聚集地。
一方面,这些部门本身有厚重的系统支持,但希望能够快速实现定制化需求和迭代新场景,这正好是低代码最擅长的事情;另一方面,很多部门的员工有想法,但苦于没有 IT 背景和基础的编程技能,只能寄希望于低代码平台,来实现他们的需求。
这都加速了低代码应用在这些领域的开花结果。这类低代码应用我们统称为“内部运营效率应用”。
同时,我们可以看到,低代码在下面一些场景也是非常受欢迎的:
1、需要快速迭代的创新型应用
2、客户对需求的变更要求较高,从而由客户参与的应用项目;
传统系统或遗留系统的升级改造。
用友网络助理总裁、生态布道师刘鑫
低代码更适合用于开发一些业务部分需要快速上线的标准化应用,用友网络旗下 YonBuilder 低代码开发平台,作为 YonBIP 面向全生态的开发平台,依托用友多年技术沉淀,以云原生、多租户、模型驱动为基础技术,面向包括原厂开发、ISV 开发、本地化开发、企业自建、个人开发者在内的全生态,而 APICloud 则专注于移动端,对于行业性商业应用,以及场景化、轻量化的创新性应用,能够更加敏捷开发,缩短开发周期,助力产品快速验证上线。
问题四
低代码不适合开发哪些应用?
腾讯云高级技术产品经理张章
1)对算法和复杂数据结构要求比较高的:低代码可以处理较为复杂的业务逻辑,但不适合处理复杂数据结构和算法的。
2)对界面效果要求特别高的:比如游戏、抖音这种需要炫酷界面的应用不适合低代码。
3)高性能/复杂架构应用:比如头部互联网应用用户量巨大,为了优化性能有很多很多措施,前后台技术架构非常复杂,低代码平台的实现是比较标准的数据库 / 逻辑 / 界面三层架构,无法满足性能/灵活性需求。
4)分析和智能化应用:分析类应用自然应该用更专业的 BI 工具,智能化应用也应该用更专业的机器学习平台等工具。
5)系统软件、科学计算等其他专业性很强的应用。
网易数帆轻舟产品总经理陈谔
如果要用低代码平台去再做一个零代码平台,这就可能不适合。或者说用低代码平台去做一个 To C 体验非常强的应用,重视觉交互这样的体验,那也不是特别适合。如果想拿它来做游戏啊,也不是很合适。
微软(中国)有限公司全渠道事业部,创新技术总经理崔宏禹
目前低代码平台的模板,生态,和可拓展性有还在发展阶段,更多旨在解决最后一公里的问题。
如果想要从头开发复杂厚重的业务系统,还存在一定的困难。如基于 CRM 系统开发移动端应用,实现定制化的需求,对于低代码平台并不难。但从头开发一个完整的 CRM 系统,还是充满挑战的。
同时,有大量的底层开发能力要求的应用,尤其是和设备、接口、驱动交互相关的项目,低代码因其本身的场景和具备的能力,也是不太适合。
用友网络助理总裁、生态布道师刘鑫
低代码发展初期,不适宜开发一些复杂业务场景、深度定制类应用;但随着低代码技术的发展,低代码逐渐基于业务发展起来,YonBuilder 和 APICloud 是低代码领域在企业复杂业务和 ToC 敏捷应用两个方向的极致代表。
问题五
低代码和零代码的区别?
腾讯云高级技术产品经理陈曦
个人理解,非绝对答案,分几个纬度来区分:
1) 字面意思区分:低代码平台需要编写少量代码实现应用开发,无代码平台可以0代码实现应用开发。因此低代码平台相较于无代码学习成本更高,因此能够支持的场景也就更灵活;无代码相较低代码学习成本更低,支持的业务场景更聚焦垂直,扩展性有一定限制。
2) 产品用户及产品目标:
低代码用户:开发工具型,主要针对的用户是 IT 开发人员。这类低代码产品的主要目标就是作为一个编码开发工具,提升 IT 人员开发效率。
不同于业务复用型产品瞄准通用化需求,开发工具型产品对垂直领域的深度要求更高,顺应现在技术发展,也就分为了前端提效、后端提效,但都围绕一个核心,帮助开发人员减少重复、通用代码的编码工作,让开发人员更专注与业务逻辑代码的开发。
无代码用户:应用搭建工具,主要针对的用户是业务实施人员。主要针对内部协作、业务管理的信息收集一类的基础企业管理场景。
综上,weda 低代码平台结合腾讯生态优势,提供开发提效及业务连接工具,主打 c2b 业务场景支撑,集低代码的灵活+无代码的高效率配置为一体,针对企业管理推出“模型应用”,可以无代码生成企业管理应用,又能够帮助开发者用户基于页面编辑器创建“空白应用”,保证页面灵活定制能力,快速发布小程序等 c 端应用。
网易数帆轻舟产品总经理陈谔
就市场上主流的,我们可以认为有零代码平台和低代码平台。零代码平台会更加追求极致的某些细分场景上的研发效率,比如说一个纯流程的应用,或者一个纯的表单填报,它在细分场景上有好多试用的地方,有时候会分得更细,但是当企业提出一个有一定复杂度的、比较通用的企业应用的时候,这个既不是一个纯流程的应用,也不仅仅是做一些表单的填报,其实很难判断用一个零代码平台到底能做到什么程度,会不会有很多地方需要通过 workaround 的方式绕过它。
低代码这个分类其实跟我们传统的软件开发模式比较接近,从数据库的设计、模型驱动的设计出发,它有逻辑、页面的概念,但是在这里面它也分为引擎式的低代码平台,这个平台在解释执行低代码的逻辑,本身就是一个运行时,在解释执行上面编写的逻辑,做的配置。我们所处的分类,更加接近编程语言+IDE 的模式,我们会生成编程语言的代码,产生编程语言代码对应的制品,然后发布到线上。
微软(中国)有限公司全渠道事业部,创新技术总经理崔宏禹
低代码和零代码没有本质区别,都是不断提高生产力的工具,是一种 APaaS(Application Platform as a Service,应用程序平台即服务)。
APaaS 平台最大的优点是提供了快速开发的环境,个人或企业无需购买和维护服务器、中间件、网络等一系列技术基础设施。
APaaS 平台准备好了这一切,个人或者企业可以在几个小时内就能完成应用的开发、测试、部署,并能够随时调整或更新。
就现阶段而言,零代码平台对老板、产品经理、销售、运营等人员更友好;而低代码可能更适合懂点代码的人员使用。
但是,低代码与零代码平台有逐渐融合的趋势,低代码平台一直在不断降低使用者门槛,两者未来会越来越相似。
用友网络助理总裁、生态布道师刘鑫
零代码是服务于完全不懂编程的非技术人员,来构建简单易用的业务场景。低代码则因为仍会涉及少量代码编写,更适用于技术人员来提升了工作效率,同时也可以帮助非技术部门人员快速构建标准化的应用。
问题六
低代码开发能否让程序员失业?
腾讯云高级技术产品经理陈曦
答案当然是否定的。低代码和无代码解决的是可抽象的,通用的且可复用的产品能力,程序员的作为高端技术人才,市场缺口巨大,低代码工具是将程序员从现有的重复的枯燥的接口开发中解放出来。程序员应该更关注业务创造方面的技术研究和开发。
网易数帆轻舟产品总经理陈谔
低代码到底是一种加速内卷的平台呢,还是一个制造增量的平台?其实从我们目前对市场的观察来看,在数字化这样的一个背景下,低代码其实创造的是一种增量的市场,它可以使我们的企业有了想法就马上可以落地。但这些其实在以前的企业里面,很多应用开发都是排不上期的。
它相当于让企业有了一个出口,它关于数字化创新、数字化管理的一些想法,直接能够有低代码平台找到相应的人来给他开发。那以前是没有这样的平台,也没有这样的人。
其实这个需求就被压下去了,可能压根就不会去做。另一方面呢,其实企业内部还有好多历史上积累的从技术改造或者是一些技术栈的问题存在在那里。
程序员一直长期地可能也苦于应用系统的需求实在太紧急了,没有机会去对企业的一些 IT 技术,一些内部的中台或是后台之类的技术平台之类的基础去做相应的改进,那低代码也会使程序员有更多的机会去发挥自己的专业,所以低代码它创造的还是一个增量市场,并不会使程序员这个行业内卷下去。
网易数帆轻舟低代码平台负责人严跃杰
我补充一点,我们设计的轻舟低代码产品,实际是重新定义应用软件研发的模式。
这个模式中,专业程序员可以从重复 CRUD 中解放出来,专注于复杂的、可复用的组件或者逻辑的研发;应用软件的开发工作,则有更接近业务理解业务的应用开发工程师去完成。
通过分离各自关注点,做到专业的人做专业的事,才能发挥出各自最大的价值。所以低代码不仅不会让程序员失业,而是会引导程序员去向他更擅长的领域。
微软(中国)有限公司全渠道事业部,创新技术总经理崔宏禹
这看起来是非程序员而不是程序员最关心的一个话题或者想法。本身作为曾经的程序员,在刚接触低代码这个概念时并没有太担心低代码会取代什么,但也确实听到了很多的声音在讨论这个事情。
我个人的一点感悟是,其实低代码的出现,解放了程序员的时间,反倒让程序员能够将更多的时间专注在解决复杂业务问题,编写高质量的代码,优化平台架构,提升产品质量等一系列专业的事情中。
每一行业都有其特殊性,每一个职位都有其专业的地方,低代码中的低字,并不是说从此以后,就不用写代码了,而是说未来,解决业务问题的成本变得更低。
低代码出现后,其实打通了业务人员与 IT 人员以及专业程序员之间的一个屏障,业务人员可以利用低代码工具将自己的想法变成现实,拖拖拽拽地就实现了,但每一个拖拽的组件,都是程序员通过专业知识打造出来的。
所以我个人觉得,低代码平台会让程序员所做的事情,更有价值,更体现专业性。
用友网络助理总裁、生态布道师刘鑫
各类语言和框架的出现,本质都是为了提高开发效率,低代码的出现也是为了帮助程序员节省编码时间,减少重复性工作,提升工作效率。
根据我目前对行业的理解,理想状态下 75% 左右的代码将最终由低代码实现,但低代码开发无法让非技术的业务人员来取代程序员,IT 项目的开发仍需要程序员进行全面的把控和优化工作。
问题七
低代码能否走向“公民化”?
腾讯云高级技术产品经理刘兆明
走向公民化是必然的。但是如何达到、何时达到这个目标可以从两个维度来看。一是从低代码的使用者来看。二是从低代码平台的产品化来看。
国外低代码平台发展了近 20 年,在国外已经开始走向了公民化,普及率和认知度都较高,低代码工具的普适性、灵活性、易用性都达到了很好的效果。
一方面,国内低代码平起步较晚,目前的使用者群体还普遍是软件服务商、实施顾问这些专业人员,随着每家公司业务的不断发展和快速转型,公司里的业务人员的参与度和对低码平台的认知深度也会逐步提升,慢慢也就可以实现人人都是开发者,人人都可以参与软件的建设。
另一方面,从整个低码产品化的角度来看,目前国内都处于探索期,整个产品形态、易用性、稳定性、支持的复杂度、深度和广度都与国外成熟产品有较大的差距,还有很长的路要走,但是最终肯定会走出几家有特色的产品带动整个低码领域,真正可以降低定制交付成本,支持中国 SaaS 健康成长。
网易数帆轻舟低代码平台负责人严跃杰
要回答这个问题,我觉得首先要探讨一下怎么样才算是一个“公民化”产品。估计有人会提议以“是否需要接受专业培训”为衡量标准,不需要就是“公民化”、需要就不是“公民化”。有一定道理,但我觉得并不准确。
举个例子反驳,比如围棋这项运动,你说不是公民化运动吧,我就经常跟我 7 岁儿子下;你说是公民化运动吧,在学过围棋的人眼里,你这连门都没入。
所以我说这个评判标准不准确。所以我觉得不要去定义衡量标准,用类比的方式可能更能让人接受。如果 ppt、excel 这类产品算“公民化”产品,那我的答案就是,低代码大概率也会是“公民化”的产品。
但是就像我只会用 excel 记录一下每个月花出去多少钱,财务的同事能用 excel 做出来一个公司财务报表的这样一个区别,有的人用低代码产品可能就只会做个问卷调查,有的人能做一个 ERP 系统出来。这很大程度上不是产品问题,是人的问题、是需求的问题。
当然,不同的低代码产品侧重点不一样,有的低代码产品更看重易用性,有的产品更兼顾易用性和通用性的平衡。这些产品走向“公民化”程度、范围和路径可能就不一样。
微软(中国)有限公司全渠道事业部,创新技术总经理崔宏禹
其实 “公民化” 这个词,或者说 “Citizen Developer”,我一直觉得特别抽象,其实更应该说是 “Digital Innovator”。
最近五年,数字化、移动化、智能化的发展,要远比过去十年、二十年要来的快,当下很多的平台、产品、消费习惯、业务模式,放在五年前,十年前都觉得不太现实,就像现在出门我最担心的是手机没电,而不是没带钱包。
低代码在这个时候出现,如果能够得到善用,确实能够群策群力,解决以前需要 3 个月、6 个月,要找专业供应商才能解决的问题。
就比如以前要从手机上查系统里的产品型号,整理成 BOM 发给客户,又要开发移动 APP,还得考虑 iOS 还是 Android,还要写接口、匹配不同的设备型号、分辨率等,很麻烦,所以很多时候想想也就算了,就手工搞吧,也不是搞不定,订单也不多。
就是这类看似不难,当前也能对付,投入成本高的需求,在企业中有很多,不断得对付着,终究一天会发现,企业如果生意机会暴增,但却没有能力处理这类需求。
低代码的出现,就提供了一个很好的平台,不是说一定让每个人都去开发,而是说当业务专家有个想法,就可以立马上手实现的,于个人、于公司,都是好事。
用友网络助理总裁、生态布道师刘鑫
低代码本质上就是为了去满足企业和业务部门大量的数字化应用的需求,这就需要让代码变得更具象,变得更简单,让界面和场景对于非 IT 人群更友好。
但在当前的环境下,“公民开发者”缺乏程序开发的逻辑思维,专业培训不足,而国外用户天然对以英文编写的代码具备先天语言优势,相对国内用户的“公民化”还有更远的路要走,这就需要低代码平台不断提升产品和服务的质量。
问题八
低代码安全吗?
腾讯云高级技术产品经理刘兆明
安全和不安全首先要看企业目前自身的关注点在哪里,然后从全方位进行评估,比如要看低码平台本身的底层支撑平台是否有国家安全认证。
低码产品本身是否有安全相关的设计保障,比如数据安全且有备份,登录鉴权体系完备,权限体系灵活可控等等安全措施。
网易数帆轻舟低代码平台负责人严跃杰
说低代码安全或不安全都有一定的道理,主要看关注哪个方面。
说低代码安全主要是基于,低代码跟传统软件开发相比,本质上是传统开发中很多需要人做的跟业务本身无关的、重复性的工作让渡给了低代码产品来自动实施,我们知道任何系统里面,人都是一个不安全因素。
程序员同学应该都了解,系统 bug 或者漏洞 99% 不是自己写出来,就是同事写出来,还有 1% 可能是用了一个不怎么广泛使用的 framework 或者 lib。
所以从软件研发的整个体系去评估,低代码都会比传统软件开发更加安全、可控。
说不安全,主要是看低代码产品本身设计和质量有没有做好,因为低代码产品作为一个软件生产工厂,它会成倍的放大问题,所以我们对低代码产品的设计和质量要求会比其他的软件产品要求更高。
还有一点不安全考虑是,很多低代码产品为应用提供的是引擎式运行环境,相当于低代码生产的是一个个黑盒应用。
对使用者来说,这就是一个不安全因素。所以对应用源码有安全审计要求的企业,无非两种解决手段:一种是要求引擎式低代码厂商提供引擎源码;一种是使用类似轻舟低代码这类源码生成型产品。
总体上来说使用低代码产品开发应用比传统软件开发更加安全,而且用发展眼光看,不管是是从产品技术层面还是用户心理接受度层面,都会越来越安全。为什么现在大家不质疑各种编程语言的安全性、不质疑 JVM 的安全性本质上是一个道理。
微软(中国)有限公司全渠道事业部,创新技术总经理崔宏禹
低代码作为一个开发平台,和其他的开发平台一样,并不因为其引入“公民开发”的概念而降低了安全性。
一方面,低代码平台一般在企业安全的 DMZ 或安全的云平台中建立,并且必须毫不费力地通过网络安全许可来实现对代码和数据的访问,可以共享整个企业的安全策略,因此,平台层面的安全是有保障的;
另一方面,低代码平台一般是自动生成的代码以及开发人员编写的自定义代码实施最佳的编程实践(编码约定,设计模式和数据加密),简化与现有 CI/CD 流程和工具的集成,因此,也是能保证低代码平台的安全。
用友网络助理总裁、生态布道师刘鑫
选择私有部署可放心安全问题。而在公有云环境下,还是需要专业技术人员对接口、后端服务进行部署;此外还要识别提供低代码服务的厂商,相对综合能力更强、有更多客户案例的平台,在专有库、接口加密等方面更加可靠。
问题九
如何选择低代码平台?
腾讯云高级技术产品经理刘兆明
如何选择低码平台首先要看要解决什么问题,以下举几个例子。
作为一家企业,公司还在初创时期,这个时候业务还不稳定,公司的流程会经常变化,但是没有复杂的流程、权限管控,公司更多的是办公协同和考虑采购成本,此时买一家协同办公领域的低码平台即可。
作为一家服务商,想要做微信小程序端的项目交付,此时可以直接选择微搭低代码平台,因为微搭目前是国内唯一一家微信小程序原生的低代码平台,感兴趣的同学可以前往 https://cloud.tencent.com/product/weda?from=15028 体验,有 3 个月的免费体验。
网易数帆轻舟产品总经理陈谔
对于低代码平台的选择涵盖了各个方面的特性,包括对我们代码逻辑描述能力的支持,对数据访问能力支持,对流程定义能力的支持。
对数据的操作,对界面的布局,对于流程的定义,这些在企业应用里面是最常见的部分,低代码平台必须要有。
还有一些更加深层的,比如说你开发出来的企业应用,它能不能提供高可用的能力?它的性能在企业里面是不是达标的?你开发的应用如果复杂度高了,今后别人还能不能维护得下去?这些都是隐藏低代码平台背后,你真正要为企业提供服务所要具备的能力。
微软(中国)有限公司全渠道事业部,创新技术总经理崔宏禹
数字化转型已经成为企业间的共识,但是转型之路上充满了挑战,比如不断涌现的创新型业务需求、信息孤岛、切换成本、IT 和技术人才缺口等等。
在众多的数字化转型的实施方案中,低代码平台因其‘全民开发’理念成为首选。
在现阶段,企业可以从快速落地的业务场景出发进行思考,适合低代码的典型应用场景可以分为以下类型:创新型应用、客户参与型应用、内部运行效率型应用、遗漏系统的迁移或者升级。
以客户参与型应用为例,主要是应用系统建设过程中,要针对客户业务多样化需求进行开发的应用,或者客户根据自己的业务需求,基于某一个平台自行开发并提供给其它客户使用的应用;其主要包括的 3 个场景分类为:基于 Web 的门户网站,移动为先的供应商应用,新的 SaaS 应用。
用友网络助理总裁、生态布道师刘鑫
低代码平台的背后运用了不同的技术,有着不同的运营模式,与企业自身的 IT 基础架构设施和 IT 技术能力相匹配,就是最佳的选择。
对于小微企业和创业者而言,优先选择轻量化的工具,可以解决大量业务场景问题;对于大中型企业,建议选择产品能力成熟和技术背景雄厚的低代码平台,以此应对复杂的业务场景,同时培训教程、产品服务也更有保障。
问题十
低代码是开源的好?还是商用的好?
腾讯云微搭基础产品负责人骆勤
这个分业务场景来看:
如果业务是非盈利的个人项目,可以尝试开源的版本。如果是商业级的项目,从长期发展的角度肯定是选择商用版本合适,且不论商用版本的背后有着大量专业人员为平台的更新维护进行托底。
到后期随着自身业务数据量的增长,数据安全和并发能力就是一个难以克服的痛点,所以只要对自己业务有信心建议是选用商业版本。
低代码的发展跟早期云计算服务的发展趋势是很相似的,它是一个需要耐心和长期投入的方向,未来也可能成为应用开发的基础设施,坚持到最后的可能是几个头部玩家,所以从业务长期发展角度,也建议选择头部公司的低代码平台服务更有保障。
网易数帆轻舟低代码平台负责人严跃杰
评价低代码产品的好坏,我觉得比较通用的标准还是看能否满足需求、能否解决问题。至于开源的好,还是商用的好,我觉得不同的企业、团队有不同的答案。
如果一家企业,有比较强大的技术研发能力,又有掌控的动机,他很大概率会选择开源技术,通过源码级研究再结合自身业务需要再进行产品化,这样他能对技术、产品到应用场景都会有完全掌控。
如果是一家研发资源比较少技术能力比较弱的企业,他只希望通过低代码做一些满足他业务需要的应用,那他大概率会选择商用产品。所以这个问题在不同的需求方眼里会有不同的答案。
微软(中国)有限公司全渠道事业部,创新技术总经理崔宏禹
在开源与商用的对比上,其实代码还是低代码面临着同样的问题。很多开源软件都会有商用版本,目的是企业在出现问题时的一个保障。软件围绕着商用软件,开源盛行,商用再起不断地循环,谁也不能站出来给一个明确的答案是谁好谁不好。
分享一点自己的感悟:首先,开源的功劳肯定是被认可和肯定的,开源的软件要么是民间的智慧聚在一起解决一个软件领域的实际问题,比如 OpenStack,要么技术巨头捐赠出来造福人类,比如 Kubernetes。开源的宗旨一直是希望让大众能够享有技术红利,避免重复造轮子,提升技术上的创新,减少大企业的垄断。但开源也同样面临着一些问题,每一个问题的解决都是义务的,开发项目中的开发人员被成为 Contributor,是因为他们没有因为写这个代码拿到一分钱,所以很多需求的实现,Bug 的修改都是需要时间的。
所以,如果企业有技术资源和技术能力,利用开源软件时能够自己去优化,去解决遇到的问题,改代码,那开源软件确实实用;但也有很多企业,其核心竞争力是产品,而不是基础设施中用到的软件,可能商业软件会更适合一些。
用友网络助理总裁、生态布道师刘鑫
开源与商用并非判断产品好坏的唯一标准,存在即是合理,两者在不同需求层面都会相应的价值体现;即便是基于开源,面向用户开放的平台也会要进行产品层面的开发和优化;目前成熟的低代码开发平台基本也不会是开源的,商用的平台能力与服务肯定更加有保障。
往期推荐:
技术琐话
以分布式设计、架构、体系思想为基础,兼论研发相关的点点滴滴,不限于代码、质量体系和研发管理。