程式設計基礎篇 · 樹與圖:AI 的主場
樹:Coding Agent 眼裡全是它
前面幾課的收納方式都是「一排排」的,這一課換個維度:一層套一層的收納。衣櫃裡有格子,格子裡有盒子,盒子裡有袋子——這種「層級 + 包含」的收納方式,在程式設計世界叫「樹」。而 Coding Agent 抬眼望去,你的專案裡全是樹。
一物三看 · 同一個專案,三棵樹
假設你請 AI 幫你做一個「奶茶店小程式」。下面三個標籤頁,分別是這個專案的檔案目錄、一筆訂單的 JSON 資料、點單頁的網頁 DOM——三樣東西看著完全不同,請你點選帶箭頭的節點展開收起,留意一件事:它們的形狀看起來是不是一模一樣?都是一個根往下分叉。
根:最頂上那個,全樹只有一個
父 / 子:上一層是父,展開出來的是子
葉子:再也展不開的末端節點
只要有「層級 + 包含」關係,它就是樹。資料夾包含檔案、訂單包含商品列表、頁面包含卡片包含按鈕——收納邏輯完全一樣。所以 Agent 學會「讀樹」這一門手藝,就能同時看懂你的專案結構、API 返回的資料和整個網頁。順便記三個術語:最頂上的叫根,有孩子的叫父節點,沒孩子的末端叫葉子。就這三個,夠用一輩子。
重頭戲 · 一行程式碼變成一棵樹
樹最厲害的一次出場,是在程式碼本身。下面這行算總價的程式碼,在你眼裡是一串文字,在 Coding Agent 眼裡是一棵語法樹(AST)。點「解析」,看它自下而上長出來——留意每一步高亮的程式碼片段,和樹上新長出的節點是怎麼對應的。
total=price*qty+fee
這行程式碼的意思:總價 = 單價 × 數量 + 配送費。點下面的「解析」,看看 Agent 是怎麼讀它的。
動畫約 5 秒,自下而上長出一棵樹
這就是 Coding Agent 改程式碼精準的秘密。你說「把乘號右邊的變數改成 quantity」,Agent 不是在一堆文字裡搜「乘號」兩個字——它在樹上先找到
* 節點,再取它的右孩子,指哪打哪。改完再把樹「列印」回文字,一個空格都不會錯位。重新命名變數、抽取函式、批次重構,靠的全是在這棵樹上做手術,而不是碰運氣的文字替換。
這跟 AI 有什麼關係?
Agent 讀專案 = 從根遍歷檔案樹
你把專案丟給 Coding Agent,它做的第一件事就是從根目錄出發,一層層展開子資料夾——和你剛才點開「奶茶店小程式」目錄的動作一模一樣。它先看樹的形狀瞭解專案骨架,再挑幾片關鍵的「葉子」細讀。
JSON 是 API 世界的通用樹
你呼叫大模型 API 時發的 message list、RAG 檢索回來的資料、Agent 之間傳的任務,幾乎全打包成 JSON——因為它是一棵用文字寫出來的樹,任何程式都能一層層拆開讀。看懂樹,就看懂了 AI 世界一大半的資料。
✅ 這一課想和你分享的
- 層級即樹:只要有「一層套一層」的包含關係,就是樹——檔案目錄、JSON、DOM 全是
- 三個術語:最頂上叫根,有孩子的叫父節點,末端叫葉子
- AST 是 AI 精確改程式碼的地圖:Agent 看的不是文字,是語法樹,所以能指哪打哪
- Agent 讀專案就是遍歷檔案樹:從根出發一層層展開,先看骨架再讀葉子
- JSON 是 API 世界的通用樹:AI 世界的資料交換,大半靠這棵「文字樹」