2022-09-28
01
何為低代碼
目前普遍對低代碼的定位存在局限的視角,低代碼被認(rèn)為是一種敏捷開發(fā)技術(shù)和工具,于是業(yè)界更多的考慮是通過低代碼開發(fā)與傳統(tǒng)瀑布式開發(fā)的效率提升做對比。這是對低代碼認(rèn)知的不足,也是市場同質(zhì)化競爭所帶來的一種模糊的、籠統(tǒng)的印象。
Forrester認(rèn)為低代碼是“以最小的手動編碼和前期最少的配置、培訓(xùn)和部署工作投入,快速交付業(yè)務(wù)應(yīng)用程序的平臺。” Gartner的定義是“LCAP至少必須包含這些低代碼能力(例如模型驅(qū)動或帶有腳本的圖形編程方法)去開發(fā)由用戶界面、業(yè)務(wù)邏輯、工作流和數(shù)據(jù)服務(wù)組成的完整應(yīng)用程序。”
我們認(rèn)為,低代碼其實首先是一種降低IT技術(shù)門檻的理念和思想。任何一種以降低IT技術(shù)應(yīng)用難度和復(fù)雜難度為方向的產(chǎn)品都具有極大的社會價值和經(jīng)濟(jì)價值,因為這將極大提升IT產(chǎn)品的普適性和易用性。
大家可以試著回想一下,您所知道的最具代表性的低代碼類的產(chǎn)品是什么?依我看最早、最知名的低代碼產(chǎn)品應(yīng)該是Windows。其實微軟的windows視窗操作系統(tǒng)就是一種低代碼(無代碼)的典型產(chǎn)品,在那個年代改變了原來依靠DOS操作系統(tǒng)需要鍵入命令才能與計算機(jī)交互的模式,通過可視化界面或簡單操作就可以完成與計算機(jī)的協(xié)作,這毫無疑問是偉大的創(chuàng)舉,也帶給了微軟公司巨大的成功。
低代碼真正的價值其實是對“可組合的業(yè)務(wù)”的支撐,也就是說當(dāng)?shù)痛a技術(shù)被應(yīng)用在業(yè)務(wù)組件和模塊的時候,將產(chǎn)生裂變式的巨大價值。通過低代碼完成的組件封裝模式將為敏捷開發(fā)帶來顛覆性的變革和創(chuàng)新。這是因為,低代碼技術(shù)天然匹配并可以完美融合通過組件化構(gòu)建應(yīng)用的新一代系統(tǒng)建設(shè)思想。而更為深層次的原因是低代碼技術(shù)的目標(biāo)其實就是滿足模型或組件封裝這一新一代開發(fā)思想中的核心訴求。
業(yè)務(wù)解耦沉淀共性組件是大勢所趨,而組件形態(tài)包括業(yè)務(wù)元素和數(shù)據(jù)元素。這些組件在面對不同的系統(tǒng)需求和應(yīng)用需求時,通過更為靈活的組合以實現(xiàn)新的應(yīng)用開發(fā)和部署,這其實就是敏捷開發(fā)追求的理想場景。
"Reinventing the wheel."不要重復(fù)造輪子,這一軟件工程的知名術(shù)語所追求的正是如此。所以當(dāng)?shù)痛a與對象建模相結(jié)合,形成組件封裝能力時,就會爆發(fā)出前所未有的價值,因為這將極大的降低開發(fā)的難度,形成普適性應(yīng)用組件。比如我們將“客戶”這一業(yè)務(wù)元素作為對象做好組件封裝,這個組件就可能會被訂單管理系統(tǒng)、業(yè)務(wù)管理系統(tǒng)、客戶關(guān)系管理系統(tǒng)、合同管理系統(tǒng)、服務(wù)管理系統(tǒng)和營銷報表系統(tǒng)等共同調(diào)用而無需每個系統(tǒng)做單獨開發(fā),這樣的效率,才是根本性的價值提升。
由此可見,低代碼發(fā)揮最大價值對應(yīng)的是模型驅(qū)動的系統(tǒng)建設(shè),而且這種復(fù)雜場景的管理系統(tǒng)才是發(fā)揮低代碼技術(shù)最適合的戰(zhàn)場。
今天,更多的業(yè)界同行將低代碼技術(shù)應(yīng)用在表單、流程、頁面等領(lǐng)域,在整體系統(tǒng)開發(fā)工作中以局部應(yīng)用的方式來提升簡單場景的開發(fā)效率,這是造成業(yè)界對低代碼認(rèn)知不足的主要原因。盡管這也是低代碼技術(shù)的方向之一,但不可否認(rèn)的是,這絕不是唯一的方向!
對于類似國外ERP、PLM等成熟套裝軟件系統(tǒng)而言,按照規(guī)范的瀑布式開發(fā)的思路已經(jīng)被證明很難達(dá)到其成熟度,其中嚴(yán)密的業(yè)務(wù)邏輯關(guān)系、數(shù)據(jù)架構(gòu)體系等都不是可以被簡單復(fù)制或超越的。在自主可控的大背景要求下按照傳統(tǒng)思路重構(gòu)核心系統(tǒng)挑戰(zhàn)非常大。
然而低代碼技術(shù)形成組件化封裝這個方向為我們帶來了希望,秉承農(nóng)村包圍城市的思想,從局部入手,逐步覆蓋核心應(yīng)用到全局應(yīng)用。組件化的另外一個價值就是試錯成本的降低,或者說如果我們某一個組件不成功其實并不會影響其他組件的運行,于是極低的試錯成本讓我們有勇氣挑戰(zhàn)更為復(fù)雜的核心應(yīng)用系統(tǒng)和管理系統(tǒng)。我們可以嘗試從每一個組件,每一個模塊入手,以科學(xué)方法論的思想構(gòu)建新一代業(yè)務(wù)模型和數(shù)據(jù)模型,以組件化的思想去完成業(yè)務(wù)邏輯,這使得重構(gòu)大型應(yīng)用系統(tǒng)成為可能。
所以,低代碼的價值絕不僅僅在于開發(fā)效率的提升,我們甚至可以將低代碼定義為新一代開發(fā)平臺的核心技術(shù)思想,是實現(xiàn)敏捷開發(fā)的前提和基礎(chǔ),也是未來建設(shè)組件庫和模型庫的必要支撐,這才是低代碼真正的核心價值!
今天的時代屬于云計算的時代,我們已經(jīng)走過了公有云,私有云和混合云,下一步必然是行業(yè)云。可能有讀者認(rèn)為行業(yè)云是提供行業(yè)屬性的解決方案的SaaS服務(wù),這其實并不準(zhǔn)確。行業(yè)云應(yīng)該是以PaaS行業(yè)組件形成沉淀的行業(yè)應(yīng)用屬性的平臺服務(wù),而這種行業(yè)組件必然是通過低代碼開發(fā)予以封裝完成的。
低代碼作為技術(shù),已經(jīng)粉墨登場,而作為一種開發(fā)思想,必然迎來屬于它的輝煌!