天天看點

技術掃盲:關于低代碼程式設計的可持續性傳遞設計和分析

技術掃盲:關于低代碼程式設計的可持續性傳遞設計和分析

作者:小傅哥

部落格:https://bugstack.cn

沉澱、分享、成長,讓自己和他人都能有所收獲!😄

一、前言

CRUD程式員會不會越來越便宜?

CRUD,是程式員的自嘲,講自己經常開發增删改查或者接口包裝的簡單邏輯代碼。

但這部分簡單邏輯的代碼又幾乎是現階段網際網路公司裡最消耗研發人員的部分,任何的業務需求實作都會包括大量接口的開發,但這些不同業務間差異性較大的接口又不具備可複用性,是以不斷的造接口帶來的是研發、測試到傳遞上線一整套的人員投入。

對個人來說開發CRUD是幾乎沒有技術成長的,開發CRUD隻是程式員在成長過程中的一個階段,随着個人能力的提升以及跳槽必然會做更加核心的開發。

站在公司技術部門的層面,一定是希望投入更少的人實作更高的傳遞能力。例如:

  1. DDD建設在業務、營運、産品、研發、測試等人員間的領域模型,降低溝通成本
  2. 用于解決在業務流程中嵌入的非業務功能性的通用核心服務,抽離出統一的技術元件
  3. 标準的主幹業務形态,抽離出業務通用性物料,用于可服務化編排,降低開發成本

以上以及其他的種種方案都是為了提升研發可持續性傳遞能效,而CRUD這種高重複的代碼邏輯,會被一點點的由工具可視化程式設計吞食掉。而低代碼程式設計對于這一部分是最好下手的!

二、什麼是低代碼

Low-Code,一詞最早在2014年就由Forrester提出,它是對低代碼開發平台的始祖級定義。

Low-code is a software development approach that enables the delivery of applications faster and with minimal hand-coding. Low-code platforms are a collection of tools that enable the visual development of applications through modeling and a graphical interface. Low-code enables developers to skip hand-coding, speeding up the process of getting an application to production.

簡單說,低代碼開發就是研發人員可以通過編寫少量的代碼或者通過IDE拖拽工具,快速完成業務需求開發的一種方式。

低代碼開發平台,可以自研或者使用市面的IDE工具,完成代碼邏輯的服務編排。你可以把基礎的業務流程了解為各個分支節點項的基礎物料。通過這些物料接口接口的組裝、編排和結果輸出,來完成代碼邏輯的自動化開發和可持續性傳遞。

技術掃盲:關于低代碼程式設計的可持續性傳遞設計和分析

使用低代碼開發并且運用可視化地方式來建構應用程式,你的開發效率和傳遞品質都将大大提升。這也就是為什麼說 CRUD 程式員将越來越便宜。

三、如何落地實作

如果低代碼程式設計這麼好,那你具備落地條件嗎?

低代碼程式設計的核心就是運用可視化IDE進行動态編排服務邏輯接口,并做到可持續傳遞的能力,進而提升研發能效。

但開發一個業務功能的複雜邏輯總量不會變,為了支援可視化服務編排,那麼就需要有對應的通用性業務元件。那麼這部分業務元件、技術元件、自動化的傳遞品質分析以及監控系統就都需要完善提供出來。如果公司的技術資料沉澱相對較少,那麼營運這樣一套平台還是相當不容易的

技術掃盲:關于低代碼程式設計的可持續性傳遞設計和分析
  • 物料:這裡指相對獨立的業務領域模型,實作的通用性業務功能。例如:下單核心流程、支付核心流程等。
  • 元件:通常說的是技術元件,也包括中間件那部分。這部分是對于業務流程中非業務邏輯的通用性核心邏輯,提煉出來開發的中間件。比如:白名單、熔斷、限流、路由等。
  • 傳遞:在傳遞過程中如何保證研發治理是非常重要的一環,如果是自動化拖拽式開發,那麼就更需要使用位元組碼增強技術,采集接口開發資訊,為傳遞品質自動化分析做保障。
  • 監控:系統的上線運作還需要可持續的維護和監控,也就是常說的QPS、TPS、可用率、響應時長、調用鍊路等等。

除此之外還有很多其他的元件也會引入到低代碼程式設計中,這些功能子產品、物料和無服務計算的元件都都需要大量專業能力很高的程式員來開發完成。

當然,低代碼程式設計也不隻是服務端使用,還有前端搭建頁面。例如你以前用過的很多拖拽都可以算作其中。

四、總結

  • 本篇隻是向大家介紹低代碼程式設計以及它的落地方案介紹,但開發這樣的IDE并不容易。比如你需要了解源碼用于開發中間件,了解位元組碼插樁用于開發監控,懂的UI開發拖拽和代碼自動化生成等等。
  • CRUD,不是長久之計!

    通過這樣越來越多的技術更新,你會發現隻讓你開發CRUD的公司将會越來越少。
  • 學會造輪子,學會造火箭,除了工作之外的核心技術才是每個成長階段的必需品。新的一年開始了,加油!

五、系列推薦

  • 方案設計:基于IDEA插件開發和位元組碼插樁技術,實作研發傳遞品質自動分析
  • 數學,離一個程式員有多近?
  • 握草,這些研發事故30%我都幹過!
  • 誰說明天上線,這貨壓根不知道開發流程!
  • 工作3年,看啥資料能月薪30K?

公衆号:bugstack蟲洞棧 | 作者小傅哥多年從事一線網際網路 Java 開發的學習曆程技術彙總,旨在為大家提供一個清晰詳細的學習教程,側重點更傾向編寫Java核心内容。如果能為您提供幫助,請給予支援(關注、點贊、分享)!