低程式碼是程式設計發展的大勢所趨?

林間秋雨發表於2020-08-03

低程式碼是快速開發工具/技術的一種,屬於程式設計工具/技術領域,主要應用於開發企業軟體系統。藉助低程式碼,使用者無需編碼即可完成企業系統的常見功能;少量編碼擴充套件更多功能。相比於傳統的軟體開發工具和技術,低程式碼的技術門檻更低,開發效率更高;相比於其他快速開發工具,低程式碼的擴充套件性更好,可以勝任企業核心業務系統的開發需求。

程式設計技術的發展方向

程式設計技術的發展方向可以概括為“更通用”、“更低門檻”和“更高效率”。200年來,程式設計技術就是沿著這三個方向,和計算機技術一起發展壯大。這兩個世紀發生的事情,對於所有有志於從事資訊化行業的人來說至關重要,我想有必要做一個簡短的回顧。

          發展方向一:通用化的計算機

          程式設計的應用場景從最早的紡織業,擴充套件到數學,直到今天的包羅永珍。

  • 雅卡爾提花機:1804年,法國人雅卡爾(Jacquard)發明的新式提花機,預先根據需要編制的圖案在紙帶上打孔,根據孔的有無來控制經線與緯線的上下關係,最終完成提花。

  • 木齒鐵輪分析機:受到雅卡爾提花機的啟發,英國的巴比奇(Babbage)在1836年發明了蒸汽驅動分析機。其助手愛達(Ada)為這款分析機設計了求解伯努利方程(p+ 1/2ρv2 + ρgh =C)的程式,幫助設計師改善蒸汽機和傳動裝置的設計。值得一提的是,在很多計算機專業的教科書上,Ada都被稱作世界上第一名程式設計師。

  • ENIAC 通用計算機:隨著電子管技術的進步,美國人發明了ENIAC計算機。這是一臺通用型計算機,應用場景變得更加廣泛。它確定了一些現代計算機設計思想,如採用二進位制、可重用的儲存器等,能夠重新程式設計,解決各種計算問題。

    發展方向二:低門檻的程式語言

    程式設計在各行各業展現出的巨大的價值,激發了更多對計算機系統的需求。為了擴大系統開發人員的總體規模,程式設計使用的語言越來越傾向於人類語言,程式設計的技術門檻一降再降。但知道今天依然沒有擺脫“供不應求”的窘境。

    • 機器語言:機器語言為第一代程式語言,邏輯與資料均採用二進位制編碼,以打孔紙帶的形式輸入計算機中。不但難於編寫,而且難於理解。

    • 組合語言:將 0/1 程式碼翻譯為英文單詞,這些英文單詞直接對應著一串 0/1 指令。這個就是組合語言。缺點是指令數量龐大,格式複雜,可記憶性差。

    • 高階語言:高階語言的語法和結構更類似漢字或者普通英文,且由於遠離對硬體的直接操作,使得一般人更容易學習。C、C++、JavaScript等都是高階語言

    發展方向三:高效率的開發技術

    除了讓更多人投身軟體開發,如何能夠進一步提升開發者的效率,也成了軟體行業關注的重點。從純程式碼到類庫,再到整合開發環境,程式設計所需的工作量正在迅速減少;而開發效率的不斷提升,讓開發者可以將更多精力投入到更有價值的領域,從而不斷擴充套件程式設計的應用場景。

    • 純程式碼:幾乎所有的業務邏輯、介面互動均通過手寫程式碼的方式來完成。

    • 類庫:將常用功能的程式碼打包為類庫,開發時直接應用即可大幅減少編碼工作量。專注於介面互動的類庫又稱為控制元件(Controls)最為常見,歷史可以追溯到1980年代。

    • 整合開發環境:內建大量控制元件和其他處理功能,開發時僅需要在視覺化編輯器中托拉拽即可完成常用業務功能的開發。Visual Studio和Eclipse是IDE的代表。

       

      今天,很多開發者都或多或少地經歷過程式設計的發展歷程,一些前輩甚至見證了從機器語言到高階語言、從純程式碼到IDE的進化。為了幫助開發者擁有更趁手的工具,不斷提升程式設計的能力和效率,開發工具廠商應運而生,並且隨著技術潮流持續改進。比如誕生於1980年的葡萄城集團,在1980年代通過一款專門為複雜佈局票據輸入而生的DenpyoMan OCX控制元件進入開發工具市場,此後陸續在1991年釋出了Spread(2020年的最新版本是SpreadJS V13),1996年推出的ActiveReports(2020年的最新版本是ActiveReports V14),從OCX到.NET再到JavaScript純前端技術,葡萄城的開發控制元件產品緊跟程式設計技術發展程式。

    低程式碼,程式設計技術的重要演進方向

    隨著企業對資訊化系統,尤其是與自身業務更貼近的個性化軟體系統的需求日益增長,軟體開發人員顯得更為緊缺。全球範圍來看,Gartner 預計2021 年市場對於應用開發的需求將 5倍 於 IT 公司的產能。目光轉回國內,996和專業開發人員高昂的薪資也在向我們展示“產能不足”的行業現狀。

    為了解決這一問題,行業內嘗試了很多方向,我給大家做個簡單的介紹。

    • 大前端控制元件:在控制元件的基礎上演進,將更多功能打包進控制元件中,能進一步降低程式碼量最大、通用性最強的前端頁面的開發工作量。以SpreadJS為例,只需不到100行程式碼,就可以讓Web系統具備Excel的全部功能。

    • 程式設計框架:將企業應用中,與業務邏輯無關的基礎功能抽象成一個框架,幫助開發人員專注於業務。比如針對Java語言的Spring框架,解決了企業應用開發的複雜性,讓沒有高階架構師的團隊也能高效開發出穩定成熟的企業應用。

    • 零程式碼:針對企業中特定的、通用性強的應用場景,提供元件化的前端頁面和後臺邏輯設計器,讓業務人員自己配置出適合自身的系統。

    • 低程式碼:在零程式碼的基礎上進一步增強擴充套件性,無需編碼就能完成企業的常用功能,少量程式碼擴充套件成更多功能。高擴充套件性帶來的整合能力,讓低程式碼可以對接軟硬體系統,勝任企業核心業務系統的定製化開發需求。葡萄城推出的活字格低程式碼開發平臺就是一款代表性產品。活字格在降低技術門檻、提升開發效率的同時,並沒有犧牲通用性。

    從上述對比中,我們不難看出低程式碼是最貼近程式設計發展方向的技術方案。

    YonBuilder,引領低程式碼技術趨勢。

