如何选择无代码开发平台
第一类是通过拖放开发应用程序界面。数据来自现有系统。在这一领域有很多新的创业公司,比如被西门子收购的Mendix,获得大量融资的Outsystems,以及微软开发多年的PowerApps。这些可以帮助公司在现有系统的基础上开发新的应用程序接口,特别是扩展到移动电话。
第二类是从头开始创建业务系统,或者构建企业数据中心。这个领域需要多年的技术积累,需要通过几百个项目沉淀客户的需求,做出好的开发工具。如何对基本功能进行标准化,如何将差异化的部件提取为可配置部件是一个非常困难的课题。在这方面处于领先地位的是Salesforce,它开发了CRM并逐渐发展,Odoo从ERP开始,以及拥有10年开发经验的云表平台。
这里的重点是第二类,这是一个无代码开发平台,可以开发全新的业务系统。在选择这样无代码的开发工具时,程序员首先要考虑哪些问题?
应该管理哪些数据?
数据是系统的核心。管理哪些数据和管理哪些元素是系统开发的首要考虑因素。但问题是,在设计系统时,不可能同时考虑所有这些问题。这就是无代码开发平台的优势所在。通过组态的方法建立系统原型,边建设边运行,看效果,并根据效果逐步调整完善。系统原型可以很快建立起来。即使系统正式上线,也可以随时根据客户需求快速修改系统配置。
如何管理程序版本?
程序员的大脑不是万能的,不可能每次都记住修改了什么,但是版本管理工具可以。版本管理是优秀程序员在开发系统之前必须考虑的第一个问题。如果你正在开发一个稍微大一点的项目,你需要更多的人来合作。如何创建问题以及如何跟踪每个开发人员每次更改的内容都非常重要。
Salesforce,Odoo,云表平台可以使用源代码保存所有的业务配置文件和业务逻辑脚本。开发人员的所有智慧都可以保存在Github库中,再结合Github强大的功能可以提交和回滚、创建分支、发布,还是那么熟悉、那么优雅。通过Gitbub问题,您可以记录客户提到的每个需求,并将其绑定到源代码修订历史记录中。这是客户将来发脾气时非常重要的证据。
如果我想更改系统内核,我应该怎么做?
无论开发平台有多好,都不可能100%满足客户的需求,尤其是中国用户,他们经常提到一些奇怪的需求。当然,对于大多数需求,我们建议开发人员根据系统提供的配置条目来解决问题,而不是更改内核。但当必须更改时,Odoo和云表平台都是开源系统,可以修改源代码,但Salesforce不是开源软件,不可能更改内核。
如何控制数据权限?
由于它是一个业务系统,访问控制非常重要。我创建的数据,谁可以看到,谁可以更改,甚至谁可以看到哪些字段可以更改,都应该加以控制。但如果这些控件都是用代码编写的,那就太累了,不利于以后的维护。
如何开展业务审批?
认可是中国管理的一大特点。避免轻率和明确的责任。Salesforce、Odoo和云表平台都有内置的流程引擎,并提供图形化表单和流程设计工具。用户的系统管理员可以独立配置、监视和管理业务流程,而不需要开发人员的干预。流程中的数据也可以通过配置自动归档到业务台账中,节省了接口开发的成本。
如何编制统计报表?
对于系统的开发,后期的数据分析是非常重要的。无代码开发平台将内置报表设计工具。无需开发人员的干预,用户的系统管理员可以配置各种报表,包括数据透视图。更重要的是,系统生成报表时,需要考虑当前用户的权限。同一个报表,根据不同的用户权限,可以看到不同的数据范围。这些不需要开发人员干预,系统会自动处理它们。
开发的系统是否可以用于大型项目?
这是个真正的问题。为数百个用户开发一个小型系统可以由许多程序员完成。但是,如果您面对的是成千上万、几万或几十万的用户,那么您必须建立在一组可以不断扩展的平台上。Salesforce本身就是一个云服务,海量数据也不成问题。odoo使用postgresql数据库,大型项目需要更改系统源代码来构建数据库集群。云表平台的核心是基于JAVA开发的,可以轻松部署成集群模式,同时运行几十个上百个服务,单个服务器崩溃根本不会影响用户的使用。数据库使用MongoDB,也可以轻松构建成集群模式。几台或几十台服务器同时运行。更重要的是,即使一些服务器崩溃,系统数据也不会丢失。开发的系统可以用手机访问吗?
对于开发者来说,调整手机界面是一件非常麻烦的事情。为了与Android和Apple系统兼容,苹果系统应该考虑手机和平板电脑,Android系统也应该考虑各种版本。我没听说华为想生产自己的手机系统吗?不过,这些都不需要担心。无代码开发平台将有一个内置的手机操作界面。是的,你什么都不用做。已经可以使用移动客户端访问您开发的系统。
如果数据被篡改了怎么办?
由于业务系统需要数据共享,必然存在多人同时编辑一条数据的问题。在传统的开发模式中,数据是先变化后变化的。它保存在数据库中而不留痕迹。好的无代码开发平台,包括Salesforce、odoo、云表平台,都提供了记录审核功能,可以对关键业务表启用,这样用户的每一次修改都会留下痕迹,谁、什么时候、哪个字段被修改,从什么值到什么值,都会被完整记录下来,以备将来参考。
如果程序员要离开呢?
对于公司来说,程序员的移动性通常是个大问题,因为大型系统的代码量非常大。一旦核心程序员离开,他们将在系统维护和持续开发方面面临较大的问题。在使用无代码开发平台之后,
因为程序员只需要编写核心业务逻辑,代码量通常只有传统项目的1%或更少,维护和移交也变得更加容易。系统内核由制造商定期维护和更新。即使内核代码有10亿行,也不必担心。
所开发的系统是否可以视为无产品销售?
由于开发花费了大量的精力,因此只将其应用于一个项目当然是太浪费了。我对开发人员的辛勤工作和公司的投入深表歉意。与Salesforce和zohocreator等在线开发工具类似,无法将开发结果打包到产品销售中。Odoo和云表平台是完全开源的,开源社区版是完全免费的。云表平台开发的应用系统可以在本地部署,打包成自己的产品销售,甚至可以发布到应用市场,供全球合作伙伴共同推广。
对程序员的个人发展有帮助吗?
提高效率促进社会进步。过去,你可能是公司研发部门的一个螺丝钉,负责开发某个功能的业务系统。切换到无代码开发平台后,可以独立负责大型项目,开发效率大大提高。你的工作内容将从编写一些枯燥的代码转变为与业务人员交流、分析需求、设计数据模型、编写核心业务逻辑,并逐步提升到产品经理的水平。这也是一个非常罕见的程序,可以编写产品经理。创造的价值是不同的。我相信未来的收入会有很大的不同。