自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

CodeOps:使用LLM和模塊化編碼加快開(kāi)發(fā)進(jìn)程

譯文
運(yùn)維 人工智能
本文介紹了我們?nèi)绾卫蒙墒紸I、通用應(yīng)用程序結(jié)構(gòu)和系統(tǒng)性代碼重用,推動(dòng)更快速、更創(chuàng)新地開(kāi)發(fā)數(shù)字產(chǎn)品的工作。

譯者 | 布加迪

審校 | 重樓

2009年,DevOps(開(kāi)發(fā)運(yùn)維)作為一種運(yùn)維模型出現(xiàn),適用于想要充分發(fā)揮敏捷軟件開(kāi)發(fā)方法潛力的團(tuán)隊(duì)。它使這些團(tuán)隊(duì)能夠盡快地構(gòu)建和部署,為快速、迭代的開(kāi)發(fā)建立一新的范。

隨之而來(lái)的是全球軟件開(kāi)發(fā)的爆炸式增長(zhǎng),DevSecOps、MLOps、AIOps、DataOps、CloudOpsGitOps等相關(guān)框架層出不窮。任何工程職能或核心開(kāi)發(fā)技術(shù)都有相應(yīng)的運(yùn)維框架和市場(chǎng)類別來(lái)加以優(yōu)化。

既然市面上有這么多解決方案,為何企業(yè)仍難以將大量的“-Ops”策略轉(zhuǎn)化為令人滿意的速度和創(chuàng)新結(jié)果呢?隨著組織不斷適應(yīng)不同的代碼來(lái)源專有代碼、開(kāi)源代碼和大語(yǔ)言模型即LLM生成的代碼它們如何使這些模型適應(yīng)不同來(lái)源的代碼?

CodeOps(代碼運(yùn)維)應(yīng)運(yùn)而生,這種新興方法使用完全擁有和可重用的代碼快速構(gòu)建軟件產(chǎn)品。它利用生成式AI和模塊化編碼概念來(lái)加快開(kāi)發(fā)過(guò)程,加強(qiáng)創(chuàng)新,并最終推動(dòng)更快的數(shù)字產(chǎn)品開(kāi)發(fā)。

CodeOps工作機(jī)理

與敏捷方法一樣,CodeOps旨在支持并加速企業(yè)內(nèi)部的軟件開(kāi)發(fā)。然而,它不是針對(duì)敏捷性進(jìn)行優(yōu)化,而是針對(duì)重用進(jìn)行優(yōu)化——重用規(guī)范、設(shè)計(jì)、架構(gòu)、數(shù)據(jù)模型、集成以及代碼本身。

長(zhǎng)期以來(lái),重用現(xiàn)有代碼一直是工程師的一種自然做法。當(dāng)應(yīng)用程序在規(guī)劃階段看起來(lái)相似時(shí),可以立即識(shí)別出一種合用的架構(gòu),并通過(guò)自動(dòng)組裝其核心部分來(lái)快速啟動(dòng)代碼庫(kù)。優(yōu)秀的開(kāi)發(fā)人員知道這一點(diǎn),偶然會(huì)重用他們自己開(kāi)發(fā)的或在開(kāi)源代碼庫(kù)中找到的代碼組件。

然而,開(kāi)發(fā)人員層面重用帶來(lái)的影響完全依賴團(tuán)隊(duì)的成熟程度,通常沒(méi)有流程或工具來(lái)確保它在整個(gè)組織中有效地?cái)U(kuò)展以提供好處。只有通過(guò)系統(tǒng)重用才能發(fā)揮這種潛力,認(rèn)證模塊集中提供,并且易于發(fā)現(xiàn),用在參與應(yīng)用程序開(kāi)發(fā)的諸團(tuán)隊(duì)中。

