回顧“低程式碼”歷史發展,是技術進步了還是倒退了?
低程式碼開發可以說是最近IT技術圈的頂流,2014年之前還沒有“低程式碼”這個術語,19年之前幾乎沒人關注低程式碼,但從19年到現在(2021年11月)的2年時間,低程式碼的百度搜尋指數增長了10倍,可見這個領域的受關注程度正在與日俱增。
織信之前的文章,曾介紹過低程式碼開發的歷史,這次讓我們再次回顧歷史,因為回顧歷史可以讓我們更好地把握未來發展的趨勢,看清那些在技術演進過程中不變的東西。
什麼是低程式碼?
“低程式碼”是一種視覺化程式設計方法,允許企業不必通過編寫程式碼而是通過圖形介面快速搭建應用程式。 雖然“低程式碼開發”這個術語是在2014年由知名市場研究機構Forrester為了描述這一類服務提供商而創造的,但低程式碼背後的想法並不新鮮。在這篇文章中,我們將看到這種模式是如何隨著時間的推移而發展的,以及它所面臨的問題。
目錄:
- 1970年-1990年:第四代程式語言(4GL,Fourth-Generation Programming Language)
- 1990年:快速應用程式開發(RAD,Rapid Application Development)
- 2001年:模型驅動架構(MDA,Model-Driven Architecture)
- 2007年:移動平臺(Mobile Platform)
- 2014年:低程式碼與低程式碼開發平臺
- 2020年:數字化轉型的迫切需要
1970年-1990年:第四代程式語言
低程式碼開發平臺可以追溯到第四代程式語言——這個概念是在20世紀70年代到90年代發展起來的,與第三代程式語言(3GL)的大部分開發重疊。
第三代程式語言:C, C++, Java, Python, PHP, Perl, C#, BASIC, Pascal, Fortran, ALGOL, COBOL
第四代程式語言:ABAP, Unix Shell, SQL, PL/SQL, Oracle Reports, RJames Martin在他1982年出版的《Applications Development Without Programmers》中,認為4GL技術(如RAMIS和FOCUS)向更廣泛的人群開放了開發環境,並使非程式設計師能夠自己建立應用程式。
第四代程式語言指的是非過程的高階規範語言,包括支援資料庫管理、報告生成、數學優化、圖形使用者介面(GUI)開發和web開發。
1990年:快速應用程式開發
作為對瀑布模型的響應,當使用Visual Basic、Delphi和Oracle Forms等視覺化程式設計工具“組裝”桌面應用程式的概念開始流行時,我們看到快速應用程式開發(RAD)在20世紀90年代獲得良好的發展勢頭。
瀑布模型是軟體開發行業長期使用的計劃驅動過程,它是在20世紀七八十年代發展起來的,基於傳統的工程模式。
RAD工具作為易於學習的開發環境而表現突出,其核心理念是:終端使用者應該首先關注GUI,並逐步新增業務邏輯。
然而,RAD工具有其侷限性:
- 它們通常是私有的商業軟體,這意味著繫結在特定的開發環境中。目標環境通常是指定的,例如VB/Delphi開發的程式通常只能在Microsoft Windows、Oracle應用伺服器和OracleForms資料庫的環境中執行。
- 因為缺乏模組化,團隊在一個應用程式上一起合作開發是比較困難的,或者說有很多限制條件。
-
RAD工具(如Visual Cafe和Borlands JBuilder)在速度和資源需求方面遇到了困難。它們是用Java寫的,這在當時意味著對資源的巨大需求。
2001年:模型驅動架構
為了減少部門和開發之間的距離,物件管理組織(OMG,Object Management Group)在2001年推出了模型驅動架構(MDA)。作為一種軟體設計方法,它提供了一組指導方針,用於將規範構建和表示為模型。
模型支援域的整體檢視,綜合考慮技術和業務需求,隨後轉換為可執行程式碼。在開發和執行時使用生成器和直譯器來生成或解釋模型中的程式碼。
隨著MDA和微軟軟體工廠的出現,模型驅動軟體開發(MDSD,Model-Driven Software Development)吸引了很多使用UML(統一建模語言,Unified Modeling Language)和BPMN(業務流程建模符號,Business Process Modeling Notation)等工具的程式設計師的興趣。
2007年:移動平臺
隨著蘋果在2007年釋出iPhone iOS進入移動裝置市場,以及一年後谷歌的Android問世,各種移動平臺應運而生。
開發者積極使用Android Studio和Xcode等視覺化編輯器在本地開發Android和iOS應用。
這是桌面應用程式在移動裝置上的復興。
然而,響應式網頁設計以及增強型Web應用(PWA,Progressive Web APPs)等技術已經威脅到了移動應用,因為它們能夠為小型裝置提供具有良好使用者體驗(UX)的網頁應用,並且不需要依賴特定的移動開發平臺。
2014年:低程式碼與低程式碼開發平臺
2014年,弗雷斯特集團(Forrester)發表了一篇文章,此後“低程式碼”(low-code)一詞成為顯學。
我們已經看到了低程式碼開發平臺(LCDP,Low-Code Development Platform)的出現——它的起源可以追溯到2011年——其目標是將盡可能多的概念整合到一個平臺上,從而使編寫程式碼變得不必要或至少顯著減少。
低程式碼平臺包含RAD和MDSD過程,並將ALM(應用程式生命週期管理,Application Life Cycle Management)以及持續整合(CI,Continuous Integration)或持續部署(CD,Continuous Deployment)整合到開發、測試和生產環境中。
為了支援整個環境的“拖放”建立,必須有PaaS(平臺即服務,Platform as a Service)的支援。通常使用公有云服務提供的PaaS,但也可以使用企業內部服務(如基於OpenShift的容器平臺)。
aPaaS(應用平臺即服務,Application Platform as a Service)提供了應用程式整個生命週期所需的一切:從一開始的規劃階段一直到開發、驗收和運維。
2020年:數字化轉型的迫切需要
2020年,新冠疫情的大爆發暴露了許多企業在數字化方面已經落後了。
為了保持他們的業務運作並滿足他們的員工和客戶的需求,他們被迫升級他們的應用程式,並構建新的應用程式來填補現有的流程空白。
因此,低程式碼的普及程度得到了提升。這一勢頭將持續到2021年。
低程式碼從歷史中學到了什麼?
像幾十年前流行的4GL這樣的技術,曾承諾能迅速滿足客戶的需求,但由於一些限制因素,最終失敗了,而且它們的流行程度自推出以來就不斷的在減弱。
進入21世紀,許多RAD開發環境已經銷聲匿跡了。隨著為web編寫應用程式成為趨勢,Swing和SWT等“經典”UI工具包變得越來越沒有意義。
UI設計越來越多地使用HTML、CSS和JavaScript來完成,這為網頁設計師創造了越來越多的工作機會。不同的網頁瀏覽器、作業系統(如Linux、macOS)以及從PC到智慧手機再到可穿戴裝置的都被當作目標系統。
我們注意當前的低程式碼服務提供商大多數都學習過歷史。他們知道困擾4GL和RAD的問題,並試圖在他們的系統中修復這些問題。
隨著企業轉向人工智慧、機器人、機器學習和物聯網等新技術,低程式碼解決方案也在不斷髮展,以提供這些能力。
結語:
合理並且有效地運用低程式碼平臺,不僅可以讓我們工作高效地執行,還能最大程度保證團隊目標的達成。我推薦使用織信Informat,它內建100多個應用模板並覆蓋:OA、ERP、CRM、生產裝置、績效、企業服務、個人及組織等多個應用場景。點選一鍵安裝,即可免費試用。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69933591/viewspace-2844171/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 2017 前端技術發展回顧前端
- 回顧 Firefox 歷史Firefox
- 低程式碼的技術原理是什麼?
- 低程式碼是什麼意思?低程式碼平臺的技術特點是什麼?
- 以太坊學習筆記————4、以太坊發展歷史回顧筆記
- 對程式設計師而言,學歷重要還是技術重要?程式設計師
- 低程式碼是程式設計發展的大勢所趨?程式設計
- 技術管理進階——管人還是管事?
- 作為程式設計師,是死死的呆在一家公司進步快,還是多跳槽多換公司技術進步快程式設計師
- 技術還是思想?
- 圓滿落幕!回顧 eBPF 技術的發展與挑戰eBPF
- IT行業更看重學歷還是更看重技術?行業
- 看VR發展史,VR技術成熟度曲線的趨勢是?VR
- 魂系列作品及歷史全面回顧
- Pycharm 如何檢視程式碼修改歷史|回滾程式碼PyCharm
- Linux是什麼作業系統?發展歷史介紹Linux作業系統
- 還原歷史?這恰恰是歷史策略遊戲中最難做到的遊戲
- 中臺和低程式碼,“零和”還是“競合”?
- Linux發展歷史Linux
- 直播回顧|TGIP-CN 036:Apache Pulsar 最新技術進展與動態Apache
- 低程式碼是什麼?
- 容器技術之發展簡史
- iOS歷史(iOS系統發展歷史)iOS
- 2020年總結回顧去年的黑歷史
- 低程式碼是開發的未來嗎?淺談低程式碼平臺
- 區塊鏈是真技術還是忽悠?區塊鏈
- 低程式碼簡史
- 什麼是元回顧?
- 是我們控制著技術,還是技術控制著我們?
- 騰訊劉穎:從容器到低程式碼,騰訊雲原生技術演進歷程
- 2021低程式碼現狀:回顧過去,展望未來
- 技術管理進階——悟了,還是防禦機制的應激反應?
- 林克整容史:歷代「塞爾達」藝術風格變化回顧
- 低程式碼開發平臺,真的是為了"幹掉"程式設計師嘛?程式設計師
- 低程式碼是什麼意思
- 低程式碼是什麼意思?
- 低程式碼開發平臺是什麼意思?低程式碼開發平臺優勢!
- 什麼是低程式碼?低程式碼開發平臺的三大優勢