每個人都應(yīng)該學習編程,因為它教你如何思考。
--史蒂夫.喬布斯
Scratch截圖
最近幾年少兒編程火熱,少兒編程入門通常從Scratch軟件開始,Scratch是美國麻省理工學院開發(fā)的一款簡易圖形化編程工具。Scratch編程通過涂鴉,錄音,圖片的方式,整個過程沒有編碼,像搭積木一樣的編程,但是同樣能夠體驗到編程的邏輯性和成就感。
如果Scratch是兒童的玩具,那么低代碼開發(fā)就是成人的編程利器,通過低代碼開發(fā),人人都可能通過拖拽的方式編程,全民編程的時代已經(jīng)來臨了!
PART 01 什么是低代碼開發(fā),低代碼開發(fā)有什么優(yōu)勢?
低代碼開發(fā)(low-code development),是指軟件會開發(fā)過程中,使用者以圖形化界面以及少量編碼編寫應(yīng)用程序。
低代碼是一種軟件開發(fā)方法,可以高效的以少量的手工編碼交付應(yīng)用程序。
低代碼編程示意,圖來源outsystems公司網(wǎng)站
低代碼開發(fā)同傳統(tǒng)的開發(fā)模式相比,有以下優(yōu)勢:
開發(fā)和部署更快:使用低代碼開發(fā),最快可以數(shù)小時完成編程任務(wù),效率極大提升,并且部署簡單,回滾方便。
門檻低,讓更多的人參與:不需要專業(yè)的技能,可以很快上手,可以將更多的時間集中在業(yè)務(wù)邏輯的實現(xiàn)上。
安全性更高:低代碼開發(fā)如同在沙箱中開發(fā),可以實現(xiàn)更好的隔離性。
當然,低代碼開發(fā)也有劣勢:
運行效率低:同傳統(tǒng)開發(fā)相比,低代碼開發(fā)不涉及底層優(yōu)化,運行的時候需要消耗的資源更多,相比運行效率更低。
容易被鎖定:低代碼開發(fā)往往需要依賴于平臺,代碼不能被移植,容易被鎖定。
應(yīng)用場景有限:低代碼開發(fā)適合開發(fā)人事管理、投票等應(yīng)用,不不適合開發(fā)底層應(yīng)用。
PART 02 低代碼開發(fā)勢不可擋
Gartner 2019年發(fā)布了低代碼平臺(LCAP)象限,Gartner預測,到2024年,低代碼應(yīng)用程序構(gòu)建將占所有應(yīng)用程序開發(fā)的65%以上,并且大約66%的大公司將至少使用四個低代碼平臺。
Forrester在2019年Q1發(fā)布了LCAP波形圖,F(xiàn)orrester進行的一項市場研究預計,低代碼開發(fā)平臺的市場將從2017年的38億美元增長到2022年的212億美元。
在資本市場上,低代碼開發(fā)也廣受追捧。
在國外:
2018年6月,低代碼開發(fā)平臺OutSystems獲KKR和高盛3.6億美元融資,估值超過10億美元,成為獨角獸。其年營收遠高于1億美元,并且每年增長率超過70%。
2018年8月,西門子宣布以6億歐元收購低代碼應(yīng)用開發(fā)領(lǐng)域的知名公司Mendix。
2020年1月,谷歌宣布收購AppSheet,AppSheet是一家無代碼移動構(gòu)建平臺,能夠從電子表格、數(shù)據(jù)庫或表單中提取數(shù)據(jù),并使用字段或列名作為構(gòu)建應(yīng)用程序的基礎(chǔ)來工作,自動從中生成移動端的報告生成App、郵件發(fā)送App、圖像記錄App等等。
在國內(nèi):
2018年5月,低代碼軟件開發(fā)平臺搭搭云獲千萬級人民幣A輪融資。
2018年8月,軟件產(chǎn)品服務(wù)商數(shù)式科技(2019)獲盈動資本數(shù)千萬人民幣天使輪融資;
2018年9月,可視化機器編程云服務(wù)平臺宜創(chuàng)科技獲清源創(chuàng)投戰(zhàn)略融資。
2018年12月,無代碼業(yè)務(wù)流程管理系統(tǒng)搭建工具輕流獲近千萬人民幣Pre-A輪融資。
2018年12月,PaaS平臺研發(fā)商ClickPaaS獲晨興資本數(shù)百萬美元A輪融資。
Amazon、Microsoft、outsystems、Saleface和阿里巴巴等廠商也于近些年紛紛推出各自的低代碼開發(fā)平臺。
PART 03 低代碼開發(fā)之權(quán)力的游戲
1. Amazon
今年6月,亞馬遜宣布以Beta形式啟動Amazon Honeycode項目,Honeycode是亞馬遜的低代碼開放項目,網(wǎng)站為https://honeycodecommunity.aws 。
Honeycode為用戶提供了一組用于常見用例的模板,包括客戶跟蹤器、庫存管理、即用清單、調(diào)查和時間表。
Honeycode服務(wù)運行在AWS 數(shù)據(jù)庫上,因此可以使用點擊式界面和類似于傳統(tǒng)電子表格的數(shù)據(jù)輸入結(jié)構(gòu)輕松鏈接、篩選和排序數(shù)據(jù)。Honeycode服務(wù)少于20用戶的應(yīng)用程序免費,對于需要更多用戶的應(yīng)用程序,將收取收費。
對于低代碼開發(fā),亞馬遜另外開啟一個域名,說明還在探索階段,也說明對低代碼開發(fā)的看好。
2. Microsoft PowerApps
Microsoft Power Apps 是一系列應(yīng)用、服務(wù)、連接器和數(shù)據(jù)平臺,可提供快速的應(yīng)用程序開發(fā)環(huán)境,以根據(jù)業(yè)務(wù)需求生成自定義應(yīng)用程序。使用Power Apps可以快速生成自定義業(yè)務(wù)應(yīng)用,這些應(yīng)用連接到存儲在任一底層數(shù)據(jù)平臺 (Common Data Service) 或各種聯(lián)機和本地數(shù)據(jù)源(SharePoint、Excel、Office 365、Dynamics 365、SQL Server 等)中的業(yè)務(wù)數(shù)據(jù)。
使用 Power Apps構(gòu)建的應(yīng)用提供業(yè)務(wù)邏輯和工作流功能,這些功能可將手動業(yè)務(wù)流程轉(zhuǎn)換為數(shù)字化、自動化流程。此外,使用 Power Apps 構(gòu)建的應(yīng)用具有響應(yīng)式設(shè)計,可以在瀏覽器或移動設(shè)備(手機或平板電腦)上無縫運行。
Power Apps 還提供了一個可擴展的平臺,允許專業(yè)開發(fā)人員以編程方式與數(shù)據(jù)和元數(shù)據(jù)進行交互、應(yīng)用業(yè)務(wù)邏輯、創(chuàng)建自定義連接器以及與外部數(shù)據(jù)集成。
微軟有許多PaaS應(yīng)用,很適合低代碼開發(fā)的場景,所以對低代碼開發(fā)也非常重視,在Gartner象限也處于領(lǐng)導者位置。
3. Outsystems
Outsystems成立于2001年,以”改變企業(yè)軟件交付方式”為愿景,是低代碼領(lǐng)域的獨角獸企業(yè)。
Outsystems平臺有以下功能:
全棧視覺開發(fā),拖放式UI,業(yè)務(wù)流程,邏輯和數(shù)據(jù)模型可創(chuàng)建全棧,跨平臺的應(yīng)用程序。
一鍵式部署,交付應(yīng)用程序并一鍵更新。OutSystems自動檢查依賴關(guān)系并處理所有部署過程。
應(yīng)用內(nèi)反饋,使應(yīng)用更好,更快。用戶可以直接在應(yīng)用程序內(nèi)部共享語音和書面反饋,從而簡化了整個變更管理過程。
自動重構(gòu),OutSystems分析所有模型并立即重構(gòu)依賴關(guān)系。修改數(shù)據(jù)庫表,所有查詢將自動更新。
兼容移動,通過脫機數(shù)據(jù)同步,本機設(shè)備訪問和設(shè)備上的業(yè)務(wù)邏輯輕松構(gòu)建美觀的移動體驗。
可擴展的架構(gòu),將微服務(wù)與深度依賴關(guān)系分析相結(jié)合??焖?,大規(guī)模地創(chuàng)建和更改可重用的服務(wù)和應(yīng)用程序。
Outsystems在低代碼領(lǐng)域深耕多年,在單一業(yè)務(wù)為低代碼的廠商中居于領(lǐng)先位置,相信隨著低代碼大潮的來臨,outsystems會增長更快。
4. Saleface
Salesforce一直是CRM技術(shù)的全球領(lǐng)導者,低代碼非常適合CRM應(yīng)用的開發(fā),Salesforce的低代碼開發(fā)平臺命名為閃電平臺(lightning platform),為用戶提供了所需的高級工具,以創(chuàng)建所需的應(yīng)用程序。
除了為低代碼用戶和以代碼為中心的用戶提供應(yīng)用程序工具外,閃電平臺還充當定制應(yīng)用程序的數(shù)據(jù)庫。用戶可以瀏覽Salesforce AppExchange,這是一個包含五百五十萬個可用應(yīng)用程序的存儲庫。實際上,有79%的Salesforce客戶使用AppExchange中的應(yīng)用來改善業(yè)務(wù)。
閃電平臺由以下部分組成:
閃電服務(wù):閃電服務(wù)是閃電平臺的核心,由Force.com發(fā)起的可信基礎(chǔ)架構(gòu),數(shù)據(jù)模型和共享服務(wù)組成。該平臺具有多租戶,元數(shù)據(jù),共享基礎(chǔ)結(jié)構(gòu),自動升級,自定義功能和API架構(gòu)。
閃電生態(tài)系統(tǒng):銷售人員和Salesforce AppExchange上越來越多的合作伙伴提供了預先構(gòu)建的組件的閃電生態(tài)系統(tǒng)(可重用的代碼塊,可組裝到自定義應(yīng)用程序中)。
myLightning:管理員和開發(fā)人員可以使用工具通過Lightning App Builder定制任何應(yīng)用程序以進行組件組裝,使用Lightning Flow進行流程自動化。
低代碼讓Salesforce服務(wù)的銷售人員有可能根據(jù)自己的需要做應(yīng)用開發(fā),不用再走傳統(tǒng)的開發(fā)模式,讓銷售人員的能力得到釋放,效率得到提升。
5. 阿里巴巴
阿里巴巴的低代碼平臺為宜搭,平臺的命名取適宜搭建、容易搭建之意。平臺集合了頁面設(shè)計、業(yè)務(wù)規(guī)則定義、數(shù)據(jù)收集與分析三大核心能力,用戶通過簡單的拖拽、配置,即可完成業(yè)務(wù)應(yīng)用的搭建。
平臺提供以下應(yīng)用模板類型:
疫情防控統(tǒng)計系統(tǒng):用于人員健康篩查,病例情況統(tǒng)計,返工信息收集等與疫情相關(guān)的數(shù)據(jù)收集。詳情請參見搭建疫情防控統(tǒng)計系統(tǒng)概述。
調(diào)查問卷:用于收集數(shù)據(jù),支持單用戶提交單次或者匿名免登錄數(shù)據(jù)提交。
人事管理系統(tǒng):用于企業(yè)員工信息管理,請假以及落戶申請、證明開具等流程。
研發(fā)效能管理:自動觸發(fā)外部系統(tǒng)接口進行驅(qū)動。用于發(fā)布申請、數(shù)據(jù)變更申請和運維管理等。
法務(wù)系統(tǒng):用于合同審批、合同收付款、用章管理等。
財務(wù)管理系統(tǒng):用于財務(wù)管理,包含報銷、付款申請以及供應(yīng)商管理。
隨著阿里釘釘生態(tài)的完善,對釘釘應(yīng)用的需求也越來越多,低代碼開發(fā)可以高效的豐富釘釘應(yīng)用,讓釘釘生態(tài)更完善。
PART 04?總結(jié):低代碼開發(fā)可能引起云計算級別的變革
云計算引發(fā)了一輪變革,但是云的使用者主要還是IT人員,低代碼將引發(fā)的新的一輪變革,這一輪變革超出了IT圈,讓全民開發(fā)變?yōu)榭赡堋?/p>
也許隨著低代碼的普及,以后將不再有全職的程序員,因為人人都將是程序員!
參考文檔:
https://en.wikipedia.org/wiki/Low-code_development_platform
https://www.forbes.com/sites/ilkerkoksal/2020/04/29/the-rise-of-low-code-app-development
https://www.outsystems.com/blog/what-is-low-code.html
https://dzone.com/articles/low-code-vs-no-code-form-following-function
https://www.iyiou.com/p/115417.html
https://www.sohu.com/a/336292448_100191017
https://amazonaws-china.com/cn/blogs/aws/introducing-amazon-honeycode-build-web-mobile-apps-without-writing-code/