0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

嚴肅編碼人員的10條低代碼規(guī)則

星星科技指導員 ? 來源:embedded ? 作者:Vikram Srivats ? 2023-05-04 11:56 ? 次閱讀

在全球大流行的艱苦壓力測試之后,企業(yè)現(xiàn)在必須應對戰(zhàn)爭和疲軟的宏觀經(jīng)濟環(huán)境的壓力,同時轉型為現(xiàn)代、可組合和有競爭力的企業(yè)。處于這一轉型核心的技術高管正在追求大膽而務實的戰(zhàn)略,包括快速構建和擴展新的軟件驅動型業(yè)務功能。對他們來說,圣杯似乎是通過低代碼/無代碼(LCNC)方法使軟件應用程序開發(fā)本身民主化,以快速和大規(guī)模地交付給業(yè)務。

專業(yè)開發(fā)人員和企業(yè)架構師參與管理 LCNC 開發(fā),因為企業(yè)開始考慮政策、流程和人員,以負責任地擴展這一運動。但專業(yè)編碼人員本身還不是LCNC平臺的積極采用者 - 他們的范圍從感興趣的觀察者(充其量)到那些討厭LCNC平臺的人(出于其正當理由)。

根據(jù)行業(yè)估計,專業(yè)編碼人員大約 35-40% 的時間花在設置、創(chuàng)建護欄、導入和與數(shù)據(jù)源集成、從頭開始編寫代碼、使代碼安全、測試和重新測試應用程序、管理源代碼控制和版本控制、添加國際化、使其可訪問、優(yōu)化性能以及維護或升級應用程序。另外30%的時間花在非技術或運營活動上。這樣一來,他們只有不到一半的生產時間用于思考、創(chuàng)新和制作復雜且引人注目的應用和體驗。

顯然,專業(yè)編碼人員會感到痛苦。那么,低代碼平臺應該提供什么來吸引專業(yè)程序員采用它們,更好的是,接受它們呢?讓我們深入研究。

規(guī)則1:保持開放。提供熟悉度和可見性

如果一個低代碼平臺使用基于開放標準的流行技術堆棧(React、Angular 和 Bootstrap for UI;后端彈簧;碼頭工人容器)?如果開發(fā)人員可以實際看到并讀取正在生成的真實(不是模型生成或元數(shù)據(jù)驅動的)代碼,該怎么辦?如果這段代碼是按照他們編碼的方式編寫的呢?

專業(yè)程序員習慣于在開放且被廣泛接受的語言或框架中查看、閱讀和理解真實代碼。所以,就給他們吧。

規(guī)則 2:自定義所有內容

開發(fā)人員需要能夠向其應用程序添加細粒度邏輯;也就是說,在代碼編輯器中編寫自定義服務或創(chuàng)建自定義 API,以及拖放畫布。

低代碼平臺應該為開發(fā)人員提供高度配置每個開箱即用小部件的能力,以允許創(chuàng)建視覺上迷人的體驗。

想象一下,如果開發(fā)人員可以超越標準的 UI 小部件庫并創(chuàng)建自己的自定義組件(注入 API 的 UI 的構建塊)并添加到他們的私有庫中。有時,開發(fā)人員可能還需要將預構建的組件(React 或 Angular 或 GraphQL 組件導出為標準 Web 組件)導入到他們的低代碼開發(fā)平臺中并重用它們。

最后,開發(fā)人員可能希望創(chuàng)建自己的應用程序主題(字體、布局、顏色和樣式的組合),以便在一個或多個應用程序或產品中創(chuàng)建差異化但一致的品牌用戶體驗。

規(guī)則 3:輕松與數(shù)據(jù)源集成??焖僭O置。

必須支持與 API(REST、SOAP 或 WebSocket)、數(shù)據(jù)庫(如 MySQL、Maria DB、PostgreSQL、Oracle DB、SQL Server、IBM DB2、Amazon Redshift、SAP Hana、HSQL 和 Mongo DB)等數(shù)據(jù)源的集成和提取,這些數(shù)據(jù)源必須得到支持,并且毫不費力。

