Society

九七式戰機的教訓:AI Coding 狂潮下,台灣軟體業別重蹈覆轍?

Editorial TeamMarch 07, 20265 min read
九七式戰機的教訓:AI Coding 狂潮下,台灣軟體業別重蹈覆轍?

作者與來源揭露

作者
Editorial Team
審核
由 CULTIVATE 編輯團隊完成最終審閱
生成模型
google/gemma-3-27b-it:free
主要來源
SYSTEM_CLI

本文可能包含 AI 輔助撰寫,並經人工編輯審核。 編輯政策 · 服務條款

AI 輔助編碼工具如雨後春筍般湧現,看似為台灣軟體業帶來了效率提升的曙光。但回顧二戰時期日本海軍的九七式戰機,其過度依賴既有優勢、忽視技術變革的教訓,警示我們在擁抱 AI 的同時,必須保持批判性思考,避免陷入技術迷思,才能真正提升競爭力。

上週我看到一則新聞,某家台灣新創公司宣稱,導入最新的 AI 編碼工具後,開發效率提升了 30%。30%!這個數字聽起來很誘人,彷彿按下加速鍵,就能在激烈的市場競爭中脫穎而出。但老實說,我有點不安。這讓我想到一個歷史故事:九七式戰機。

二戰時期,九七式戰機是日本海軍的主力艦載機。它在初期表現出色,憑藉優異的機動性和射程,在太平洋戰場上取得了不少勝利。但日本海軍過於自信,認為九七式戰機已經足夠應付任何挑戰,便放緩了新機的研發速度。結果,當美軍的格魯曼 F6F 野貓戰機和 F4U 海盜戰機出現後,九七式戰機的優勢蕩然無存,最終被徹底淘汰。

這聽起來跟現在的 AI 編碼工具有什麼關係?關係可大了。現在的 AI 編碼工具,就像當年的九七式戰機,它們的確能提升效率,但絕不是萬能的。過度依賴這些工具,忽視基礎技術的積累和創新,只會讓我們陷入技術迷思,最終被時代淘汰。

現在市面上充斥著各種 AI 編碼工具,像是 GitHub Copilot、Gemini Code Assist、Claude Code,甚至更進階的 Antigravity 等 agentic 框架。這些工具各有千秋,但它們的核心都是利用大型語言模型 (LLM) 來輔助開發者編碼。

The Toolset: Gemini Code Assist (目前以 Gemini 1.5 Pro 為基礎) 是一個 IDE 整合的工具,提供程式碼生成、錯誤偵錯、程式碼解釋等功能。它與 GitHub Copilot 最大的不同在於,Gemini 1.5 Pro 擁有更大的上下文視窗 (context window),能夠理解更廣泛的程式碼庫,提供更精準的建議。Antigravity 則是一個更進階的 agentic 框架,它能夠自動化執行多個任務,例如程式碼審查、測試、部署等。

Key Features: Gemini Code Assist 的核心功能包括:程式碼自動完成、程式碼生成、程式碼解釋、錯誤偵錯、程式碼轉換。Antigravity 則提供:自動化程式碼審查、自動化測試、自動化部署、自動化文件生成。

Real-World Use Case: 假設我們需要重構一個老舊的 Python 類別。傳統的做法是,人工分析程式碼,找出需要修改的部分,然後逐行修改。這個過程既耗時又容易出錯。使用 Gemini Code Assist,我們可以讓它分析整個類別,找出潛在的問題,並提供重構建議。更進一步,使用 Antigravity,我們可以讓它自動生成測試案例,確保重構後的程式碼功能正常。

Prompt Engineering Tips: 要讓這些工具發揮最大的效用,prompt engineering 至關重要。不要只是簡單地問「幫我寫一個排序演算法」。要提供更詳細的資訊,例如:「請用 Python 寫一個快速排序演算法,並加入註解說明每個步驟。」對於 Antigravity 這樣的 agentic 框架,更需要明確定義任務目標和限制條件。

Limitations: 這些工具並非完美無缺。它們可能會產生幻覺 (hallucinations),生成錯誤或無意義的程式碼。它們的上下文視窗也有限制,無法理解過於複雜的程式碼庫。此外,它們對某些程式語言的支持可能不夠完善。更重要的是,它們無法取代人類的思考和判斷。

Release Intel: 最近 Gemini 1.5 Pro 釋出了更大的上下文視窗,從 128K tokens 提升到 1M tokens,甚至可以測試到 2M tokens。這意味著 Gemini Code Assist 能夠理解更大的程式碼庫,提供更精準的建議。此外,Gemini 團隊也推出了新的 agentic capabilities,讓 Gemini 能夠自動化執行多個任務。

How-to-Use: 要使用更大的上下文視窗,需要在 Gemini API 中設定 context_window 參數。例如:gemini.generate_content(model="gemini-1.5-pro-latest", context_window=1024000, prompt="...")。要使用新的 agentic capabilities,需要使用 Gemini API 的 agent 模組。

Pro Tips: 可以利用 Gemini 的「程式碼搜尋」功能,快速找到特定程式碼片段。例如,你可以搜尋「Python 讀取 CSV 檔案」,Gemini 會自動找到相關的程式碼範例。

New Use Cases: 利用 Gemini 的 agentic capabilities,我們可以建立一個自動化的 PR 審查系統。這個系統可以自動檢查程式碼風格、潛在的錯誤、安全漏洞等,並提供修改建議。

但等等,這一切的效率提升,真的能讓我們在軟體業中佔據優勢嗎?我認為,答案是否定的。如果我們只是把 AI 編碼工具當作一種「速成法」,忽視了基礎技術的積累和創新,最終只會成為技術的奴隸。

就像當年的九七式戰機一樣,AI 編碼工具只是一種工具,它們的價值取決於我們如何使用它們。我們需要保持批判性思考,不斷學習新的技術,才能真正提升競爭力。台灣軟體業不能重蹈覆轍,不能過度依賴 AI 編碼工具,而忽視了自身的創新能力。

這不是一個技術問題,而是一個戰略問題。一個關於我們如何應對未來挑戰的戰略問題。


🛠️ CULTIVATE Recommended Tools | 精選工具推薦

  • Codecademy: Learn Python and Data Science interactively from scratch.
  • Poe: Access all top AI models (GPT-4, Claude 3, Gemini) in one place.

Disclosure: CULTIVATE may earn a commission if you purchase through these links.

Related Stories