應用場景不同,是無代碼和低代碼的最大區別

隨着媒體對低代碼、無代碼等先進技術的持續關注,我們發現大多數人都聽說過低代碼開發和無代碼開發這兩個概念,但是對兩者之間的區別其實並不清楚。事實上,低代碼開發和無代碼開發之間存在着很多非常顯著的差異,如果你正在考慮放棄傳統的應用程序開發方式,或者只是想嘗試一下全新的可視化應用程序開發方式,那麼你需要了解這兩個技術能給你帶來什麼好處。

 

這篇文章,將會對低代碼開發與無代碼開發技術進行深度解析,看看它們區別在哪裏,探討如何使用它們爲企業信息化服務。

從編程發展史說起

編程是編定程序的中文簡稱,指設計具備邏輯流動作用的一種“可控體系”。最早的編程可以溯源至1804年,歷史遠早於電子計算機。19世紀早期的法國里昂是世界聞名的絲織之都。里昂的絲織工人們使用的工具卻是質量低劣、效率低下的老式手工提花機。這種機器需要有人站在上面,費力地一根一根地將絲線提起、放下,才能織出精細複雜的絲綢,就好像演員在操縱牽線木偶。這種繁瑣的勞動隨着1804年雅卡爾提花機的發明發生了改變。雅卡爾提花機利用預先打孔的卡片來控制織物的編織式樣,速度比老式手工提花機快了25倍。


 image.png

(雅卡爾提花機復原圖,圖片來自網絡)

 

從這種藉助穿孔卡片進行編程的提花織機問世至今,編程語言已經走過了200多年的歷史。隨着計算機技術的發展,1950年代 開始,爲電子計算機設計的編程語言層出不窮。到現在爲止,已經出現了250多種編程語言。每一年,都有新的語言流行,舊的語言被淘汰,這意味着使用編程語言的開發人員必須習慣的一件事就是“改變”。

 

image.png

(1980年代,葡萄城使用BASIC語言開發的財務程序界面)

 

回顧200年的發展歷程,我們認爲編程界最大的改變,就是集成開發環境(IDE)的出現。IDE爲專業開發人員和平民開發者(沒有受過專業編程訓練的技術人員和業務人員)提供了一套用來簡化編碼工作的軟件開發工具。IDE的起源可以追溯到1982年,當時詹姆斯·馬丁寫了一本書,叫《沒有程序員的應用程序開發》。馬丁在這本書中提到,有了IDE的幫助,創建應用程序所需要的開發人員可以減少,在某些情況,甚至可能根本不需要開發人員。

 

image.png

(使用Visual Studio IDE開發應用程序的界面)

 

時間快進到2019年,編程界的形勢又發生了變化。我們現在已經到達了一個這樣的臨界點:由於太多的代碼已經被編寫出來,使得我們已經不再需要從零開始編寫每一個應用程序了。事實上,當你使用一個可視化設計器能夠生成覆蓋大多數應用程序所需90%代碼的低代碼開發平臺時,這個開發平臺就能夠完成大部分繁重的編碼工作。而這,就是低代碼開發平臺帶給編程界的最大“改變”。

什麼是低代碼開發,如何使用它?

首先,你可以通過閱讀老牌開發工具廠商葡萄城的技術博客《低代碼開發平臺是什麼?》(在百度搜索文章標題即可查看)來深入瞭解低代碼開發到底是什麼意思。簡而言之,“低代碼開發”就是開發人員可以通過編寫少量代碼甚至無需代碼就可以快速生成應用程序的一種方法。我們有時把“低代碼”作爲名詞用,這時候我們把它看作一個像Python語言和C#語言一樣的一種“東西”。我們有時也把“低代碼”作爲動詞用,這時候它表達的是它字面上代表的一種應用程序開發方式,因爲用這種方式開發應用程序時,你需要手寫的代碼比通常的開發方式要少很多,在部分場景下甚至可以完全不寫代碼。

 

image.png

(低代碼開發包含可視化設計和編碼擴展能力)

 