CRUD 操作通常由開發(fā)人員硬編碼,占用大量時間。如果低代碼平臺可以在導入數(shù)據(jù)源后自動生成所有 CRUD API,則可以大大減少開發(fā)時間。同樣,復制數(shù)據(jù)庫架構的數(shù)據(jù)庫的可編輯抽象可以幫助開發(fā)人員從平臺本身內部操作數(shù)據(jù)。

導入后,開發(fā)人員應該能夠通過傳遞變量輕松快速地將其 UI 綁定到后端。然后,來自 REST 調用的數(shù)據(jù)應該可以輕松地顯示為頁面上的實體,而無需任何解決方法或冗長的導入和模型定義。同樣,使用 Swagger 導入,描述應該能夠在多個端點或遞歸模型中重用同一模型。

規(guī)則 4:應用必須安全、可縮放且性能高

對于用戶身份驗證,開發(fā)人員可能需要與數(shù)據(jù)庫、LDAP、Active Directory、SAML 和其他身份驗證提供程序集成。應通過支持 SAML 聯(lián)合身份驗證和中央身份驗證服務器 (CAS) 輕松啟用 SSO。對于授權,低代碼平臺需要支持跨頁面擴展的粗粒度和細粒度權限、頁面上的單個小部件,甚至是應用程序公開的單個 API。

開發(fā)人員尋求針對OWASP漏洞(XSS,CSRF,暴力攻擊,SQL注入)的保護,并在應用程序托管期間支持TLS 1.2+等加密標準。理想情況下,低代碼平臺需要由Veracode等安全領導者認證,他們執(zhí)行嚴格的靜態(tài)和動態(tài)測試(iAST,SAST,DAST和SCA)。

通過無會話架構、分布式緩存、通過容器的水平擴展以及特定于 UI 框架的性能功能(例如,Angular 13 具有延遲加載、Brotli 壓縮、樹搖動、常春藤),使用低代碼平臺的開發(fā)人員可以構建高性能應用程序,最大限度地減少聊天和 UI 到后端的往返。例如,它不是在會話中存儲狀態(tài),而是可以通過分布式緩存(如 Redis)提供支持,以允許應用水平縮放。

規(guī)則 5:隨時隨地部署

開發(fā)人員不能受限于特定于供應商的應用部署基礎結構。他們需要自由和靈活地在任何地方托管他們的應用程序 - 在任何公共云、私有云或混合云上,在 K8s 集群上,或在裸機/本地基礎設施上。提供 UI 與后端分離的開發(fā)模型的低代碼平臺可以允許使用標準存檔或 Docker 映像單獨打包和部署 UI 和后端工件(UI 到 CDN;例如,后端到標準 Java 服務器,如 Tomcat)。

規(guī)則6:復雜而長期存在的應用程序和大規(guī)模平臺

開發(fā)人員手動編寫當今使用的一些最復雜的應用程序和系統(tǒng)。他們需要低代碼平臺來加強工作,并提供同樣復雜的應用程序,這些應用程序在維護和增強方面可以長期可持續(xù)。

例如,低代碼平臺需要與第三方BPM工具(Camunda,jBPM,F(xiàn)lowable,Activity)集成,幫助開發(fā)人員編排詳細的工作流/任務,并且需要支持與BPM工具的運行時引擎的完整雙向數(shù)據(jù)交換。在低代碼平臺中,開發(fā)人員將期望輕松操作復雜數(shù)據(jù)(選擇一定數(shù)量的數(shù)組并使用邏輯將它們組合成一組新的數(shù)組),并輕松表示復雜的圖形,而無需自定義樣式/CSS或糾結數(shù)據(jù)格式。

開發(fā)人員可能需要使用父子關系有條件地檢索數(shù)據(jù),能夠本地化和國際化應用程序,處理部署中自定義應用程序的復雜核心代碼合并和升級,處理推送到已導入的 Swagger 文件的 Swagger 更改而無需重新連接所有變量,編寫和支持與可視化開發(fā)交錯的復雜業(yè)務邏輯,在運行時支持多個應用程序主題, 支持應用作為深層鏈接,設置點擊目標以衡量/啟動意圖或網(wǎng)址等。

