軟體開發的起點:No Code 與 Low Code 的誕生
在生成式人工智慧(AI)成為全球焦點之前,軟體開發領域早已引入了「no code」(無程式碼)與「low code」(低程式碼)的概念。這些工具的核心目標是降低軟體開發的技術門檻,讓即使不具備深厚程式設計背景的使用者,也能透過直觀的視覺化介面或少量程式碼,快速建構應用程式或自動化流程。它們旨在提升開發效率,減少重複性的手動編碼工作,使開發者能將更多精力投入於業務邏輯的實現與創新。這些框架的推廣,反映了業界對更快速、更普及的數位化解決方案的需求。
生成式 AI 的影響:Vibe Coding 的興起
隨後,生成式AI的興起為軟體開發領域帶來了革命性的影響。程式碼本身具備明確的邏輯結構與嚴謹的規則,這使得大量的開源程式碼成為訓練大型語言模型(LLMs)的優質資料來源。AI模型透過學習這些程式碼的模式、語法及解決問題的慣例,逐步掌握了程式設計的邏輯。因此,專門用於程式碼生成與輔助開發的AI工具應運而生,例如GitHub Copilot、Cursor、Windsurf等。這些強大的AI程式模型不僅能根據人類的自然語言描述生成程式碼片段,更能協助進行除錯、效能優化乃至程式碼重構。
這股趨勢催生了「vibe coding」(意境式編碼)的概念。不同於傳統逐行編碼,vibe coding強調開發者依賴AI生成的建議與片段,透過引導、調整與組合AI輸出來完成開發。這模式更像與AI協作的導演或雕塑家,引導AI生成素材並加以修飾組裝。這種模式更趨向人與AI協作,開發者藉由捕捉程式碼「意圖」或「氛圍」,實現快速迭代。
傳統模式是否會被取代?AI 時代的開發挑戰
那麼,這是否意味著傳統的軟體開發模式,甚至no code/low code框架將被完全取代?筆者認為情況並非如此。儘管生成式AI顯著提升了程式碼生成的效率,但它本質上是一個工具,仍需要人類的專業判斷、引導、驗證與整合。複雜的業務邏輯、整體的系統架構設計、效能最佳化以及關鍵的安全性考量等層面,往往難以單純依賴AI生成來完善解決。同時,no code/low code工具在特定情境下,尤其是需要快速建構原型或處理標準化、流程化的任務時,依然展現出其獨特的效率與便利性。正因為各種開發工具各有其適用情境與優勢,我們開始探索如何結合不同方法的長處,以應對實際開發中的挑戰。
混合式開發的實踐:以 AI 民主化為核心
以筆者近期參與的部門AI數位轉型專案為例,我們面臨著一個普遍性的挑戰:即相關開發人力資源的有限,以及技術開發人員與具備豐富領域知識的業務專家之間的溝通與協作效率問題。在傳統開發模式下,業務需求從提出到最終實現往往需要漫長的轉化與溝通過程,這不僅耗時,也容易產生理解上的偏差。單純依賴現有的開發人力難以迅速滿足業務部門不斷湧現的數位化需求。為了解決這一困境,我們正在探索一種「混合式」開發模式,其核心理念是推動「AI 民主化」。這種模式不僅能解決開發人力不足的問題,更能打破技術壁壘,讓最了解業務的人也能直接參與到解決方案的建構中。
具體的實踐方式是:我們首先搭建一個基於no-code/low-code的AI系統開發框架,例如運用Langflow、Flowise或n8n等工具。這些框架的模組化特性提供了高度的靈活性。接著,我們將整個系統拆解為一系列功能獨立的小單元,並明確定義每個單元的輸入與輸出規格。這些獨立的開發任務將指派予具備專業領域知識的同仁負責。他們可以運用自己習慣的各種「vibe coding」工具與方法來開發這些小單元。
值得一提的是,近期興起的Model Context Protocol (MCP) 技術非常適合用於將這些小單元封裝成獨立的服務,作為融合業務知識的微小元件。這些開發完成的微小元件隨後可以便捷地整合至我們預先搭建的no-code/low-code框架中。我們認識到Vibe coding在開發小型、獨立功能時效率極高,但若用於從零開始建構大型、複雜的系統框架則可能面臨挑戰。因此,透過讓同仁以Vibe coding開發具特定功能的微小元件,再將其有紀律地整合至no-code/low-code框架的結構中,我們得以在確保系統架構嚴謹性的同時,實現開發過程的靈活性與效率提升,達成開發效率與系統穩定性的雙贏目標。
結論:軟體開發範式的持續演進與混合模式的成效
綜上所述,從no code/low code到vibe coding,軟體開發的範式正持續演進。生成式AI無疑為開發者提供了強大的新工具,加速了開發流程並提升了效率。然而,這並不意味著傳統開發或no code/low code將被淘汰。相反地,透過巧妙地結合這些不同的方法,我們可以建構出更具彈性、更有效率的開發流程,並賦予更多具備領域知識的非技術人員參與數位化轉型的能力。