微軟在3月2日召開(kāi)的“Ignite 2021”大會(huì)上宣布,開(kāi)源低代碼語(yǔ)言Power Fx。這是一種基于Microsoft Excel的通用、強(qiáng)類型、聲明性和函數(shù)式編程語(yǔ)言,同時(shí)支持文字表述。
簡(jiǎn)單來(lái)說(shuō),只要你會(huì)使用Excel公式,那么就會(huì)使用該編程語(yǔ)言。微軟此舉動(dòng)標(biāo)志著,一個(gè)全民開(kāi)發(fā)人人都是程序員的時(shí)代已來(lái)臨,同時(shí)對(duì)RPA、智能自動(dòng)化、BPM等行業(yè)產(chǎn)生積極的推動(dòng)作用。
微軟的Power Apps便是基于Power Fx開(kāi)發(fā)而成,未來(lái)將在更多的產(chǎn)品中使用該語(yǔ)言。目前可以在Github上下載該開(kāi)源項(xiàng)目。地址:https://github.com/microsoft/Power-Fx
微軟開(kāi)源Power Fx,開(kāi)啟人人都是程序員時(shí)代
隨著全球數(shù)字化經(jīng)濟(jì)呈指數(shù)級(jí)增長(zhǎng),組織中開(kāi)發(fā)人員的項(xiàng)目交付速率越來(lái)越跟不上時(shí)代的步伐,往往當(dāng)項(xiàng)目完成時(shí)已錯(cuò)過(guò)最佳時(shí)機(jī),因此,低代碼開(kāi)發(fā)應(yīng)運(yùn)而生。據(jù)Forrester分析師預(yù)計(jì),2021年,75%的企業(yè)軟件將由低代碼技術(shù)構(gòu)建而成。
簡(jiǎn)單來(lái)說(shuō),低代碼開(kāi)發(fā)就是讓一線業(yè)務(wù)人員也具備程序員的水準(zhǔn),迅速開(kāi)發(fā)出自己想要的任何程序,來(lái)提升業(yè)務(wù)的敏捷性、效率性從而創(chuàng)造更高的業(yè)務(wù)價(jià)值。
微軟發(fā)現(xiàn),市面上提供低代碼產(chǎn)品的廠商很多,但提供開(kāi)源低代碼編程語(yǔ)言的卻很少,這對(duì)于推廣低代碼開(kāi)發(fā)和業(yè)務(wù)人員學(xué)習(xí)造成了很大障礙。所以,微軟以Excel為基石同時(shí)吸取了Miranda、Mathematica和Pascal等優(yōu)秀編程語(yǔ)言的靈感,開(kāi)發(fā)了Power Fx并將其開(kāi)源。
Power Fx誕生于2015年,由Vijay Mital、Robin Abraham、Shon Katzenberger等多位科學(xué)家,經(jīng)過(guò)7年的開(kāi)發(fā)時(shí)間和多個(gè)項(xiàng)目淬煉而成。微軟選擇Excel為Power Fx的基石,是因?yàn)槿蛎刻煊袛?shù)以億計(jì)的人在使用Excel并且能熟練掌握表達(dá)公式,這對(duì)于一線業(yè)務(wù)人員來(lái)說(shuō)無(wú)需進(jìn)行額外的專業(yè)編程培訓(xùn)就能快速掌握Power Fx,迅速創(chuàng)建出自己想要的任何程序來(lái)滿足業(yè)務(wù)需求。此外,越來(lái)越高的專業(yè)開(kāi)發(fā)人員成本,成為企業(yè)沉重的運(yùn)營(yíng)負(fù)擔(dān)。
所以,微軟希望通過(guò)開(kāi)源Power Fx復(fù)制C#、.NET、C++取得的輝煌成就,開(kāi)啟一個(gè)全民開(kāi)發(fā)人人都是程序員的新時(shí)代。
Power Fx專為低代碼而生(簡(jiǎn)單技術(shù)介紹)
Power Fx以使用簡(jiǎn)潔功能強(qiáng)大著稱,特別突出了“簡(jiǎn)”字。大多數(shù)繁瑣、復(fù)雜的邏輯表達(dá)式已簡(jiǎn)化成一個(gè)表達(dá)式,同時(shí)還能滿足復(fù)雜的功能需求。例如,想查找員工的名字。
如果使用傳統(tǒng)的編程語(yǔ)言JavaScript來(lái)寫,則需要輸入一大段公式和函數(shù);而使用Power Fx,只需要一個(gè)表達(dá)式就能完成查找。下面是兩者的執(zhí)行代碼對(duì)比:
上面為Power FX,下面為JavaScript
對(duì)于專業(yè)的程序員來(lái)說(shuō),Power Fx同樣是開(kāi)發(fā)利器。Power Fx的公式可以存儲(chǔ)在易于使用的Visual Studio Code,Visual Studio或任何其他文本編輯器的YAML源文件中,同時(shí)可以通過(guò)GitHub,Azure DevOps或任何其他源代碼開(kāi)發(fā)程序使用Power Fx。
Power Fx支持基于公式的組件進(jìn)行共享和重用。前不久,微軟宣布了對(duì)組件屬性參數(shù)的支持,從而可以創(chuàng)建具有更多增強(qiáng)功能的定義函數(shù)。此外,Power Fx將專業(yè)人士構(gòu)建的組件和服務(wù)結(jié)合在一起。
提供開(kāi)箱即用的連接器和對(duì)數(shù)百個(gè)數(shù)據(jù)源和Web服務(wù)的訪問(wèn),自定義連接器使Power Fx可以與任何REST Web服務(wù)進(jìn)行通信,而代碼組件使Power Fx可以與屏幕和頁(yè)面上的自定義Java Script進(jìn)行交互。
下面將詳細(xì)介紹Power Fx所做的諸多編程優(yōu)化(部分):
異步:Power Fx中的所有數(shù)據(jù)操作都是異步的。用戶不需要指定名稱,也不需要在通話結(jié)束后進(jìn)行數(shù)據(jù)同步,更不需要知道什么是promise或lambda函數(shù)。
本地和遠(yuǎn)程:Power Fx對(duì)本地內(nèi)存中的數(shù)據(jù)、數(shù)據(jù)庫(kù)或服務(wù)中的遠(yuǎn)程數(shù)據(jù)使用相同的語(yǔ)法和功能。用戶不必考慮這種區(qū)別,Power Fx自動(dòng)將其委托給服務(wù)器進(jìn)行過(guò)濾并進(jìn)行更有效地更改。
本地化和兼容:在Power Fx中使用“first name” ,而在Java Script中則需要使用nwind_firstname 。如果組織中有使用多種語(yǔ)言的團(tuán)隊(duì),則每個(gè)團(tuán)隊(duì)成員都可以使用自己的語(yǔ)言查看表和字段名稱。在這種情況下,Power Fx會(huì)確保將正確的邏輯名自動(dòng)發(fā)送到數(shù)據(jù)庫(kù)中。
以下是Power Fx的設(shè)計(jì)原則介紹(部分):
簡(jiǎn)單:Power Fx主要面向沒(méi)有任何編程經(jīng)驗(yàn),或者只需要簡(jiǎn)單的概念和函數(shù)培訓(xùn)的業(yè)務(wù)人員。以最簡(jiǎn)單、快捷的開(kāi)發(fā)方法構(gòu)建出最完善的應(yīng)用程序。
強(qiáng)類型:所有值的類型在編譯時(shí)都是已知的。這樣在開(kāi)發(fā)時(shí)可以及早發(fā)現(xiàn)錯(cuò)誤和獲取到更好的建議。支持多態(tài)類型,但是在使用多態(tài)類型之前,必須將其類型轉(zhuǎn)化為靜態(tài)類型,并且在編譯時(shí)需要知道該類型。
和Excel一致:Power Apps大量借鑒了Excel公式中的語(yǔ)言,所以,類型、運(yùn)算符和函數(shù)語(yǔ)義基本和Excel保持一致。
未來(lái),微軟將把Power Fx作為重要的開(kāi)發(fā)語(yǔ)言,擴(kuò)展至Power Platform低代碼平臺(tái)的其他產(chǎn)品,以幫助更多的業(yè)務(wù)人員參與到應(yīng)用程序開(kāi)發(fā)中。
繼續(xù)閱讀:
未經(jīng)允許不得轉(zhuǎn)載:RPA中國(guó) | RPA全球生態(tài) | 數(shù)字化勞動(dòng)力 | RPA新聞 | 推動(dòng)中國(guó)RPA生態(tài)發(fā)展 | 流 > 人人都是程序員!微軟開(kāi)源低代碼語(yǔ)言Power Fx
熱門信息
閱讀 (14728)
1 2023第三屆中國(guó)RPA+AI開(kāi)發(fā)者大賽圓滿收官&獲獎(jiǎng)名單公示閱讀 (13753)
2 《Market Insight:中國(guó)RPA市場(chǎng)發(fā)展洞察(2022)》報(bào)告正式發(fā)布 | RPA中國(guó)閱讀 (13055)
3 「RPA中國(guó)杯 · 第五屆RPA極客挑戰(zhàn)賽」成功舉辦及獲獎(jiǎng)名單公示閱讀 (12964)
4 與科技共贏,與產(chǎn)業(yè)共進(jìn),第四屆ISIG中國(guó)產(chǎn)業(yè)智能大會(huì)成功召開(kāi)閱讀 (11567)
5 《2022年中國(guó)流程挖掘行業(yè)研究報(bào)告》正式發(fā)布 | RPA中國(guó)