規(guī)則 7:無供應商鎖定、限制或細則

對于重視獨立和自由的開發(fā)者來說,鎖定是嚴格的禁忌。這從訪問生成的代碼開始。在這個領域表現(xiàn)良好的低代碼平臺很容易使開發(fā)人員不僅能夠查看和讀取生成的代碼,而且還可以將平臺外部的源代碼導出到他們選擇的IDE。

開發(fā)人員也不喜歡低代碼平臺,這些平臺迫使他們使用運行時環(huán)境來部署應用程序,從而在應用程序的整個生命周期中有效地將開發(fā)人員及其雇主鎖定在平臺中。最后,從許可的角度來看,將開發(fā)人員限制為有限數(shù)量的應用程序、應用程序對象或最終用戶的低代碼平臺有效地將開發(fā)人員限制在商業(yè)模式上,這種模式隨著使用和更多應用程序的使用而迅速變得昂貴。

規(guī)則 8:現(xiàn)代(云原生)環(huán)境、實踐和標準

使用云原生低代碼平臺的開發(fā)人員在協(xié)作、易于訪問、可用性、靈活性、安全性、頻繁且輕松的升級、水平擴展以及用于應用開發(fā)和部署的模型的整體單位經(jīng)濟性方面受益匪淺。

開發(fā)人員友好的低代碼平臺使用現(xiàn)代設計模式(例如,Java maven 項目)生成代碼,使開發(fā)人員能夠跨應用程序堆棧的所有層查看、擴展和自定義代碼。它們使每個用戶都能將工作區(qū)作為容器實例運行。構建應用時,會在低代碼平臺的源代碼管理/Git 中為其自動創(chuàng)建一個存儲庫(并與 Prometheus/EFK 集成以獲取日志和指標)。

最后,開發(fā)人員欣賞采用現(xiàn)代標準的低代碼平臺,例如Android Material Design規(guī)范,用于視覺設計和使用開箱即用的小部件和主題跨多個設備構建交互。他們重視創(chuàng)建功能性、可分發(fā)、可重用、API 集成和可獨立測試的體驗組件的能力。提供十二因素標準的低代碼平臺向開發(fā)人員保證他們的應用程序值得信賴。

規(guī)則 9:很好地使用設計、構建、測試和發(fā)布流程和工具集

使用低代碼平臺的開發(fā)人員希望他們的應用程序連接到其他手動編碼的應用程序、集成或嵌入到其他手動編碼的應用程序中。除了 iFrame 支持之外,支持通過微前端方法嵌入的低代碼平臺(如單 SPA)還為開發(fā)人員提供了復雜的功能,以創(chuàng)建涵蓋高代碼和低代碼開發(fā)應用的無縫端到端體驗。

專業(yè)的應用程序開發(fā)團隊傾向于使用Figma,Sketch或UXPin等設計工具;QA 工具,如硒、量角器或 Karma,用于測試 Web 應用程序;用于測試移動應用程序的Appium;以及性能測試工具和應用程序分析器,如 AppDynamics 或 New Relic。DevOps 團隊擁有大量用于構建、測試、集成和部署過程的工具。部署后,開發(fā)人員希望通過Google Analytics或Adobe Analytics監(jiān)控應用程序性能事件和頁面跟蹤。深受開發(fā)人員喜愛的低代碼平臺必須很好地發(fā)揮作用,并與這些工具集無縫集成,并設計、構建、測試、發(fā)布和監(jiān)控流程。

最后,雖然低代碼平臺可以提供自己的VCS(如Gitlab),但它們需要提供與GitHub或Bitbucket等外部存儲庫的輕松集成。開發(fā)人員應該能夠拉取、查看和推送更改,并合并源代碼管理系統(tǒng)之間的沖突。他們將喜歡低代碼平臺,這些平臺支持從代碼級提交到組件級和應用程序級版本控制(包括主要或次要版本格式)的應用程序版本控制,允許應用程序的多個版本在不同的部署環(huán)境(如測試、暫存或預生產)中共存。

