前一阵子听说了一个新鲜词 No Code。直译过来就是“无码”嘛,所以第一反应是冯大辉(Fenng)的公司,然而这里写的并不是这个 >_<
引用文章 Talk is cheap, show me nocode (少数派) 述阐述下定义:
何为无码?
nocode,区别于传统的写代码编程的方式,就是用非代码的方式制作 app。
相关的文章 No Code,无码时代已经到来,从中也能窥见一般。但是上来就论平台化、API 经济和软件变革之类的,也显得有些太宽泛了。
下面笔者就从技术的角度简单总结一下现有 no code 工具的大致分类。
(首先说明一下,广义上的非代码创作工具并不在讨论范围之内,如做游戏的 RPG Maker、写文章的微信公众号等)
一. 从产出物来看
- 直接生成网页(Webflow 这个感觉是定制化程度更高的 CMS 系统?)
- 能制作出 App(Glide、Appsheet 通过将 Excel 或 Google doc 等数据可视化处理,并打包成跨平台 App)
- Workflow (Ifttt、Zapier类似于脚本语言一样能将不同 App 串联起来实现自动化功能)
上面少数派文章中还提到交互式文档(Notion 等),笔者体验下来感觉离一款能发布的产品还尚有距离。
二. 从操作流程来看
- 导入 Google sheet 等在线文档,辅以预定义的模板 => OK
- 拖动 UI 元素(类似于早期的 Dreamweaver),点击发布 => OK
- 需要像搭积木一样,将各个逻辑块叠加起来(类似于 K12 一类的教育软件 -- Scratch 等),获得新的组合功能 => OK
初步体验后的感受
首先,作为一名软件开发者,能够感受到 no code 背后是海量的 code。No code 工具的确将软件实现的细节封装起来了,但是在使用 no code 工具过程中,仍然避免不了 设计-开发-调试 的一整套流程,没有足够的抽象思维,没有对软件 API 的理解,将不同 no code 工具、甚至是单一 no code 工具内部的各个模块的组合运用,将是非常困难的事情。
对于一些稍微复杂的功能,no code 工具可能实现起来会比较繁琐,当然这也是目前所有尝试图形化编程工具的通病。开发门槛是降低了,但后期 维护和扩展 的难度却是指数级上升。
目前来看,程序员工作被 no code 工具替代的可能性短期内还不大。
目前国内发展困境
- 由于一些网络原因,不是所有 no code 工具都能顺利使用,哪怕只是一小部分失效,对于整个 no code 工具链的威力都是大打折扣的
- 另一方面,国内互联网已经发展成为一座座信息孤岛(以微信为首的各大互联网公司相互屏蔽了数据的流动),彼此连接并不顺畅
对于国内工业软件的影响
笔者所处行业为工业软件,在此对工业软件的 no code 趋势稍加联想。
- 由于 中国工业软件失落的三十年,国内暂时还没有平台化的软件出现,各个厂商也都是烟囱式的发展,标准也不够统一,数据流动的能力基本为零(互联网公司若是有足够的利益驱动,打通数据是分分钟的事情)。
- 工业界的软件部署,同互联网 2C 的产品相比,环境更为复杂,很多情况下访问通用平台的 API 是很困难的。
基于以上两点,短期内 no code 在工业软件的发展是举步维艰的。
但是在工业软件中要能自定义一些复杂流程,这种需求一直大量存在,同时拥有写代码能力的人又不那么多。我们可以从设计角度借鉴 no code,比如说搭积木式的流程设计,用 GUI 替代冗长的 API 文档,各种接口设计之初就将平台化考虑在内。总有一天,国内的工业软件能慢慢演化出 no code 能力。