因此,希望利用CodeOps概念的組織應(yīng)該為范式轉(zhuǎn)變做好準(zhǔn)備。系統(tǒng)的代碼重用是開(kāi)發(fā)流程邁出的革命性一步。它需要創(chuàng)建一個(gè)集中存儲(chǔ)庫(kù)來(lái)容納認(rèn)證的模塊,這些模塊經(jīng)過(guò)了必要的審查和廣泛的測(cè)試,以確保功能和安全。目是創(chuàng)建一大批模塊,可以無(wú)縫地部署不同的項(xiàng)目和團(tuán)隊(duì)中。

利用生成式AI確保投資回報(bào)最大化

CodeOps也很容易適應(yīng)人機(jī)混合開(kāi)發(fā)領(lǐng)域的新趨勢(shì)。如今,大多數(shù)團(tuán)隊(duì)都了解生成式AI的潛力,可以充當(dāng)伺機(jī)集成的智能助手。然而,他們不確定如何規(guī)劃跟蹤對(duì)業(yè)務(wù)結(jié)果的影響,并確保這方面的影響最大化。

通過(guò)重構(gòu)團(tuán)隊(duì)構(gòu)建軟件的方式,CodeOps解生成AI投資回報(bào)提供了一個(gè)框架。它確定大語(yǔ)言模型使用的優(yōu)先級(jí)如下所示

1. 根據(jù)項(xiàng)目規(guī)范對(duì)現(xiàn)有模塊進(jìn)行組合。

2. 創(chuàng)建與戰(zhàn)略模塊路線圖一致的新模塊。

3. 為非模塊化用例生成自定義代碼。

在模塊組合方面,大語(yǔ)言模型已經(jīng)達(dá)到或超過(guò)了人類的表現(xiàn)。模塊組合是指這項(xiàng)任務(wù):對(duì)照自定義的產(chǎn)品描述或詳細(xì)規(guī)范,對(duì)已存儲(chǔ)的模塊目錄進(jìn)行模式匹配。這種方法可以顯著地減少傳統(tǒng)軟件開(kāi)發(fā)生命周期的“規(guī)劃調(diào)校階段,因此為不懂技術(shù)的利益相關(guān)者節(jié)省了時(shí)間,并縮短了總體開(kāi)發(fā)時(shí)間。

大語(yǔ)言模型還非常適合根據(jù)自定義參數(shù)創(chuàng)建新模塊。如果提示足夠清晰,或者有足夠的組織現(xiàn)有代碼的訓(xùn)練集,它們就能夠?qū)F(tuán)隊(duì)現(xiàn)有的代碼標(biāo)準(zhǔn)推之,從而生成新的、可重用的規(guī)范和代碼模塊。采用系統(tǒng)代碼重用的組織因此可以根據(jù)內(nèi)部代碼標(biāo)準(zhǔn),快速填充其模塊目錄,與通過(guò)手動(dòng)創(chuàng)建模塊相比,可以短的時(shí)間內(nèi)大幅提高生產(chǎn)力。

最后,CodeOps很容易整合由不同開(kāi)發(fā)人員生成的Copilot風(fēng)格的AI代碼。然而在CodeOps領(lǐng)域,這種用法局限于定制開(kāi)發(fā)的最后一英里,這是初始模塊組合未能涵蓋的。這減少了團(tuán)隊(duì)今天面臨的投資回報(bào)模糊性:一些開(kāi)發(fā)人員頻繁使用AI,一些卻很少使用AI,但有了CodeOps,可以確定AI在代碼庫(kù)的哪些部分有望為團(tuán)隊(duì)提升生產(chǎn)力,然后相應(yīng)地進(jìn)行優(yōu)化。

實(shí)戰(zhàn)中的CodeOps

說(shuō)到重用代碼模塊,有兩個(gè)主要參數(shù)需要考慮覆蓋率和可重用性。覆蓋率指典型應(yīng)用程序中多少部分是由特定類型的模塊組成的,而可重用性特定類型的模塊在不同項(xiàng)目中可使用的可能性。