使用低代碼開發平臺類似於使用IDE,因爲它包含了一套可以供開發人員直接使用的功能,和一套供開發人員使用的工具。然而,它實際上能提供的遠遠超過一個傳統的IDE。簡單來說,低代碼開發就是將已有代碼的可視化模塊拖放到工作流中以創建應用程序的過程。由於它可以完全取代傳統的手工編碼應用程序的開發方法,技術嫺熟的開發人員可以更智能、更高效地工作,而不會被重複的編碼束縛住。相反,他們可以將精力集中於創建應用程序的10%部分(90%功能可以通過可視化方式創建),並使其具有與衆不同的功能。

 

image.png

(使用活字格低代碼開發平臺的可視化設計器構建數據看板)

 

與“低代碼”開發相對的另一種方式是編寫數萬行復雜的代碼和語句,然後對其進行調試。而使用“低代碼”開發並且使用可視化地方式來構建應用程序,你可以將開發速度提高數倍,並且最大化技術嫺熟的開發人員的價值。專注於冷鏈物流行業信息化系統的北京馭夢科技有限公司正在使用活字格低代碼開發平臺,馭夢的總經理高守成在接受採訪時表示,使用活字格這種低代碼開發模式,可以將物流管理系統的交付週期縮短到1/5,即便將低代碼開發平臺的採購費用計算在內,開發總成本也降低了70%。這就是爲什麼Forrester預計到2022年,低代碼市場的支出仍將達到210億美元開發費用的一個重要原因。

低代碼開發的好處

拋開吸引眼球的數據,讓我們先從更高層次瞭解一下低代碼開發的好處,然後再研究一下“無代碼”開發能帶給我們什麼。低代碼開發的好處主要有以下四點:

 

l  速度:使用低代碼開發,你可以同時爲多個平臺(桌面電腦、Android、iOS、釘釘或微信)構建應用程序,並且在幾天甚至在幾小時以內就可以向項目相關人員提交可以運行的示例。

l  更多的資源:如果你在一個大型項目上工作,使用低代碼開發,你就不必再等待陷於另一個冗長項目的具有專業技能開發人員,即便沒有接受專業編程訓練的技術人員也能參與到開發過程,這意味着項目可以更高效、以更低廉的成本完成。

l  低風險/高投資回報率:使用低代碼開發,意味着強大的安全流程,數據集成和跨平臺支持已經內置,並且可以輕鬆定製,這通常意味着更低的風險,並且可以將更多的時間集中在業務邏輯的實現上。

l  快速部署:項目上線總是會讓人神經緊張。而使用低代碼開發,部署前的影響評估可以確保你的應用程序按預期工作。如果有任何異常發生,只需要一次單擊,你就可以回滾你所做的所有改變。

爲什麼還需要無代碼開發?

低代碼看上去很完美,但爲什麼還需要無代碼?回答這個問題前,我們先回顧一下什麼是無代碼開發。

 

人們很容易將低代碼開發和無代碼開發混淆起來,因爲他們聽起來就很像。 “無代碼”開發平臺是爲那些“不知道也不需要知道任何實際的編程語言”、使用應用程序的業務人員而構建的。無代碼平臺供應商認爲,使用者構建應用程序需要的所有內容都已經內置到平臺中。無代碼平臺類似於現在流行的問卷服務,或者H5宣傳頁面設計平臺。這些平臺有預先構建的頁面,可以讓你在幾分鐘內啓動你的調查問卷或你的H5頁面。

 

image.png

(使用問卷網,無需編碼生成調查問卷)

 

聽起來不錯吧?如果你的應用沒有任何獨特的、很難定製的功能,並且不需要解決系統集成等挑戰的話,無代碼平臺當然是個好選擇。然而,大多數無代碼平臺最初設計用於解決單個業務問題,如審批流程管理。從業務增長的角度來看,這是天然的侷限。爲了吸引更多企業用戶的目光,許多無代碼平臺供應商已經開始了將自己的平臺歸類於低代碼平臺,並進行了廣泛的宣傳。

 

