回顧“低程式碼”歷史發展,是技術進步了還是倒退了?

cornerstone 發表於 2021-11-25

低程式碼開發可以說是最近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工具有其侷限性:

  1. 它們通常是私有的商業軟體,這意味著繫結在特定的開發環境中。目標環境通常是指定的,例如VB/Delphi開發的程式通常只能在Microsoft Windows、Oracle應用伺服器和OracleForms資料庫的環境中執行。
  2. 因為缺乏模組化,團隊在一個應用程式上一起合作開發是比較困難的,或者說有很多限制條件。
  3. 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/,如需轉載,請註明出處,否則將追究法律責任。