以下是理解覆蓋率和可重用性的幾個(gè)一般規(guī)則

模塊層

示例

占典型應(yīng)用程序

的百分比(覆蓋率)

可重用性

基礎(chǔ)設(shè)施

定義和部署

CI/CD管道

5%

連接到遠(yuǎn)程

服務(wù)

身份驗(yàn)證

20%

與基礎(chǔ)服務(wù)

相關(guān)的應(yīng)用

程序邏輯

身份驗(yàn)證

邏輯

20%

樣式

樂(lè)高資產(chǎn)

5%

數(shù)據(jù)庫(kù)模型

用戶表

10%

屏幕布局

活動(dòng)源UI

15%

與差異化功

能相關(guān)的應(yīng)

用程序邏輯

產(chǎn)品推薦

算法

25%

值得一提的是,應(yīng)用程序最大部分代碼并不總是重用性最強(qiáng)的。這種區(qū)別可以幫助團(tuán)隊(duì)理解在致力于模塊開(kāi)發(fā)時(shí)如何做出正確的取舍。在CodeOps方法中,模塊的構(gòu)建應(yīng)該首先根據(jù)可重用性而不是覆蓋率來(lái)確定優(yōu)先級(jí),以確保實(shí)現(xiàn)價(jià)值最大化。

了理解CodeOps如何影響某個(gè)項(xiàng)目,不妨考慮采用CodeOps不采用CodeOps的示例性的個(gè)人理財(cái)應(yīng)用程序開(kāi)發(fā)時(shí)間表

不采用系統(tǒng)重用

  • 項(xiàng)目工期28周
  • 項(xiàng)目細(xì)
  • 需求分析2周
  • 設(shè)計(jì):2
  • 編碼
  1. 身份驗(yàn)證流程3周
  2. 支付處理集成4周
  3. 數(shù)據(jù)驗(yàn)證功能2周
  4. 報(bào)告功能:3
  5. 額外自定義功能6周
  • 測(cè)試和調(diào)試:4
  • 部署:2

采用系統(tǒng)重用CodeOps方法

項(xiàng)目工期:16周

項(xiàng)目細(xì)

  • 需求分析1周重用規(guī)范
  • 設(shè)計(jì)1周重用設(shè)計(jì)
  • 編碼
  1. 身份驗(yàn)證模塊重用):1周集成和定制
  2. 支付處理模塊重用):1集成和定制
  3. 數(shù)據(jù)驗(yàn)證模塊重用):1周集成和定制
  4. 報(bào)告模塊重用):1周集成和定制
  5. 額外自定義功能5周AI Copilot輔助)
  • 測(cè)試和調(diào)試3周由于重用認(rèn)證模塊,代碼錯(cuò)誤和不一致有所減少
  • 部署2周

值得注意的是CodeOps的整個(gè)周期影響。它在整個(gè)過(guò)程中的多個(gè)節(jié)點(diǎn)為多個(gè)團(tuán)隊(duì)提升了生產(chǎn)力,不需要這些團(tuán)隊(duì)大幅改動(dòng)工作流程。

系統(tǒng)性代碼重用的好處