然而,不少行業分析師卻有不同的看法,他們開始將一些無代碼平臺供應商從相關報告中移出(如Forrester Research公司發佈的報告《2019 Q1 Forrester Wave™:面向應用程序開發和交付專業 人員的低代碼開發平臺》),同時將它們轉移到那些只適用有限用例的平臺報告中。

無代碼的侷限性

如果將我們的討論嚴格限定在應用程序開發層面的話,某些類型的用戶以及他們需要開發的內容可能會促使他們傾向於使用低代碼平臺而不是無代碼平臺。

 

無代碼只適合業務用戶。他們很少需要專業培訓。你可以把它視爲一大優勢,但是由於這種類型用戶的技能有限,加上無代碼平臺本身也有功能侷限。大多數專業的開發人員甚至以IT人員爲代表的平民開發者,都會發現無代碼平臺無法提供他們需要的開發能力,並且工具本身也限制了他們的開發能力。

 

低代碼平臺旨在同時服務平民開發者和專業開發人員。對於有一定IT相關知識的平民開發者來說,在經驗豐富的IT人員或專業開發人員的指導下,創建經過深思熟慮的與實際需求相符的應用程序,擴展了技術團隊的業務能力。對於專業的開發人員來說,通過可視化的操作搭建應用程序,可以更加有效地提高開發效率。同時低代碼平臺也允許他們根據需要手工編碼來應對更復雜的系統需求,這意味着在提高技術團隊的業務價值的同時,降低了開發工作的積壓量。

 

image.png

(在outsystems低代碼開發平臺中使用JavaScript手工編碼)

 

而無代碼平臺的吸引力在於,組織中幾乎任何具有一點技術背景的人都可以快速創建業務應用程序。這可能是一個巨大的優勢。但它同時也帶來了諸多問題。

 

首先,無代碼應用程序開發不需要任何編碼的想法並不是很現實。因爲這些平臺是爲業務人員設計的,IT技術部門還是不得不在“最後一公里”處介入,以完成與現有系統的集成。如果你們的IT技術部門根本不參與應用程序開發時會出現什麼狀況?這將會產生可怕的結果:那就是你們的應用程序開發很可能根本沒有適當的監督或經過充分的論證,無法和現有信息化系統實現集成。可以預見,各種各樣的安全問題、合法性問題、系統集成問題都會出現,最後會產生一個個設計不當的應用程序。最好的情形是這些應用程序浪費了很多不必要的資源,而最壞的情形則是,用戶會對這些“數據孤島”般奇怪的應用程序望而卻步。

 

image.png

(將使用活字格低代碼開發的應用嵌入用友U8+中)


低代碼開發就一定比無代碼開發好嗎?

不完全是。低代碼平臺和無代碼平臺都是基於同樣的“敏捷性”這一思想而構建的。雖然粗略地看上去(或者在無代碼供應商的網站上看),它們很相似。但實際上它們適用於不同的場景。低代碼開發平臺適合開發複雜的應用程序,這些應用程序通常爲你們的核心業務服務,運行那些重要的和關鍵性的業務流程。它還可以用來構建獨立的移動和Web應用程序,這些應用程序可能需要也可能不需要複雜的集成。事實上,它可以用來開發任何應用程序。

 

image.png

(ERP+APS+MES,生產製造業企業的核心業務服務)

 

相反,無代碼平臺的侷限性意味着它們只能用於企業後勤等非核心、標準化業務系統模塊的開發。

話雖如此,在現代企業中,兩種平臺都有應用空間,或者至少兩者能結合在一起。對於那些DevOps(另一種用於在開發中創造更大的靈活性的方法)的擁護者來說,低代碼平臺和無代碼平臺的組合可以提供完美的應用程序開發環境。

應用程序開發的未來

在一切都必須快速發展的世界中,低代碼平臺和無代碼平臺都可以爲使用者提供競爭優勢。但是,除非你只是開發最簡單的應用程序,並且對定製的要求很低,否則低代碼平臺總是更好的選擇。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章