無碼編程:無代碼軟件開發(fā)大行其道
譯文圖1. Webflow用于構(gòu)建網(wǎng)站的無代碼平臺
【51CTO.com快譯】代碼是大多數(shù)軟件程序和應(yīng)用程序的骨干。每行代碼充當(dāng)一條指令:采用一種逐步性的邏輯機制,以便計算機、服務(wù)器和其他機器執(zhí)行操作。想創(chuàng)建那些指令,就要知道如何編寫代碼,這項寶貴的技能有時很吃香。
但如果你無需編寫一行代碼就能構(gòu)建軟件會怎樣?這就是無代碼開發(fā)背后的想法,這種軟件開發(fā)方法一直受到追捧。借助無代碼平臺,無需編寫任何底層代碼即可開發(fā)軟件。
圖2. Webflow
構(gòu)建網(wǎng)站的無代碼平臺Webflow的聯(lián)合創(chuàng)始人兼首席執(zhí)行官Vlad Magdalin說:“無代碼讓不懂編寫代碼的人可以像軟件工程師那樣開發(fā)同樣的應(yīng)用程序。無需代碼就能實現(xiàn)過去用代碼實現(xiàn)的功能。”
也可以將無代碼開發(fā)視為一種可視化編程。用戶通過拖放式用戶界面處理代碼元素,而不是借助基于文本的開發(fā)環(huán)境。麻省理工學(xué)院媒體實驗室的Scratch編程語言就是一種頗受歡迎的技術(shù),該語言使用圖形化編程塊教孩子和成人如何編程。
Visual Dev School的聯(lián)合創(chuàng)始人Lacey Kesler說:“它更像是使用擁有邏輯的構(gòu)建模塊。這種方法使人們無需學(xué)習(xí)如何編寫代碼即可為互聯(lián)網(wǎng)構(gòu)建軟件。”
無代碼編程是軟件開發(fā)領(lǐng)域自然發(fā)展的產(chǎn)物。起初是使用匯編語言的低級編程(程序員能使用的最接近機器代碼指令的語言),如今已演變成Java、Python、C、JavaScript及其他編程語言。這種演變需要添加抽象層,隱藏機器碼背后的復(fù)雜性,從而使軟件開發(fā)人員更容易編程。
盡管是技術(shù)進步的產(chǎn)物,但無代碼開發(fā)不是新概念。90年代的計算機輔助軟件工程(CASE)工具其歷史比如今的無代碼平臺還早。但顧名思義,CASE工具只是旨在幫助軟件開發(fā)生命周期中的某些活動,而不是幫助實際的編程本身。仍然需要代碼知識的微軟Visual Basic和Adobe Dreamweaver被認為是無代碼工具的早期版本。
圖3. 微軟的Visual Basic無代碼工具此處用來編寫虛擬代理
如今有實現(xiàn)無代碼開發(fā)的各種平臺。這包括微軟的Power Apps和Oracle的Visual Builder(用于創(chuàng)建移動和Web應(yīng)用程序)、Oracle的Application Express(用于開發(fā)業(yè)務(wù)應(yīng)用程序)以及Salesforce的Lightning Platform(用于客戶關(guān)系管理應(yīng)用程序)。連谷歌也加入其中,最近收購了AppSheet,這是用于構(gòu)建移動應(yīng)用程序的無代碼平臺。
這些工具以及用它們構(gòu)建的應(yīng)用程序在技術(shù)界越來越受歡迎。據(jù)Gartner的研究顯示,到2024年,低代碼應(yīng)用程序開發(fā)(也包括無代碼)將占應(yīng)用程序開發(fā)活動的65%以上,四分之三的大企業(yè)至少使用四種低代碼開發(fā)工具。
那么,什么因素在促使無代碼編程迅猛發(fā)展?
Betty Blocks營銷副總裁Victor Kuppers說,“由于功能更強大的計算機、更易訪問的云計算服務(wù)和更好的編程語言,你可以開始構(gòu)建讓你可以構(gòu)建軟件的軟件。”Betty Blocks的產(chǎn)品讓用戶可以借助名為“塊”(block)的組件對應(yīng)用程序進行無代碼匯編。
無代碼開發(fā)也是解決供需問題的方法:開發(fā)更多軟件的需求越來越高,但能構(gòu)建這種軟件的開發(fā)人員數(shù)量有限。Magdalin說:“市場顯然需要更多的人來構(gòu)建軟件,你用代碼構(gòu)建的東西又很寶貴。不過,編程是一項很難學(xué)的技能。無代碼工具大行其道,因為與獲得計算機學(xué)位或接受編程強化培訓(xùn)相比,它們學(xué)起來要容易得多。”
除了易于上手的這個優(yōu)點后,無代碼平臺還可以加快應(yīng)用程序開發(fā),因而為公司降低成本。它還杜絕了人們對產(chǎn)品的愿景與軟件工程師如何通過代碼將該愿景變?yōu)楝F(xiàn)實之間的任何問題。Kesler說:“軟件旨在滿足某個目的,解決某個問題。借助可視化開發(fā)工具,我們就能做到這一點,無需將項目交給開發(fā)人員或自己學(xué)習(xí)如何編寫代碼。它使我們能夠解決自己的問題。”
但是無代碼相比代碼的最重要優(yōu)勢也許是讓軟件開發(fā)更容易。無代碼平臺Bubble的聯(lián)合創(chuàng)始人Emmanuel Straschnov說:“我們正進入最了解業(yè)務(wù)情況的人或與客戶互動最多的人將自行構(gòu)建產(chǎn)品這個時代。鑒于技術(shù)是我們生活的核心部分,更多的人應(yīng)該能夠構(gòu)建技術(shù)。無代碼開發(fā)讓每個人都能夠構(gòu)建軟件。”
不過,無代碼編程仍然不是一應(yīng)俱全的解決方案。它不會有一樣的精度,也不會有與代碼編程一樣廣泛的應(yīng)用前景。Straschnov說:“由于它的抽象水平更高,因此在某些方面會受到限制。你不會擁有與代碼編程一樣的靈活性。”
此外,無代碼平臺并非旨在取代軟件開發(fā)人員。Magdalin說:“我之前是名軟件工程師,所以過去也同樣擔(dān)心。就因為編程是自動化的,并不意味著全部技能消失了。實際上,現(xiàn)在編程技能可能更寶貴。每家公司都會有獨特的東西,無代碼解決方案解決不了。對于這種可視化工具不支持的例外情況,你仍需要開發(fā)人員。”
說到無代碼開發(fā)的未來,Straschnov認為它已成了軟件生態(tài)系統(tǒng)的一個自然部分,更多的公司轉(zhuǎn)向無代碼平臺,軟件工程師擴展這些平臺以增強其功能。
Kesler說:“我希望無代碼的未來很美好,因為它使軟件開發(fā)大眾化。我知道如何編程,我過去專門使用Ruby on Rails,但認識到這不是我樂于構(gòu)建的方式。一旦發(fā)現(xiàn)了可視化開發(fā),它便改變了我的一切。無代碼開發(fā)讓別人以他們覺得自然的方式構(gòu)建軟件。”
原文標(biāo)題:Programming Without Code: The Rise of No-Code Software Development,作者:Rina Diane Caballar
【51CTO譯稿,合作站點轉(zhuǎn)載請注明原文譯者和出處為51CTO.com】