實(shí)施系統(tǒng)代碼重用帶來(lái)了幾個(gè)明顯的業(yè)務(wù)優(yōu)勢(shì),包括如下:

  • 增強(qiáng)靈活性通過(guò)允許開(kāi)發(fā)團(tuán)隊(duì)使用組織的代碼訪問(wèn)預(yù)認(rèn)證模塊的存儲(chǔ)庫(kù),他們可以定制代碼,并創(chuàng)建完全符合獨(dú)特業(yè)務(wù)需求的應(yīng)用程序。
  • 保證一致性系統(tǒng)代碼重用確保了應(yīng)用程序之間具有一致性。多個(gè)團(tuán)隊(duì)使用相同的認(rèn)證模塊可以最大限度地減少不一致性,并降低遇到錯(cuò)誤、安全漏洞或兼容問(wèn)題的風(fēng)險(xiǎn)。
  • 快學(xué)習(xí):有了系統(tǒng)代碼重用,開(kāi)發(fā)人員可以從團(tuán)隊(duì)成員和同事所做的工作中學(xué)習(xí)和完善。這創(chuàng)建了一個(gè)組織知識(shí)庫(kù),縮短了新團(tuán)隊(duì)成員的學(xué)習(xí)過(guò)程,并在組織內(nèi)打造一種倡導(dǎo)協(xié)作和創(chuàng)新的文化。
  • 降低風(fēng)險(xiǎn)經(jīng)過(guò)嚴(yán)格測(cè)試和認(rèn)證的代碼模塊是成熟可靠的,降低了開(kāi)發(fā)測(cè)試過(guò)程中或發(fā)布后出現(xiàn)關(guān)鍵安全或合規(guī)問(wèn)題的可能性。
  • 致力于創(chuàng)新通過(guò)將開(kāi)發(fā)團(tuán)隊(duì)從不斷處理重復(fù)的任務(wù)中解放出來(lái),系統(tǒng)代碼重用鼓勵(lì)他們將精力投入到令人興奮的創(chuàng)新。他們可以分配更多的時(shí)間和資源,以構(gòu)建獨(dú)特和有價(jià)值的功能,而且結(jié)果更易于預(yù)測(cè),同時(shí)縮短產(chǎn)品上市時(shí)間,以生成新的收入或節(jié)省成本。

一種更好的構(gòu)建方式

最終,擁抱系統(tǒng)代碼可重用性的CodeOps方法通過(guò)顯著加快交付速度、提升生產(chǎn)力以及在競(jìng)爭(zhēng)激烈的技術(shù)環(huán)境中促進(jìn)創(chuàng)新和協(xié)作,徹底改變自定義應(yīng)用程序開(kāi)發(fā)。新產(chǎn)品的構(gòu)建和創(chuàng)新技術(shù)有趣部分,這意味著利用CodeOps的組織不僅可以創(chuàng)造較之競(jìng)爭(zhēng)對(duì)手的優(yōu)勢(shì),還可以提升內(nèi)部團(tuán)隊(duì)的生產(chǎn)力和士氣。

原文標(biāo)題:CodeOps: Using LLMs and modular coding to accelerate development,作者:Anand Kulkarni


責(zé)任編輯:華軒 來(lái)源: 51CTO
相關(guān)推薦

2011-01-11 13:40:44

webcssdiv

2019-09-02 10:51:59

Python腳本語(yǔ)言程序員

2019-08-28 16:18:39

JavaScriptJS前端

2010-08-02 09:10:36

Flex模塊化

2017-02-13 18:46:38

Android模塊化組件化

2019-01-30 14:04:57

Fedora存儲(chǔ)庫(kù)

2010-08-02 08:54:53

Flex模塊化

2009-04-10 09:05:48

Windows 7微軟操作系統(tǒng)

2009-04-30 09:02:53

AcerAndroid開(kāi)發(fā)

2017-04-10 14:23:01

typescriptjavascriptwebpack

2013-08-20 18:39:34

JavaScript模requireJS

2013-08-20 18:18:55

CSS模塊化Normalize.c

2024-11-21 16:37:30

客戶端業(yè)務(wù)解耦框架

2015-12-04 10:09:55

Java 9模塊化發(fā)布

2014-04-22 10:19:40

objection模塊化開(kāi)發(fā)iOS

2013-08-20 15:31:18

前端模塊化

2017-05-18 10:23:55

模塊化開(kāi)發(fā)RequireJsJavascript

2020-09-17 10:30:21

前端模塊化組件

2017-07-11 11:02:03

APP模塊化架構(gòu)

2015-10-10 11:29:45

Java模塊化系統(tǒng)初探
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)