規(guī)則 10:面向未來的我、我的應用和我的雇主

使用低代碼平臺的 UI 開發(fā)人員或后端開發(fā)人員應該能夠開發(fā)完整的應用程序,例如 SQL、JS/Java 和零 DevOps 的基本知識,并轉變?yōu)槿珬i_發(fā)人員。以Java世界為例,開發(fā)人員不需要高級JS框架,HTML5,CSS,Bootstrap,Spring,ORM,REST,高級SQL,本機設備編程,移動集成,構建和運行Docker腳本或與CI / CD管道的手動集成的知識。

對于使用低代碼平臺構建的應用程序的技術堆棧升級,開發(fā)人員應該能夠在具有最新技術堆棧的低代碼平臺的目標版本中打開應用程序(例如,Angular 14 for UI)。應用程序升級應該是自動的,并且過渡是無縫的。

開發(fā)人員和首席技術官/首席信息官都在不斷擔心為未來創(chuàng)造技術債務。企業(yè)友好的低代碼平臺建立在基于開放標準的現(xiàn)代技術堆棧之上,將技術升級的負擔轉移到平臺,提供可使用常用技能集在平臺外部擴展的源代碼,并與現(xiàn)代企業(yè)的工具集、實踐和標準很好地配合使用。

審核編輯:郭婷

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • JAVA
    +關注

    關注

    19

    文章

    2952

    瀏覽量

    104489
  • API
    API
    +關注

    關注

    2

    文章

    1473

    瀏覽量

    61750
  • MySQL
    +關注

    關注

    1

    文章

    798

    瀏覽量

    26401
