为什么要使用低代码 – 前端角度的思考
文章目录
- 为什么要使用低代码 – 前端角度的思考
- 当前前端发展现状
- 低代码的热潮已经掀起千层浪
- UI工程师常常面临一些令人尴尬的场景
- 低代码化解场景思路
- 低代码对于外包型企业或软件研发企业在前端有什么优势呢?
- 这里简单列举三点优势
- 技术标准统一性
- 一次性投入,终身的开发成本降低
- 降低开发门槛,可快速组建开发团队
- 最终根据1到2年的标准建立后,可以达到的效果
- 有人说ChatGPT是可以取代低代码?
- 总结
当前前端发展现状
根据Github 2021年报,语言排行榜单(图1)我们可以看出 前端开发语言JavaScript 从2014年到2021年始终保持着开发语言榜首位的领先地位,而Java 和Python 在近几年一直在第二第三之间交替变化。而前端开发语言 TypeScript 从建立到2021年呈现了快速增长的趋势。从全球开发者角度来看,前端开发者是软件开发不可缺失的中坚力量,这是毋庸置疑的。
从企业开发人员组成来看,以阿里巴巴为例,在2018年发布的代码数据报告中,程序员总量为3W+,JavaScript 的开发者占比为24.82%。而现如今,杭州的SaaS型创业公司,前端工程师占比高达50%+,放眼数字化转型,产业互联网,对前端工程师的需求更是指数型增长。
低代码的热潮已经掀起千层浪
低代码在中国市场从软件发展中期阶段已经逐步在技术领域实现了从0到1的发展,并在在各个企业进行商业化布局。
从开发者层面来看,其实低代码产品早就千罗万象了,像对于用于前端设计的产品其实也是带有低代码属性,比如:线上的Bootstrap网页设计,墨刀等,可以直接通过拖拽等方式将原型页面设计好,并生成代码。
从集团性企业来看,我国BATD指百度腾讯阿里抖音都在近几年逐步衍生出属于自己的带有低代码属性的产品,比如微搭,宜搭,飞书等。这些产品都在这些互联网企业的特定领域进行了广泛应用,比如协同化办公,小程序开发等等。对于巨头而言,由于自身在中国市场长打造了带有巨大流量的IT生态圈,这些生态中的各种产物都协同或增强了自身核心软件产品的应用价值,所以自己的低代码产品即使圈定在了特定领域,但是其使用量也是巨大的。
当然对于我国的低代码赛道不只是这些我们常听到的巨头正在冲刺,像国产ERP领域的用友,金蝶等企业也在低代码赛道乐此不比。
从全球低代码赛道来看,可以参考Gartner 低代码行业报告,以 Mendix 和 OutSystem为首,而Mendix在2019年已经正式进入了中国市场,并在各个领域场景进行了广泛应用。与我国无论是大厂还是ERP企业的低代码不同的是,Mendix 和 OutSystem是企业级别的低代码开发平台,简单来讲,就是它是真正做了替代写代码的这一过程,无论是从前端的UI展示,还是后端的逻辑设计及不同软件架构设计的支持。
这里提及一下 Mendix 在2015年被西门子收购。
UI工程师常常面临一些令人尴尬的场景
以下场景皆为假设:
- 1 张三 是一个前端程序员 熟悉VUE,Angular,React 三大主流框架,当前在一家大厂工作,张三每天面临着产品经理,常常针对一个页面的颜色,布局与产品经理有着不同的见解。
- 2 张三从大厂跳槽了,来到了一家外包公司,此外包公司常常做一些重复性的设计与代码实现,但是并没有像大厂那样的React 元素库或VUE 元素库,张三每个设计都是在寻找元素,做着元素的设计与应用。
- 3 张三很惨,又跳槽了去了一家初创企业,此企业只有几个研发人员更没有元素库了,张三是唯一一个前端工程师,每天需要从图纸设计,客户需求对接,到代码实现来重复造轮子。
- 4 作为老板,常常想构建一个自己的元素库,方便以后的交付。
低代码化解场景思路
- 假设1的解决策略:
低代码的能力 1. 让业务产品人员可以与IT人员进行协作
其实当前很多的产品经理,都在使用一些工具如Figma来构建UI Prototype,但些工具与实际的开发领域的UI构建中间还需要做一些Copy工作或一些不相互兼容的内容,而使用统一的低代码工具来构建,产品经理不需要IT基础也可以学会使用来构建Prototype,这样程序员和产品经理可以在同一种知识体系下讨论UI的修改策略。 - 假设2的解决策略:
低代码提供公共的免费的开发库,免费下载,并下载后的使用无需对代码层面进行理解
假设低代码的广泛应用于大厂和外包公司,那么张三跳槽后可以不用再手动去复现那些element组件,而是可以去公共的软件组件商店去寻找。
对于重复性的UI元素设计,张三可以构建个人的组件在公共商店分享,或售卖 (可以产生个人利益)。 - 假设3的解决策略:
与假设2 有些相同,由于只是个人工作,张三可以帮助初创企业构建一套完整的组件库,以更好地承接业务,在有了统一的低代码标准后,软件开发降低了对开发人员的技术要求,同时可以降低初创的用人成本 - 假设4的解决策略:
低代码符合构建元素库的技术要求,那么这方面优势:
1.从传统元素库来讲:目的就是让构建UI的人员通过代码导包的方式构建软件前端
2从低代码元素库来讲:不只是将导包,copy等类似操作简化为拖-拉-拽,更是从构建前端应用的层面上降低了技术要求。
低代码对于外包型企业或软件研发企业在前端有什么优势呢?
这里简单列举三点优势
技术标准统一性
低代码可以帮助企业建立相应的技术标准和软件开发流程标准,以Mendix为例,Mendix拥有自己的各种前端库后端组件库,也可以帮助企业建立具有自身企业风格的前端元素库和组件库,和配置性的元素说明使用文档,使元素库低成本的维护和使用,而Mendix的前端框架的基础为React。
建立统一的软件开发标准,无论是对于前端还是后端,都能够更加快速的让新人包括新入职的程序员、实习生更快的进入开发状态,这取代了新手程序员入职第一个任务就是阅读原有冗余复杂的内部软件的说明文档和业务逻辑代码。
一次性投入,终身的开发成本降低
在应用低代码平台初期肯定是要花费一些时间和成本的,软件开发标准建立对于一个企业内部,相当于企业自身内部的一场技术性变革。
在标准的应用UI库构建完成后,后续的软件开发,无非是复用开发软件项目模板、组件;甚至同一类型的项目简单的更改几处文字即可完成软件交付。
而组件库的使用说明使不懂技术的业务同事也可以根据step-by-step的说明进行软件初期的原型构建,让开发者直接专注于业务理解到Coding的过程。
降低开发门槛,可快速组建开发团队
正常的低代码开发团队架构为3-5人,以5人为例,1人担任产品经理,1人担任软件架构师,3人担任敏捷软件开发工程师。
而敏捷软件开发工程师不需要非常专业的开发水平要求。
最终根据1到2年的标准建立后,可以达到的效果
1.面对重复的业务场景定制化,可以通过小团队(3-5人)甚至新人,使用企业的软件项目Template进行2次修改构建或重构,或者是功能组件的拼装从而达到:
- 1-2 周 week,实现初次客户对接的demo展示
- 3-6 周 week,在多次迭代后完成项目交付和运维部署
2.面对新的复杂业务场景,通过3-5人团队初期形成新的prototype,按照标准模式构建本次项目业务需求的软件,最终完成交付后,积累企业内部模板。
此过程需要根据业务场景具体需求来预估时间。
有人说ChatGPT是可以取代低代码?
其实这里简单讨论不做赘述
ChatGPT是从人类的技术长流中的高维度的技术产物,个人理解,在软件开发层面的应用,ChatGPT不是为了替代或提高软件开发劳动力的,这只是它在软件行业的一个普遍大家解决问题和简化工作的方式。
低代码的最浅层次的理解是劳动力替代。
但是在小编看来,低代码是为了在软件发展历史长河中将软件开发上升更高一个维度的产物,1GL>2GL>3GL>4GL>5GL>?=低代码。
简单来讲,它不是单纯为了劳动力替代而产生的,他更多是为了个人或企业或全软件生态建立统一的软件开发标准,而从小层面来看对于企业建立一个标准实际上是至关重要的。
简化流程,提高生产力只是低代码中间的一环
总结
其实每个人都有自己对低代码的思考和认知,中间内容有在根本逻辑或根本思考方向有着巨大偏差的,希望大家在评论指正和探讨。
谢谢大家阅读