YonBuilder致力於讓企業應用構建更簡單,既支援公民開發者無程式碼視覺化應用構建,也支援專業開發人員低程式碼高效率應用開發。YonBuider作為企業服務產業共享共創平臺,面向開發者生態提供開發構建、開放連線、部署運維、線上運營的全生命週期能力,踐行數智化商業創新,實現生態共榮! 

背靠用友百萬客戶,聚焦企業服務領域,匯聚優質平臺夥伴,打通新技術及應用、企業與夥伴、夥伴與夥伴、產品服務與銷售機會之間的壁壘,為客戶提供強大的業務、技術、銷售和營銷資源。基於用友大量的企業使用者資源及強大的開放連線能力,為企業應用開發者提供聚合用友多個產品級平臺的入口。有助於企業產品推廣,增加應用的流量、擴充新使用者,獲得收益。企業通過用友雲開放平臺,可將內部的資訊系統延伸、整合到統一的移動入口及WEB端入口,快速幫助企業實現資訊移動化,向企業使用者提供更友好、更方便的企業服務,實現資料共享和生態夥伴融合。

YonBuilder提供企業級全能基礎設施,幫助使用者通過“零安裝,低編碼,視覺化”來構建適用於不同場景的應用;拖拽式開發web應用、移動應用、小程式,加速業務創新轉化。並提供嚮導和大量應用模板,快速輕鬆構建企業應用程式,滿足使用者想象力,啟用更多商業潛能。 

 

相關文章