收藏 人收藏

    評論

    相關推薦

    設計規(guī)則13:旁路電容設計指南

      考慮到了電路布局對性能的所有可能的影響,設計人員可以做些什么來確保版圖避免振蕩、失真和總體信號質量低下呢?下面的基本版圖和旁路電容設計指南“設計規(guī)則13”可能頗
    發(fā)表于 04-12 11:14 ?3559次閱讀
    設計<b class='flag-5'>規(guī)則</b>13<b class='flag-5'>條</b>:旁路電容設計指南

    代碼開發(fā)的五個優(yōu)勢是什么

    在傳統(tǒng)的開發(fā)模式中,開發(fā)效率往往會比較慢,所以慢慢衍生出不少可以快速開發(fā)的工具或者是編程框架,甚至是代碼開發(fā)平臺,代碼開發(fā)可以是傳統(tǒng)開發(fā)速度的1
    發(fā)表于 04-29 17:32

    STM32f10xxx庫函數(shù)的編碼規(guī)則

    [STM32f10xxx庫函數(shù)]1.定義、命名和編碼規(guī)則1.定義2.命名規(guī)則3.編碼規(guī)則3.1變
    發(fā)表于 08-23 08:49

    HDB3特點及編碼規(guī)則

      【HDB3的全稱 】  High Density Bipolar of order 3code,三階高密度雙極性碼。   【HDB3的編碼規(guī)則】   一、編碼規(guī)則:   1
    發(fā)表于 07-28 17:39 ?2.3w次閱讀

    PCB設計中元器件布局的10條規(guī)則,布線的規(guī)則是什么?

    一、布局元器件布局的10條規(guī)則:1. 遵照“先大后小,先難后易”的布置原則,即重要的單元電路、核心元器件應當
    的頭像 發(fā)表于 07-17 18:48 ?1.6w次閱讀
    PCB設計中元器件布局的<b class='flag-5'>10</b><b class='flag-5'>條規(guī)則</b>,布線的<b class='flag-5'>規(guī)則</b>是什么?

    什么是代碼

    具有哪些功能嗎?你知道代碼開發(fā)平臺能夠開發(fā)哪些應用程序嗎? 什么是代碼代碼開發(fā)是?種通
    發(fā)表于 05-09 15:26 ?1952次閱讀

    元器件布局的10條規(guī)則

    元器件布局的10條規(guī)則: 遵照“先大后小,先難后易”的布置原則,即重要的單元電路、核心元器件應當優(yōu)先布局。 布局中應參考原理框圖,根據(jù)單板的主信號流向規(guī)律安排主要元器件。 元器件的排列要便于調試和維修,亦即小元件周圍不能放置大元件、需調試的元、器件周圍要
    的頭像 發(fā)表于 02-12 10:04 ?8077次閱讀
    元器件布局的<b class='flag-5'>10</b><b class='flag-5'>條規(guī)則</b>

    代碼是什么意思,代碼開發(fā)平臺中的功能

    代碼對于想要輕松創(chuàng)建軟件而不是成為IT專家的日常用戶非常有吸引力。此外,它還可以提高您的想法與市場的比率,這意味著您可以更輕松、更快速地發(fā)布新內容。 代碼是什么意思?
    的頭像 發(fā)表于 11-09 16:21 ?2591次閱讀

    什么是HarmonyOS代碼開發(fā)

    。代碼開發(fā)讓更多的人可以參與到應用程序開發(fā)當中,不僅是具有專業(yè)編程能力的程序員,非技術背景的業(yè)務人員同樣可以構建應用;對于大型企業(yè)來講,代碼
    的頭像 發(fā)表于 11-22 10:50 ?2248次閱讀

    代碼會使初級碼農失業(yè)嗎

    ”(Low-Code),是指一種無需編碼或者僅需要少量代碼就可以快速生成應用程序的開發(fā)方法,通過可視化進行程序開發(fā),使具有不同經(jīng)驗水平的開發(fā)人員可以通過圖形化的用戶界面,通過拖拉拽組件和模型驅動的邏輯來創(chuàng)建網(wǎng)頁和移動應用程序。
    的頭像 發(fā)表于 11-21 20:43 ?486次閱讀

    貼吧代碼高性能規(guī)則引擎設計

    規(guī)則引擎是一種專注于業(yè)務規(guī)則的服務,它可以將業(yè)務規(guī)則代碼中剝離出來,使用預先定義好的語義規(guī)范來實現(xiàn)這些剝離出來的業(yè)務規(guī)則。
    的頭像 發(fā)表于 01-10 10:41 ?585次閱讀

    SRRC證書樣式和代碼編碼規(guī)則即將施行

    為優(yōu)化無線電發(fā)射設備型號核準證書樣式和代碼編碼規(guī)則,根據(jù)《無線電發(fā)射設備管理規(guī)定》,近日,工業(yè)和信息化部修訂發(fā)布了《無線電發(fā)射設備型號核準證書樣式》和《無線電發(fā)射設備型號核準代碼
    的頭像 發(fā)表于 10-14 16:50 ?665次閱讀
    SRRC證書樣式和<b class='flag-5'>代碼</b><b class='flag-5'>編碼</b><b class='flag-5'>規(guī)則</b>即將施行

    7實用的PCB布線規(guī)則

    7實用的PCB布線規(guī)則
    發(fā)表于 09-30 11:48 ?41次下載

    代碼(Low-Code)是什么?代碼的特點有哪些?

    代碼(Low-Code)是一種軟件開發(fā)方法,它通過圖形化界面和少量的編碼來創(chuàng)建軟件應用程序。
    的頭像 發(fā)表于 11-21 09:57 ?3666次閱讀

    國內代碼平臺推薦--萬界星空科技代碼平臺

    代碼平臺是一種應用程序,它為編程提供圖形用戶界面,從而以極快的速度開發(fā)代碼,減少傳統(tǒng)編程工作。 這些工具有助于快速開發(fā)代碼,最大限度地減少手工
    的頭像 發(fā)表于 07-18 15:39 ?248次閱讀
    國內<b class='flag-5'>低</b><b class='flag-5'>代碼</b>平臺推薦--萬界星空科技<b class='flag-5'>低</b><b class='flag-5'>代碼</b>平臺