蒼時弦也
蒼時弦也
資深軟體工程師
發表於

連載介紹 - Clean Architecture in TypeScript

這篇文章是 Clean Architecture in TypeScript 系列的一部分,你可以透過 Leanpub 提前閱讀內容。

寫完 Clean Architecture in Go 系列後,原本預定是要探討 Ruby 相關的主題,然而剛好遇上大量的 AI(人工智慧)應用出現,加上手邊正好使用 TypeScript 做了一些實驗,才有了這一系列的出現。

意外

AI 技術的發展速度遠比我預期還快,最初打算以 AI Agent(代理人)為主軸,以傳統方式進行開發,搭配 Global Game Jam 2025 - 以 Clean Architecture 思考 AI Agent 的導入這篇文章所提及的經驗。

然而,在 2025 年我注意到了讓我認為可以使用 AI Codegen(程式碼生成)的契機,因此在身為工程師,我在 2025 年如何用 AI 寫程式這篇文章提及使用的心得,以及這系列會採用跟以往不同的開發方式。

最終,這系列將會呈現兩種不同的 AI 應用情境,開發的方式轉變,以及軟體使用方式的轉變。

開發的變化

直到 2025 上半年,我認為最大的改變是軟體工程師從「打字」這件事情被解放出來,我們不再需要耗費大量的時間跟精力,從腦中提取知識轉變成可以使用的程式碼。同樣的,也不再被大量程式語言、套件的文件束縛,這一切都被 LLM(大型語言模型)提供的文字生成功能取代。

是的,這並不代表軟體工程師失去價值。而是我們回歸到「工程」這件事情,至少我們會以 Engineer(工程師)自稱,而不是 Programmer(程式設計師)或者 Coder(碼農)

即使上述三者都能進行軟體開發,然而工程師的角色是有系統、仔細分析的在建構軟體,而不單純只是產生程式碼,或者依照需求設計一些程式(Program)也因此,有一部分人認為,在未來只會有 Architect(架構師)這樣的角色存在,或者另一種更加跨職能的角色。

不論如何,在未來我們需要思考的是工程層面的問題,這也將會這這系列會專注探討的問題。

軟體的變化

除了開發方式的變化,軟體使用的方式也會有很大的不同,這種差異主要表現在使用者體驗(UX,User Experience)的變化。

過去使用者體驗努力的在人機互動(HCI,Human–computer interaction)上努力,以軟體來說就是設計容易使用的使用者介面(UI,User Interface)讓使用者可以更好的使用軟體。

即使如此,我們仍然為了學習怎麼使用軟體頭痛,一個軟體中竟然有上百的快速鍵(Shortcut)要記憶,想要高效的完成工作必須記住 30% 以上的快速鍵,或者各種功能。然而,在未來我們只需要透過文字、語音告訴 AI Agent 我們想做的事情,就能共自動規劃選擇那些我們可能永遠不會知道的功能,解決當下我們需要處理的任務。

若要形容未來這個時代,也許用「知識的解放」說不定更加合適。