導 讀
物聯(lián)網時代,工具的選擇尤為重要。當大部分人還拿著大刀長矛以原始姿勢赤身肉搏時,率先發(fā)明火炮步槍,并掌握狙擊方法的人想輸都難。既然IoT低代碼編程工具已經出現(xiàn),我們有必要將它仔細審視一番,掂量一下是否趁手。
在各種IoT平臺你爭我奪的“大戰(zhàn)”中,平臺型企業(yè)或者初創(chuàng)物聯(lián)網公司紛紛都在打磨著自己的IoT編程工具,前沿的一些已經初具雛形,尤其值得關注:
本周,阿里云IoT更新了IoT Studio,這是一套針對物聯(lián)網應用的開發(fā)工具。IoT Studio可以提供可視化的應用開發(fā)和服務開發(fā)能力,幫助用戶改善在實際項目交付中,經常面臨的應用開發(fā)成本高、需求定制化程度高、投入產出比低等問題。
西門子收購的低代碼平臺Mendix在去年實現(xiàn)了150%的高增長。今年4月,西門子將Mendix與工業(yè)互聯(lián)網平臺MindSphere進行了集成,這意味著沒有很強IT編程經驗的OT工程師們,也可以利用Mendix快速構建物聯(lián)網服務。Mendix已經培育的60,000名開發(fā)者,也將為MindSphere快速構建應用程序。
這些舉措對于物聯(lián)網來說具有深遠影響,他們都指向同一個方向:改進編程工具、簡化編程環(huán)節(jié)、降低開發(fā)成本,是加速物聯(lián)網項目落地的一條捷徑。
由于在物聯(lián)網時代,工具的選擇尤為重要。當大部分人還拿著大刀長矛以原始姿勢赤身肉搏時,率先發(fā)明火炮步槍,并掌握狙擊方法的人想輸都難。
既然IoT低代碼編程工具已經出現(xiàn),我們有必要將它仔細審視一番,掂量一下是否趁手。
因此在本文中你將看到:
什么是IoT編程工具?
為什么需要低代碼?
IoT低代碼編程工具之間有什么差異?
1、什么是IoT編程工具?
在互聯(lián)網時代的IT軟件世界中,有4個最核心的成員:
操作系統(tǒng)、編程語言、編譯器和數據庫。
1970年,貝爾實驗室的肯·湯普遜和丹尼斯·利奇開發(fā)出了世界第一個通用型計算機操作系統(tǒng):Unix。
1985年,微軟推出了第一版Windows操作系統(tǒng)。
Linux是一類Unix計算機操作系統(tǒng)的統(tǒng)稱,公認在1991 年誕生。
目前在移動設備上廣泛使用的Android操作系統(tǒng),也是創(chuàng)建在Linux內核之上。
而編程語言的出現(xiàn),在操作系統(tǒng)之前。
1952年,匯編語言Flow-Matic出現(xiàn)。匯編語言本質上是使用助記符來代替機器語言01010101,但這種語言對計算機硬件依賴很大。不同的計算機,匯編語言不相通。
1957年,世界上第一個高級編程語言FORTRAN問世,它使計算機語言從原始的低級匯編語言走到人人易懂的境界。
從此,計算機不再是科學家的專利。可以說FORTRAN的誕生,孕育了軟件產業(yè)。此后,計算機高級編程語言進入蓬勃發(fā)展的時代。
由此,可以看出操作系統(tǒng)和編程語言的重要性不相伯仲。
到了物聯(lián)網時代,操作系統(tǒng)發(fā)生了變化。
互聯(lián)網時代,操作系統(tǒng)調度的是PC或者手機中的計算和存儲資源。
物聯(lián)網時代,操作系統(tǒng)進化為物聯(lián)網平臺,它對“物體”的調度過程,由調度“云、管、邊、端”不同層級中不同設備的計算資源而實現(xiàn)。
比如RT-thread、Mindsphere、WISE-PaaS…都是物聯(lián)網時代的操作系統(tǒng)。
下圖是在微軟眼中,物聯(lián)網時代操作系統(tǒng)應當具備的能力:
相比于PC操作系統(tǒng),物聯(lián)網操作系統(tǒng)或者平臺具有以下幾個明顯特性:
無縫更新:系統(tǒng)更新通過后臺完成,無需中斷
更加安全:具備防止惡意攻擊能力
長期連接:保持 5G、WiFi等連接能力,保證設備間能一直相互連接
可持續(xù)的性能
云端接入能力:支持設備與設備間進行無縫訪問數據
具備AI能力
支持各種交互:兼顧觸控、手寫、語音、鍵鼠等方式,以及能夠通過傳感器和姿勢感知
多樣產品形態(tài):支持云、邊、端的應用
最近一系列基于微內核的IoT OS推出,比如阿里AliOS Things、華為鴻蒙OS、GoogleFuchisa,進一步詮釋了物聯(lián)網操作系統(tǒng)的特征。
微內核并非新鮮事物,最早可以追溯到卡內基梅隆大學在1985年推出的微內核操作系統(tǒng) MACH。新一代的微內核IoT OS可以支持從小到大的各種智能設備,包括從煙感傳感器、到攝像頭、再到計算網關等;提供各種本地插件、輕量級GUI、以及豐富的鏈接協(xié)議,滿足碎片化的設備開發(fā)的需求;還有豐富的云端一體化的插件,包括連云套件、OTA、視頻語音連云套件,確保設備和云端的設備影子實時同步。
總而言之,基于微內核的物聯(lián)網操作系統(tǒng),有能力適配高度碎片化的硬件與芯片生態(tài),有豐富的本地組件來支持不同的設備,又能夠充分和云端的大數據計算能力形成協(xié)同,奠定了數字化物理世界的基礎。
在互聯(lián)網時代,操作系統(tǒng)幾乎只需要支持PC和手機就可以完成任務。但是到了物聯(lián)網時代,IoT操作系統(tǒng)或者IoT平臺的復雜性急劇上升,為了令其更加易用,編程語言也需隨之進化,IoT編程工具由此產生。
從操作系統(tǒng)到物聯(lián)網平臺,從編程語言到IoT編程工具,這是一個自然而然的推進過程。
可以預見,編譯器和數據庫在物聯(lián)網時代也將產生更新或者變異。比如華為在8月31日剛剛開源的方舟編譯器,以及濤思數據推出的時序數據庫,都更加適合物聯(lián)網時代的應用。
在物聯(lián)網時代,上述這些工具都會進化,有些可能會徹底變成新的物種。IoT平臺與PC操作系統(tǒng)有本質不同,IoT編程工具也與編程語言有著天壤之別。
因此,在物聯(lián)網時代我們需要一個更加立體、分層和全局的視角,來看待關鍵領域。不管是操作系統(tǒng),還是編程語言,都應建立一個全新的理解,從而發(fā)現(xiàn)新的機會,更好的利用工具,實現(xiàn)物聯(lián)網業(yè)務的拓展。
2、什么是低代碼?
既然與PC操作系統(tǒng)相比,IoT平臺的復雜性急劇上升,需要調度“云、管、邊、端”各方資源、兼顧傳感、姿勢、語音等各種交互方式,又要保持5G、WiFi、BLE等連接隨時在線…
那么,IoT編程工具的重要使命就是降低這種復雜度,讓開發(fā)者可以輕松上手。因此“低代碼”是大勢所趨。
簡單來說,“低代碼開發(fā)”被用來描述一種快速設計和開發(fā)的軟件系統(tǒng),無需編碼或通過少量代碼,就可以快速生成應用程序。它是研究機構Forrester Research在2014年最先使用的一個術語。
其實低代碼并不是最近才出現(xiàn)的新事物,它可以追溯到上個世紀90年代。
在1991年誕生的快速應用程序開發(fā)(Rapid Application Development,縮寫:RAD),目標是在60到90天的短時間內,建立符合用戶要求的業(yè)務軟件。RAD的出現(xiàn)掀起了一場編程方式的革命,它帶來了可視化編程,使得編程的門檻變低了。
根據Forrester的分析預測,低代碼平臺有可能使軟件開發(fā)速度比傳統(tǒng)方法快上10倍。到2022年,低代碼平臺市場將從現(xiàn)有的40億美元,增長到220億美元。
下面兩幅圖是使用低代碼編程工具之前和之后的對比:
之前
之后
如果將“低代碼開發(fā)”和汽車制造做類比,“低代碼”之于IoT開發(fā)者就像自動化生產線對于汽車行業(yè)的作用。
過去汽車的裝配需要手工完成,現(xiàn)在都是通過自動化生產線實現(xiàn)。雖然早期自動化進程中使用的生產線,對汽車復雜多變的配置無能為力,但它們確實加快了裝配和交付的進程。
作為對比,現(xiàn)在的編程工作大部分還處于手工作業(yè)階段,生產效率在很大程度上取決于編碼者個人的專業(yè)技術水準,“低代碼”盡量用少量的代碼開發(fā)出企業(yè)級的應用,最大限度的提高應用開發(fā)的效率。
眾所周知的低代碼實例是WordPress,它是一款開源CMS(Content Management System,內容管理系統(tǒng)),特性是易上手,開發(fā)速度尤其快,甚至無需代碼,直接安裝模板和插件就可以達到要求。
使用WordPress,中小型企業(yè)只需雇傭一名不懂編程的員工,便可以借助網上發(fā)布的各種主題和插件,在完全不需要編程代碼的情況下進行基本網站編輯。目前WordPress已經支持了世界上超過70%的網站。
至此,可以看到低代碼具有如下優(yōu)勢:
降低編程門檻,不需要大量的編程知識
大大加快應用程序的開發(fā)和部署時間
節(jié)省成本,節(jié)省項目規(guī)劃或員工培訓的時間
用戶可自定義模塊,應用程序可以靈活調整
開發(fā)者可以將精力更好的分配于核心任務
任何事物都有兩面,必須說明,低代碼也存在使用風險:
供應商被鎖定:目前低代碼編程工具并不通用,選擇其中一種便意味著鎖定了供應商。
維護成本較高:由于低代碼及其供應商存在較強的耦合性,也就意味著供應商擁有較強的議價能力。
存在監(jiān)管隱患:因為減少了代碼編寫的工作量,開發(fā)者很難知道API調用的背后隱藏著什么秘密。
功能可能有限:任何低代碼的供應商都不可能預測到所有的應用細節(jié),如果開發(fā)者希望更加靈活地適應企業(yè)的需求,就需要使用自己編寫的代碼來滿足。
應用千篇一律:低代碼編程項目可能最終看起來彼此都非常相似,因為開發(fā)者使用的是相同的模塊。
任何技術都有利弊,越容易被創(chuàng)建,往往也意味著,越容易被復制。
而我們需要做的,就是權衡利弊,想好自己是否要用這個工具。
3、IoT低代碼編程工具之間有什么差異?
總體而言,有兩類公司在提供IoT低代碼編程工具,分別是物聯(lián)網平臺型企業(yè)和應用服務初創(chuàng)型公司。
除了文初提到的阿里和微軟,AWS、Google、Salesforce等巨頭都有提供IoT低代碼編程工具。
典型的低代碼平臺初創(chuàng)公司,除了被西門子收購的Mendix,比較知名的還有OutSystems、ServiceNow、Kony等。
市場研究機構Gartner和Forrester分別繪制了低代碼平臺的格局版圖。
這兩類公司由于各自目標不同,所提供的IoT低代碼編程工具其側重點也有所區(qū)別。
物聯(lián)網平臺型企業(yè):這類企業(yè)的目標是降低物聯(lián)網平臺的應用門檻,匯聚開發(fā)者生態(tài),因此往往提供的是端到端的IoT低代碼編程工具或者開發(fā)環(huán)境。
以阿里云最近更新的IoT Studio為例,它是一套專為物聯(lián)網應用所設計的集成開發(fā)環(huán)境IDE,功能包括:
設備數據無縫集成:設備相關的屬性、服務、事件等數據均可從阿里云物聯(lián)網平臺設備接入和管理模塊中直接獲取,大大降低物聯(lián)網開發(fā)工作量。
面向各個行業(yè)提供場景化模板:開發(fā)者可以直接利用現(xiàn)有的(包含設備,應用和服務的)解決方案模版來開發(fā)自己的業(yè)務,將原有需要幾周的開發(fā)過程縮短到幾天。
可視化應用開發(fā):用戶通過簡單的可視化拖拽的方式,即可將各種組件、圖表與設備相關的數據源進行關聯(lián),幾乎無需任何編程經驗,整個過程就像使用PPT一樣簡單。
提供服務開發(fā)的功能:用戶可以很方便的實現(xiàn)設備之間的聯(lián)動、設備與服務之間的數據流轉。IoT Studio打通了阿里云API市場,用戶還可利用各種人工智能及數據分析的API。
應用服務初創(chuàng)型公司:這類企業(yè)將低代碼平臺本身作為核心產品,探索與之相應的新型行業(yè)模式,因此他們的編程工具一般并非針對物聯(lián)網應用所創(chuàng)建,或者并不具備對于物聯(lián)網異構設備的支持能力。
以被西門子并購的Mendix為例,它本身是一個加速企業(yè)敏捷開發(fā)流程的PaaS平臺,并自稱是全球唯一一個真正的云原生低代碼平臺。
它由3個無縫集成的產品組成:Sprintr,AppFactory和Mendix Platform-as-a-Service,分別實現(xiàn)的功能如下:
Sprintr:采用輕量級的社交方法進行企業(yè)項目協(xié)作。通過在整個企業(yè)中提供協(xié)作平臺,Sprintr打破了不同部門和專業(yè)之間的隔閡,所有員工都是同一個私有社交網絡的一部分。
AppFactory:讓用戶能夠使用高級可視化的模型開發(fā)應用程序。這可以實現(xiàn)業(yè)務和IT之間的協(xié)作,還可縮短反饋周期。AppFactory又由3個元素組成:
-Mendix Business Modeler:使用可視化模型設計和開發(fā)應用程序的建模環(huán)境。
-Mendix Team Server:基于云的模型存儲庫,用于團隊成員協(xié)作并進行版本控制。
-Mendix AppStore:應用市場,用于共享和下載業(yè)務模板、主題和技術組件。
MendixPlatform-as-a-Service:用戶只需單擊一下,即可從Mendix Business Modeler中將應用程序模型上傳到Mendix PaaS,從而輕松部署應用程序。
被西門子收購之后,Mendix在最新的19版中增加了對于物聯(lián)網設備的支持,并升級了AI引擎,提供對于物聯(lián)網數據的分析服務。
----寫在最后----
借助IoT低代碼編程工具,讓企業(yè)有機會嘗試用更少的資源更快更好的實現(xiàn)應用。如果將其承載在工業(yè)大腦或者智慧城市的管理平臺之上,勢必將會激發(fā)各類應用開發(fā)者的創(chuàng)意和想法,讓各類應用快速集成落地。
對于開發(fā)者數量有限的傳統(tǒng)行業(yè),IoT低代碼編程工具還有可能加速IT和OT的融合。
當然,各種IoT低代碼編程工具是否被宣傳得恰如其分,是否在實踐中方便使用,還需要經過驗證。
衷心感謝阿里云首席智聯(lián)網科學家丁險峰在成文過程中對我的大力支持。
最后,歡迎在本文下方的留言區(qū)分享你對“IoT低代碼編程工具”的觀察、實踐或者任何想法,點贊數最多的3位朋友,都將收到由我誠摯送上的簽名版《智聯(lián)網?新思維》。
本文小結:
1.在物聯(lián)網時代我們需要一個更加立體、分層和全局的視角,來看待關鍵領域。不管是操作系統(tǒng),還是編程語言,都應建立一個全新的理解,從而發(fā)現(xiàn)新的機會,更好的利用工具,實現(xiàn)物聯(lián)網業(yè)務的拓展。
2.與PC操作系統(tǒng)相比,IoT平臺的復雜性急劇上升,IoT編程工具的重要使命就是降低這種復雜度,讓開發(fā)者可以輕松上手,因此“低代碼”是大勢所趨。
3.現(xiàn)階段有兩類公司在提供IoT低代碼編程工具,分別是物聯(lián)網平臺型企業(yè)和應用服務初創(chuàng)型公司。
評論
查看更多