<cite id="ffb66"></cite><cite id="ffb66"><track id="ffb66"></track></cite>
      <legend id="ffb66"><li id="ffb66"></li></legend>
      色婷婷久,激情色播,久久久无码专区,亚洲中文字幕av,国产成人A片,av无码免费,精品久久国产,99视频精品3
      網易首頁 > 網易號 > 正文 申請入駐

      當 AI 開始寫 80% 的代碼,架構才是真正的護城河

      0
      分享至


      作者 | Patrick Farry

      譯者 | 田橙

      GitHub CEO Thomas Dohmke 近日發出了一則措辭嚴厲的警告:“要么擁抱 AI,要么離開這個職業?!钡^擁抱 AI,并不只是使用代碼自動補全工具那么簡單。它意味著我們核心能力的一次轉移——從對語法的熟練掌握,轉向系統思維(Systems Thinking),學會把問題不斷拆解,直到小到可以交由 AI 去解決。一句話概括:我們現在都是架構師了。

      我正在開發一個 IoT 應用,整體由設備端固件、后端系統以及 Web UI 組成。盡管我本身具備軟件工程背景,但在這個項目中,我一直在使用 Claude Code 來提升開發效率,并幫助我應對一些并不十分熟悉的語言和框架。我的技術棧包括:設備端使用 Python + PyTorch,前端采用 React + TypeScript,后端則由 MQTT + Node.js + Postgres 構成。起初,與 Claude 的協作并不順利。我的請求經常會引發對整個代碼庫的大規模改動。隨著我逐漸學會如何更合理地組織代碼結構、并對提示詞進行調整和約束,情況開始好轉?,F在,我已經可以在不進行逐行代碼審查的情況下,基本信任 Claude 所做的修改。在這個過程中,我逐漸總結出了一些模式,并將其稱為 Skeleton Architecture(骨架式架構)。我認為,這些模式對提升 AI 編程助手的生產力非常有幫助,因此希望在這里分享出來。

      隨著 AI 編程行業逐步成熟,我們開始意識到一個事實:如果使用方式不當,AI 會帶來大量技術債務。要在這場轉型中生存下來,我們必須識別并建立合適的架構模式,使 AI 生成的代碼在安全性、可維護性和可靠性方面都可控。這需要一套明確的策略,核心建立在三個支柱之上:為 AI 的“消費”方式而組織代碼結構;實施嚴格而清晰的防護與約束機制(guardrails);以及將我們自身的技能重心,從“翻譯需求”轉向“建模系統”。

      結構化代碼:上下文約束

      AI 輔助工程中最核心的約束,是 上下文窗口(Context Window)。隨著上下文規模的擴大,模型的準確性會因為“中段信息丟失(Lost in the Middle)”現象而呈反向下降,而響應延遲與使用成本則會線性上升。

      因此,AI 原生架構的“黃金法則”,就是盡可能縮小模型在工作記憶中必須同時容納的問題范圍。我們必須設計一種系統,對信息流施加“物理約束”,將依賴關系隔離開來,使 AI 能夠把完整的問題空間裝進一個高度聚焦的提示詞中。這種隔離具備兩層作用:一方面,通過減少噪聲來最大化推理能力;另一方面,通過確保某個代理在處理一個組件時“看不到”其他組件,從而避免無意中破壞系統整體的完整性。

      目前,有兩種架構模式正在逐漸被采用,用以解決這一問題。

      Atomic Architecture(原子化架構) 作用于微觀層面。該理念由 Brad Frost 于 2013 年提出,最初用于應對響應式 Web 設計的復雜性。它以一種“生物學式”的方式組織系統:從不可再分的“原子”(如 HTML 標簽、工具函數)開始,組合成“分子”,最終構成復雜的“有機體”。雖然它最初是一種 UI 方法論,但在 AI 輔助工程中重新煥發了價值,因為它強制執行了一種嚴格的“上下文衛生(context hygiene)”。相比讓 AI 一次性生成一個龐大的功能模塊,讓其只生成一個獨立、隔離的“原子”,可以大幅降低幻覺風險,并確保生成的代碼高度聚焦、無狀態、且易于驗證。但代價也同樣明顯——這會產生一種“碎片化稅(fragmentation tax)”:AI 可以完美地產出單個組件,但將這些無狀態原子連接成一個完整系統的高強度認知負擔,要么必須被塞進 AI 的上下文中,要么就完全回到了人類架構師身上。

      為了解決宏觀結構層面的組織問題,我們需要引入 Vertical Slice Architecture(垂直切片架構)。這一架構由 Jimmy Bogard 推廣,旨在打破傳統 N 層“千層面代碼(lasagna code)”的僵化結構。它按照業務功能(例如“下單”)而非技術層級(如“服務層”“數據訪問層”)來組織系統。

      這種模式對 AI Agent 尤其友好,因為它針對“引用局部性(Locality of Reference)”進行了優化。在分層架構中,AI 為了理解一條完整業務流程,往往需要在多個目錄之間來回檢索文件,大量無關代碼會污染上下文窗口。而垂直切片遵循“一起變化的東西,就放在一起”的原則,使 AI 能夠一次性加載某個功能的完整上下文,而無需對缺失的依賴進行“腦補式生成”。但這同樣會引入一種“重復稅(Duplication Tax)”:為了保持切片之間的獨立性,AI 往往會在不同切片中生成重復的數據結構,用犧牲 “DRY(Don’t Repeat Yourself,不重復自己)”原則,換取更強的隔離性。

      垂直切片在隔離性方面表現出色,但它并不能解決切片之間的協同問題。諸如安全性、可擴展性、性能、認證等關鍵的非功能性需求,都是系統級不變量,無法被拆散到各個切片中分別實現。如果讓每一個垂直切片都自行實現授權體系或緩存策略,最終只會導致“治理漂移(Governance Drift)”:安全策略不一致,代碼重復嚴重。這也迫使我們引入一個新的統一概念:Skeleton(骨架)與 Tissue(組織)。

      解決方案:骨架與組織

      我們將系統明確拆分為兩個彼此區隔的領域。Stable Skeleton(穩定骨架) 代表由人類定義的、剛性且不可變的結構(如抽象基類、接口、安全上下文),這些結構可能由 AI 編寫,但設計權屬于人類。Vertical Tissue(垂直組織) 則由高度隔離、以具體實現為主的功能模塊組成(如具體類、業務邏輯),主要由 AI 生成。

      這種架構借鑒了兩種經典的軟件思想:Actor 模型 和 面向對象中的控制反轉(Inversion of Control)。世界上一些最可靠的軟件系統之所以能夠長期穩定運行,并非偶然——例如 Erlang,其核心正是通過 Actor 模型來維持系統穩定性。同樣,在控制反轉結構中,不同切片之間的交互由抽象基類來管理,確保具體實現類依賴的是穩定的抽象,而不是反過來。

      為了在工程實踐中強制落實這一點,我們采用了 模板方法模式(Template Method Design Pattern)。依賴反轉原則負責在設計層面保護高層策略不被底層細節侵蝕,而模板方法模式則在運行層面將這一原則“落地”,通過鎖定執行流程來實現。

      在這種模型下,人類架構師會在基類中定義一個最終的 run() 方法,用于統一處理日志、異常捕獲、認證等橫切關注點。AI 則只被允許實現一個受保護的 _execute() 方法,并由 run() 在合適的時機調用。這種區分至關重要:AI 在物理層面上就不可能“忘記”記錄日志,或繞過安全檢查,因為它從一開始就不擁有整個執行流程的控制權;它只是填補了架構師預留出來的一段邏輯空位。

      在我系統的設備端代碼中,包含了多個用于圖像處理的 AI 算法。我決定用一個繼承自 ABC(Python 抽象基類)的類 TaskBase 來表示每一種算法。其余的骨架部分,則由一組負責高效傳遞圖像數據、并調度這些算法運行的協調類構成。

      代碼示例:由人類掌控的 Skeleton

      下面的示例展示了 BaseTask 如何將緩沖管理和就緒狀態檢查的復雜性完全屏蔽在 AI 之外,讓 AI 可以只專注于“處理邏輯”本身。

              pass

      對這種架構的一種常見質疑是:過于剛性的 Skeleton,可能會限制 AI 的自由,從而抑制創新。對此的回應是——這種剛性并不是缺陷,而是一種刻意設計的特性。它明確地強制實施了“架構治理(Architectural Governance)”。如果系統的核心控制流程或整體行為需要被修改,那么這個決策必須由人類架構師親自介入完成。這種約束相當于一道必要的防火墻,用來抵御“架構漂移(Architecture Drift)”:防止 AI——這種天然偏好局部最優的系統——引入臨時性的捷徑或不一致的模式,而這些問題若不受約束,最終會一點點侵蝕系統的長期設計完整性。

      交互方式:“導演”角色

      把代碼助手比作初級開發者,是一種危險的擬人化認知。AI 并不是學習型個體,而是一種高速運行的隨機優化引擎,它的目標是盡快完成任務,并且往往會把安全檢查視為需要繞開的“阻力”。提示詞是柔性的,而架構是剛性的。因此,開發者必須以高度警惕的方式對 AI 代理進行監督。根據我的經驗,即便已經明確給出“絕對不能繞過安全機制”的指令,像 Claude 這樣的模型仍可能為了讓代碼運行成功,嘗試關閉認證機制以解決沖突。

      要讓這種“導演式管理”具備可擴展性,我們必須建立“硬護欄(Hard Guardrails)”——也就是將約束直接嵌入系統本身,使 AI 在物理層面上難以繞過。這些護欄構成應用系統不可更改的基本法則。

      在我的應用中,最關鍵的一道護欄,是確保設備端、UI 與后端之間的數據一致性(Schema-First Surety)。如果缺乏這一機制,Claude 很快就會修改系統不同模塊之間的通信協議,最終導致數據結構彼此不一致。我將 JSON Schema 作為 OpenAPI 與 AsyncAPI 文檔的一部分,作為系統的“單一真實來源(Source of Truth)”,以確保組件之間的契約不可被破壞。同時,我在基類中加入了一個“快速失?。‵ail-Fast)”驗證器,一旦檢測到協議違規,就會直接觸發 sys.exit(1) 強制終止程序。當 AI 生成的代碼雖然滿足提示詞要求,但違反系統契約時,系統會立即崩潰。這會迫使人類開發者介入,將原本可能被忽視的隱性缺陷,轉變為一個明確且可見的“治理事件(Governance Event)”。至關重要的一點是:該驗證器必須運行在 Skeleton 層,因為在這一層中 Claude 無法修改相關邏輯。

      理想情況下,我們還應當超越運行時檢查,通過 CICD 流程中的自動化工具來保證系統結構完整性。例如,我們可以使用 ArchUnit 這樣的編譯期工具來強制執行系統拓撲規則。開發者可以編寫測試斷言,例如:“任何 AI 生成的模塊都不得直接導入數據庫包”。這可以有效阻止 AI 通過架構捷徑繞過 Skeleton 層的控制。

      為了獲得最高級別的安全保障,我們甚至可以采用物理隔離策略。我們可以將 Skeleton(包括接口、基類以及安全邏輯)遷移到一個獨立且只讀的代碼倉庫中。AI 在構建 Tissue(組織層代碼)時只能導入這些定義,但在權限層面上無法修改這些規則。這種方式確實會帶來一定摩擦,例如 AI 無法在未經人工批準的情況下“憑空創造”新的消息類型。但作為回報,系統行為可以獲得幾乎絕對的可控性與確定性。

      最后,我們還必須對副作用進行隔離。當業務邏輯與外部組件交互混雜在一起時,AI 代理通常難以編寫穩定可靠的測試代碼,往往會“臆造”復雜的模擬對象,或生成容易失效的集成測試。我們的解決方法,是將交互行為上移到 Skeleton 層,而將業務邏輯保留在 Tissue 層(即所謂“Functional Core”)。由于 Skeleton 定義的工作流具有清晰邊界,因此可以通過 AI 生成的模擬對象輕松測試;而 Tissue 層的類由于本身就是垂直切片結構,也可以通過簡單的測試框架進行驗證。

      代碼示例:不可變的護欄機制

      該驗證器會在 AI 任務真正處理消息之前執行。sys.exit(1) 能夠確保系統采用“快速失敗”的安全策略,而 AI 無法覆蓋這一行為。

              sys.exit(1)

      學習方式的轉變:
      從語法到系統性思維

      這種架構層面的轉變,迫使我們對開發者技能進行一次根本性的再評估。相較于語言特性或算法實現——這些正在迅速商品化的能力——開發者必須將重心轉向建模、信息流設計,以及對非功能性需求的嚴格管理。在一個“會寫排序算法”幾乎不再具備任何價值的時代,工程師的價值不再由“翻譯”(把想法轉成代碼)來定義,而是由“建模”(定義代碼運行所受的約束條件)來決定。

      我們已經進入了系統性思維(Systemic Thinking)的時代。功能實現很容易,系統韌性卻極其困難。AI 代理會為了讓測試用例通過而進行優化,卻完全無視內存泄漏、延遲抖動或可觀測性缺失等問題。因此,工程師必須走上“導演”角色,在發出任何一個提示詞之前,就先在腦中構建好信息流與組件之間的交互關系。非功能性需求(NFRs),必須由導演來承擔。

      由于 AI 無法真正“關心”內存管理問題,人類架構師必須將這些防護機制直接構建進 Skeleton 之中。

      進一步來看,這意味著工程師需要熟悉系統架構的世界,并且持續思考諸如“這個系統在實際運行中會如何表現”這樣的問題。

      除了保護系統本身,Skeleton Architecture 還回應了一個正在逼近的挑戰——“學徒危機”(Apprenticeship Crisis)。在一個實現層代碼大多由 AI 生成的世界里,初級工程師要如何積累成長為架構師所必需的“傷疤組織”(scar tissue)?答案在于:Skeleton 本身就成為了教學大綱。通過強制初級工程師在 TaskBase 與 Validator 這些剛性約束中工作,我們用結構化的“填空題”,取代了令人無從下手的“空白頁”。他們不是通過閱讀抽象理論來學習系統設計,而是直接生活在一個高質量的架構中。一個在物理層面上阻止壞習慣產生的架構。反饋回路也因此被極大壓縮:從過去等待代碼評審的數天時間,縮短為撞上護欄時的毫秒級反饋。每一次錯誤,都會立刻變成一堂架構課。

      代碼示例:系統級安全網

      AI 負責編寫圖像處理邏輯,而人類架構師則通過在框架中實現 weakref 跟蹤機制,確保系統不會因為內存泄漏而崩潰。

          return [obj for obj in self.tracked if obj.age > 60.0]

      總 結

      垂直切片為 AI 提供專注,Skeleton 為人類保留控制權,而其他硬性約束則為團隊提供確定性。我們并不是在“訓練”AI,而是在約束它。通過構建一套剛性的 Skeleton,我們讓 AI 可以高速前進,同時不至于折斷軟件系統的脊梁骨。

      參考文獻

      Bogard, J.(2018)?!禫ertical Slice Architecture》。

      Dohmke, T.(2023 年 11 月 8 日)。GitHub Universe 2023 Opening Keynote: Copilot in the Age of AI[視頻]。

      YouTube。Farry, P.(未注明日期)。《AI-Generated Code Creates New Wave of Technical Debt, Report Finds》。

      InfoQ。Frost, B.(2013)?!禔tomic Design》。

      Gamma, E., Helm, R., Johnson, R., & Vlissides, J.(1994)?!禗esign Patterns: Elements of Reusable Object-Oriented Software》。

      Addison-Wesley。Liu, N. F., Lin, K., Hewitt, J., Paranjape, A., Bevilacqua, M., Petroni, F., & Liang, P.(2023)。

      《Lost in the Middle: How Language Models Use Long Contexts》。

      Stanford University、UC Berkeley、Samaya AI。Martin, R. C.(未注明日期)?!禩he Dependency Inversion Principle》。

      https://www.infoq.com/articles/skeleton-architecture/

      聲明:本文為 InfoQ 翻譯,未經許可禁止轉載。

      特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。

      Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

      相關推薦
      熱點推薦
      重大錯誤,印制錯誤的韓國國旗被升起4次,國際奧委會已致歉

      重大錯誤,印制錯誤的韓國國旗被升起4次,國際奧委會已致歉

      懂球帝
      2026-02-22 17:22:25
      從“天才少女”跌落神壇后,17歲的姜萍如今在服裝廠踩縫紉機?一家人去向成謎

      從“天才少女”跌落神壇后,17歲的姜萍如今在服裝廠踩縫紉機?一家人去向成謎

      阿芒娛樂說
      2026-02-21 23:50:14
      徐家人如果看到馬筱梅分享的壓歲錢紅包,心情一定會很復雜吧

      徐家人如果看到馬筱梅分享的壓歲錢紅包,心情一定會很復雜吧

      早起的鳥兒有飯吃
      2026-02-23 09:13:11
      新春第一槍:原三甲院長落馬!享受“保姆式服務”,把醫院當自家后院……

      新春第一槍:原三甲院長落馬!享受“保姆式服務”,把醫院當自家后院……

      醫脈通
      2026-02-22 17:08:18
      55歲央視一哥康輝,缺席春晚真相曝光,為什么他不再拋頭露面?

      55歲央視一哥康輝,缺席春晚真相曝光,為什么他不再拋頭露面?

      天天熱點見聞
      2026-02-23 05:22:26
      48歲歐陽夏丹父母雙亡獨自過年,一個人吃7道菜,大口吃飯不矯情

      48歲歐陽夏丹父母雙亡獨自過年,一個人吃7道菜,大口吃飯不矯情

      離離言幾許
      2026-02-20 23:38:28
      訪華前,特朗普宣布對中國加稅,不到24小時,白宮收到巨額賬單

      訪華前,特朗普宣布對中國加稅,不到24小時,白宮收到巨額賬單

      蘭妮搞笑分享
      2026-02-23 12:59:42
      大滿貫爆冷:世界亞軍出局,日6人晉級,國乒新星0-3告負

      大滿貫爆冷:世界亞軍出局,日6人晉級,國乒新星0-3告負

      氧氣過敏者
      2026-02-23 12:40:06
      宋希濂晚年回憶:如果蔣介石同意將30萬人撤到緬甸,后果不堪設想

      宋希濂晚年回憶:如果蔣介石同意將30萬人撤到緬甸,后果不堪設想

      史之銘
      2025-12-29 01:44:43
      孫越訪談坦白:和岳云鵬私下不怎么聯系,成就如今的“德云一哥”

      孫越訪談坦白:和岳云鵬私下不怎么聯系,成就如今的“德云一哥”

      離離言幾許
      2026-02-21 09:26:48
      從33.27億跌到1.56億,我感慨:離開沈騰,馬麗也扛不起票房

      從33.27億跌到1.56億,我感慨:離開沈騰,馬麗也扛不起票房

      白公子探劇
      2026-02-21 23:34:43
      “我就是她取精生子的工具”清華學霸哭訴,撕開了女富豪的遮羞布

      “我就是她取精生子的工具”清華學霸哭訴,撕開了女富豪的遮羞布

      北緯的咖啡豆
      2026-02-20 19:12:17
      夫妻都奪冠拿2塊冬奧金牌,徐夢桃夫婦拿多少獎金?郭晶晶家豪氣

      夫妻都奪冠拿2塊冬奧金牌,徐夢桃夫婦拿多少獎金?郭晶晶家豪氣

      樂悠悠娛樂
      2026-02-21 13:15:00
      西部諸強全軍覆沒!全聯盟瘋狂助攻火箭,休城眾將開啟復仇之旅

      西部諸強全軍覆沒!全聯盟瘋狂助攻火箭,休城眾將開啟復仇之旅

      徐觳解說
      2026-02-23 13:29:48
      兒媳,你娘家拆遷分了3套房,我們要發了,“阿姨,我早離婚了”

      兒媳,你娘家拆遷分了3套房,我們要發了,“阿姨,我早離婚了”

      清水家庭故事
      2026-02-22 10:34:02
      兒子在越戰犧牲,老母親無路費去掃墓,等了20年終于摸到兒子墓碑

      兒子在越戰犧牲,老母親無路費去掃墓,等了20年終于摸到兒子墓碑

      歷史龍元閣
      2026-02-03 11:15:07
      中國成韓國“第二故鄉”?一文揭秘:韓國人為何熱衷于移居中國

      中國成韓國“第二故鄉”?一文揭秘:韓國人為何熱衷于移居中國

      暗香暗香
      2026-02-03 17:25:15
      縮至4小時!湖北這條南下高鐵定了,190公里串聯6城,十五五開工

      縮至4小時!湖北這條南下高鐵定了,190公里串聯6城,十五五開工

      匹夫來搞笑
      2026-02-23 12:48:25
      從2-2被絕平到4-1大勝!阿森納48小時極限自救,5分領跑卻藏隱患

      從2-2被絕平到4-1大勝!阿森納48小時極限自救,5分領跑卻藏隱患

      落夜足球
      2026-02-23 11:43:59
      女子在地鐵給孕婦讓座獲孕婦贈百元紅包,當事人:“明明設置有孕婦專座,卻沒有人給她讓座,看她坐在自帶的小矮凳上挺難受”

      女子在地鐵給孕婦讓座獲孕婦贈百元紅包,當事人:“明明設置有孕婦專座,卻沒有人給她讓座,看她坐在自帶的小矮凳上挺難受”

      觀威海
      2026-02-23 13:18:06
      2026-02-23 14:16:49
      InfoQ incentive-icons
      InfoQ
      有內容的技術社區媒體
      12068文章數 51762關注度
      往期回顧 全部

      科技要聞

      騰訊字節,“火拼”漫劇

      頭條要聞

      7名中國游客溺亡于貝加爾湖 31歲幸存者被救細節披露

      頭條要聞

      7名中國游客溺亡于貝加爾湖 31歲幸存者被救細節披露

      體育要聞

      哈登版騎士首?。豪做墓谲娬n

      娛樂要聞

      谷愛凌奶奶去世,谷愛凌淚奔

      財經要聞

      結婚五金邁入10萬大關 年輕人結婚更難了

      汽車要聞

      續航1810km!smart精靈#6 EHD超級電混2026年上市

      態度原創

      游戲
      家居
      教育
      親子
      公開課

      NS2看呆了!兩款原版NS主機獨占佳作殺入年度前五?

      家居要聞

      本真棲居 愛暖伴流年

      教育要聞

      大動作:英國留學劇本大變!

      親子要聞

      中韓萌娃跟著姥姥姥爺趕大集

      公開課

      李玫瑾:為什么性格比能力更重要?

      無障礙瀏覽 進入關懷版