前言
--
你盼世界,我盼望你無 bug。Hello 大家好!我是霖呆呆。
最近我越來越明顯地感受到一件事:如果一個前端同學的能力邊界還只停留在「把頁面寫出來」,那職業天花板真的會比以前來得更快。
這不是在販賣焦慮哈。前端當然還是非常重要,互動、體驗、視覺化、工程化、效能優化,這些都不是誰順手就能取代的。但問題在於,今天的產品形態已經不是前幾年那種「後端給介面,前端去消費」就能很舒服地跑完整個閉環了。
隨著 AI 發展,開發這件事正在發生一個很明顯的變化:不是單純誰更會寫程式了,而是一個開發者能參與、能負責、能交付的部分,正在變得越來越多。以前很多必須拆給不同角色協作完成的事,現在一個人借助 AI 和成熟工具鏈,也能更快地串起來。也正因為這樣,一些公司對前端的期待,也不只是「把頁面寫出來」這麼簡單了。
但同時,它也會給你造成一種你很強的幻覺,因為聊聊天,一行程式碼不敲,就把功能全實現了。

問題也恰恰在這裡,AI 對開發者最大的影響,不是讓學習變得不重要了,反而是把「基礎是否扎實」這件事放得更大了。你可以借助它更快完成原型、更快試錯、更快推進產品,但如果你自己不理解執行環境、API、資料庫、渲染鏈路和 AI 呼叫背後的邏輯,那很多成果其實只是「看起來做出來了」。
所以我自己現在會很明確地建議很多前端同學去補全端能力,也建議儘早接觸 AI 開發。
這篇文章我們不深入聊某項技術,而是討論一份能落到學習動作上的手冊:為什麼值得轉、先補哪些、為什麼我建議你先學 Node.js、Next/Nuxt、PostgreSQL、Prisma,以及 AI 開發到底該補什麼。
看完這篇文章你可以收穫:
先說個大前提,我不是在說「所有前端都必須轉後端」,也不是在說「以後只要全端,不要前端」。
我真正想表達的是:前端同學最好別把自己長期鎖死在純頁面層。
一方面,框架本身就在把前後端邊界往中間拉。像 Next.js 官方現在就直接把自己定義成用 React 建構 full-stack web applications 的框架;Nuxt 官方也明確在講可以用它的 server framework 建構 full-stack applications。也就是說,生態本身就在鼓勵你別只停在瀏覽器那半邊。
另一方面,AI 又把這個趨勢推得更猛了,這點我就不再重複贅述了。
還有就是給大家看幾張 Boss 上新鮮的、真實的任職要求:



所以前端為什麼要轉全端?因為未來更值錢的角色,不是「只會切圖的人」,也不是「只會寫介面的人」,而是那個能把產品需求、使用者體驗、伺服器端能力、資料結構、AI 能力一起拉通的人。
咱如果能自己把一個 MVP 從 0 做到上線,和只能把頁面部分做完,市場上的議價能力可能也會提升一個量級。
很多人一聽「轉全端」,腦子裡立刻冒出一種恐怖畫面:
前端、後端、資料庫、維運、AI、演算法、雲原生、訊息佇列、監控、安全,我全都要!
好吧,這種學法通常的結果就是:學了很多名詞,專案還是起不來 😅
我前段時間讀《福格行為模型》的時候,裡面有句話我還挺有共鳴的:
從你想要改變的地方開始,逐漸讓自己感受到成功。接著你只需要相信這個過程,期待改變發生。
人要改變,別一上來就盯著那個特別遠的大目標,而是要先從你真正能開始的地方動起來,讓自己不斷感受到「我做到了」。等你有了這種正回饋,後面的改變才更容易持續發生。
前端轉全端其實也一樣。別一上來就想著什麼後端、資料庫、維運、AI、部署全給它啃完,這樣大概率學兩週就開始懷疑人生了。
更穩的方式反而是,先補最靠近你當前工作的那一圈能力。比如先搞懂 Node.js 伺服器端到底是怎麼跑起來的,先能自己寫幾個像樣的介面,先把資料庫最基礎的增刪改查和表關係捋順,先把 Next.js / Nuxt 裡的伺服器端能力真正用起來。
你每補上一塊, 都會明顯感覺到自己能獨立完成的事情變多了,這種「能做成」的回饋,本身就會推著你繼續往前走。
所以比較合理的路徑不是「無限擴科」,而是先圍著「能獨立做完整產品閉環」去補。
我們可以先問自己一個問題:
如果現在讓我單獨做一個帶登入、列表、詳情、支付、後台管理、AI 助理的小產品,我卡在哪?
大多數前端同學卡住的地方,無非就是這幾層:
所以咱真正要補的,不是「所有後端知識」,而是「做產品閉環時最常碰到的那一圈能力」。
如果你本來就是前端,第一門後端語言選 Node.js,遷移成本通常最低。
當然 Node.js 並不是在所有場景裡都無敵,而是因為它對前端同學太友好了。語言還是 JavaScript / TypeScript,非同步模型你多少有點熟,套件管理、模組化、工程化思路也更接近你原來的世界。你不是從零換腦,而是在原有認知上加伺服器那半張地圖。
咱可以在這個階段補上這些關鍵理解:
我感覺 Node.js 對前端同學最大的價值,不只是「你也能寫介面了」,而是它讓你第一次真正從伺服器端視角理解產品鏈路。
我們一旦跨過這道坎,後面再去學 Go、Java、Python,都會比完全沒後端經驗時順很多。因為我們補的是後端思維,不只是某門語言的語法。
因為它們能讓你先在熟悉的框架語境裡練完整閉環。
Next.js 官方文件現在寫得很直接,它就是用來建構 full-stack web applications 的 React framework,可以在單一程式碼庫裡取資料庫資料、建立 API、做 SSR、做靜態內容生成。
這意味著什麼?
意味著你不用一上來就把前端專案、後端專案、BFF、SSR 服務、部署鏈路全拆成五攤。你可以先在一個倉庫裡,把頁面、介面、伺服器端渲染、鑑權、資料讀取這些東西串起來。
這對前端同學特別重要。因為你原本最熟的就是 React 或 Vue 的頁面開發。如果直接跳到一個你完全不熟的純後端框架,學習阻力會陡很多。但如果你從 Next.js 或 Nuxt 入手,你會覺得像是在熟悉地盤裡慢慢把伺服器端能力擴出來。
來看個很典型的成長路徑:
一開始你只是會寫頁面和元件。
然後你學會了在 Next/Nuxt 裡做伺服器端資料取得。
再往後,你開始自己寫 API routes / server routes。
接著你開始接資料庫、接鑑權、接檔案儲存、接支付。
到這一步,其實你已經不再是「純前端」了。你已經在用一個前端熟悉的框架,練全端產品交付能力。
React 技術棧優先走 Next.js。
Vue 技術棧優先走 Nuxt。
先沿著你最熟的生態把伺服器端能力補起來,比硬切陌生棧更容易堅持。😊
我們在一開始補資料庫知識的時候,一上來就被一堆資料庫產品名字唬住,不知道該先學哪個。
如果你是為了轉全端,我會比較建議先把 PostgreSQL 學紮實。
原因很簡單,它是一門非常值得投入的通用基礎能力。
PostgreSQL 官方對自己的定位很明確:一個強大的、開源的 object-relational database system,而且對複雜資料工作負載也能處理得很好。翻成人話就是:它不是玩具,它是一個長期可用、能力完整、在真實業務裡很能打的資料庫。
另外,學 PostgreSQL 同時也是在補這些核心認知:
我們一開始會覺得資料庫離自己很遠。可你只要真的做過一次收藏、訂單、評論、權限、團隊協作這些業務,就會發現:不會資料庫,後面很多設計都是飄著的。
這個點我必須單獨講一講,因為很多前端同學不是抗拒資料庫,而是抗拒那種「我剛學 SQL,你又讓我手寫一堆複雜資料存取層」的勸退感。
Prisma 在這裡就很像一個很好的過渡橋梁。
Prisma 官方文件對它的介紹是:它是一個 next-generation Node.js and TypeScript ORM,提供 type-safe database access、migrations 和 visual data editor。
咱前端同學看到這裡應該就有感覺了。type-safe、migration(遷移)、可視化資料編輯,這幾個詞真的很對胃口。
它的好處是可以讓你在理解資料庫的同時,不至於第一階段就被底層重複勞動狠狠干碎。
比如,你可以用 schema 的方式描述資料模型,透過 migration 管理表結構變更,可以用型別安全的 Prisma Client 去寫資料存取。
我比較反對一種學法:資料庫還沒理解明白,就完全沉迷 ORM,最後連 SQL 在幹嘛都不知道。
但我也同樣反對另一種極端:明明你現在主要目標是快速搭產品閉環,卻非要前期把所有資料庫細節都手搓到底。
Prisma 適合前端同學的地方,恰恰在於它讓你先把「建模 - 遷移 - 查詢 - 聯表 - 上線」這條線跑起來,再逐步加深 SQL 和資料庫底層理解。
來看兩個特別直觀的栗子🌰。
假設你現在在做一個部落格後台,要查出最近發布的 10 篇文章,並且把作者名字一起帶出來。
如果是剛入門資料庫的時候,很多人腦子裡第一反應會是:完了,是不是又得自己手寫一大段 SELECT、JOIN、ORDER BY、LIMIT?
但用 Prisma 的話,你可以這樣寫:
ts 体验AI代码助手 代码解读复制代码const posts = await prisma.post.findMany({
take: 10,
orderBy: {
createdAt: 'desc',
},
include: {
author: {
select: {
id: true,
name: true,
},
},
},
});
你看,這種感覺對前端同學是不是很友好?你不用一上來就被複雜 SQL 嚇住,也不用自己手搓聯表字串。查詢意圖幾乎就寫在物件結構裡了:我要最近 10 條、按時間倒序、順便把作者欄位帶出來。
再來一個更能體現「打通資料庫閉環」的例子。假設使用者註冊後,你要同時建立使用者資訊和預設資料卡。
如果是第一次學資料庫時,容易把這個流程想得特別硬核:先插一張表,再拿 ID,再插另一張表,還要擔心欄位寫錯、型別不對。
但 Prisma 往往能讓第一版開發先更順一點:
ts 体验AI代码助手 代码解读复制代码const user = await prisma.user.create({
data: {
email: '[email protected]',
name: '霖呆呆',
profile: {
create: {
bio: '前端轉全端練習中',
},
},
},
include: {
profile: true,
},
});
這種寫法最大的好處不是「以後都不用學 SQL 了」,而是我們可以先把「我要建立什麼關係資料」表達清楚,然後把精力留給業務本身。
這裡我給一條我認為比較順的路線。不是唯一答案,但對大多數前端同學應該是比較友好的。
第一段,先把 Node.js 執行環境和伺服器端基礎補起來。
這一段別急著上大專案。先把 HTTP、非同步、事件迴圈、Express / Hono / Nest 這類後端基礎框架思路、介面設計、參數校驗、錯誤處理、日誌、鑑權這些搞明白。
第二段,用 Next.js 或 Nuxt 做一個真正能跑起來的小產品。
一定要是真產品,不是做個 Todo 就算了。最好包含登入、列表、詳情、表單、檔案上傳、權限控制、管理後台中的幾項。你只有在真實需求裡,才會真正知道自己缺哪塊。
第三段,把資料庫補上。
學 PostgreSQL、學 SQL、學索引、學交易、學約束。然後用 Prisma 把建模、migration、查詢操作接起來。
第四段,補上線所需的工程能力。
比如:
很多人學到這一步會開始想:「我是不是已經偏後端了?」
其實不是。你是在把自己從「只能參與一部分交付」升級成「可以獨立完成完整交付」。
這個點我也很想補一句,因為現在很多同學已經在用 AI 學習了,但用法差別真的很大。
用得不好的方式通常是:
「把一個概念丟給 AI,讓它直接給我總結,然後我複製過去看一眼,感覺自己會了。」
這種學法爽是爽,但知識基本不長在自己腦子裡。
我個人的方式是把 AI 當成一個隨時在線、還挺有耐心的陪練老師。比如我們在學 Node.js、資料庫、鑑權、Prisma、RAG 的時候,可以這樣用它:
await、微任務、阻塞之間的關係來看個很真實的🌰。
比如你剛學 Prisma,看到 include、select、巢狀 create 有點亂,這時候你別只問:
「Prisma 怎麼用?」
這種問題太大,AI 也容易給你回一坨模板話。你可以換成更具體的問法:
「我現在是前端轉全端,剛學 Prisma。請你用部落格系統舉例,分別示範 select、include、巢狀 create 是什麼差別,並告訴我每種寫法背後大概對應什麼 SQL 思路,但不要直接把答案講太滿,先讓我自己猜一下。」
這樣的話,AI 一下就從「答案生成器」變成「陪練老師」了。我自己喜歡建一個學習資料夾(比如 NodeJS),然後在這個資料夾中去補充:Tasks、notes、projects(實際案例)、articles(可以把學習成果沉澱為文章):

我們如果能把 AI 用成「加速理解和練習的工具」,而不是「代替思考的拐杖」,學習效率會高很多,而且不容易學飄。
這個問題相信大家都有共識:前端同學不應該把 AI 開發當成可選項了。你越晚補,越容易在下一波產品形態裡被動。
以前很多產品是「使用者點按鈕,系統回傳結果」。
現在越來越多產品變成:
這裡前端的價值其實一點都沒變小,反而更大了。因為 AI 產品能不能好用,很多時候不在模型參數有多玄學,而在於互動流程是不是順的、回饋是否可理解,還有結果是否可以驗證。這些事,前端天然是有優勢的。
但如果你只懂對話框 UI,不懂模型、工具、資料和後端鏈路,你就很難把 AI 功能真正落地成一個可靠產品。
很多人說自己在學 AI 開發,結果本質上只是:
「我會呼叫一個模型介面,然後把回傳結果渲染到頁面上。」
這離真正的 AI 產品開發,中間還差著好幾層。
我會建議前端同學優先補這幾塊:
第一塊,Prompt 設計能力。
並不是說那種「背幾個萬用提示詞模板」,而是咱要知道怎麼把任務描述清楚,怎麼約束輸出格式,怎麼拆步驟,怎麼減少歧義。
第二塊,Structured Output。
如果 AI 輸出是要進系統、進資料庫、驅動介面,而不是只給人看看,那你就遲早要面對結構化輸出。現在官方能力也越來越強調這一點,比如 OpenAI 的 Structured Outputs 和工具呼叫能力,本質上都是在幫開發者把模型輸出變成更可控的系統輸入。
第三塊,Tool Calling / Function Calling。
這一層一補上,咱就會開始明白:AI 不只是「會說話」,它還能調介面、查知識庫、搜網頁、下指令、串工作流。很多所謂 AI Agent,核心就是模型 + 工具 + 狀態管理。
第四塊,RAG 和知識庫基礎。
不是每個 AI 功能都要 RAG,但你至少得知道,什麼時候需要把業務知識接進來,什麼時候模型自己知道得不夠,什麼時候要做檢索、重排、引用來源。
第五塊,Evals 和兜底。
這個還是很關鍵的。因為 AI 最坑的地方不是「它偶爾答錯」,而是它會一本正經地答錯。
所以我們可能還需要知道:怎麼做樣例集,怎麼評估提示詞改動前後的效果,怎麼判斷輸出是不是可用,怎麼給高風險動作加人工確認,怎麼在模型不穩定時做好 fallback。
很多前端同學會有一種心理:AI 是不是更偏演算法、更偏後端,我學這個是不是天然吃虧?
我倒覺得不一定。如果你的目標不是去訓練大模型,而是做 AI 應用,那前端同學反而有很多天然優勢。
原因也不複雜。很多 AI 產品最後拼的,不只是模型能力本身,還包括互動設計、結果展示、使用者回饋、任務流轉、容錯體驗,以及怎麼把一套能力真正做成使用者願意反覆使用的產品。這個部分,前端同學其實並不陌生。
當然,這不代表前端天然就更適合做 AI,更不代表只會前端就夠了。我的意思只是,前端不是離 AI 很遠,而是如果你願意把伺服器端、資料層和 AI 呼叫這一段補起來,你會比自己想像中更容易切進來。
首先先給大家幾個推薦的學習素材:
(一)Node.js
process、child_process、fs、http、express 這些核心概念,而且還配套了 PostgreSQL、Redis 等教程。event loop、nextTick、setImmediate、多進程、優雅退出, 都會從這裡變得更容易理解。(二)PostgreSQL
(三)Redis / 快取 / 佇列
(四)鑑權 / 安全
OK,再來看看幾個階段。第一階段,重點補 Node.js 和伺服器端基礎,同時做一個最小 API 專案。
這一階段別想著大而全。我們要做的,是先把伺服器端那套基本盤搭起來,可以先看上面推薦的長課建立整體認知,再補事件迴圈那門定向影片。
專案上我會建議你做一個「小而完整」的東西,比如:
第二個月,用 Next.js 或 Nuxt 把它長成一個帶資料庫的全端小產品。
這個階段可以開始把 PostgreSQL 和 Prisma 接進來,同時把前端頁面補上。影片資源上,Node.js 可以繼續少量回看,重點可以看 PostgreSQL 模組,先看入門,再補索引和交易。
專案上別另起爐灶,最好直接接著第一個月那個專案繼續長。比如把「帶登入的筆記 API」升級成「帶前台頁面 + 後台管理 + 資料庫儲存」的完整應用。這樣你的學習是連續的,不會每個月都從零開新坑。
這個階段我會建議你至少補齊這些能力:
第三個階段,給這個專案加一塊真正有價值的 AI 功能。
這時候不要重新做一個「AI Demo 網站」,而是把 AI 嵌進你前兩個月已經做起來的產品裡。
功能上你可以從這些方向裡選一個最貼近真實需求的,比如:
咱們主要是要把這些真正做完整:prompt 設計、結構化輸出、錯誤兜底、使用日誌、敏感操作確認等等。
這樣三個階段下來,你手裡最好至少有一個專案,而且這個專案是一路長出來的,這比你做三個互不相干的小 demo,含金量高很多。
知識無價,支持原創!這篇文章就介紹到這裡。
我其實不太喜歡那種特別口號式的話術,比如「全端才是未來」「不會 AI 就完了」。
這篇文章我最想傳達的,其實不是「你必須立刻轉全端」,而是你最好別再把自己長期框死在單一邊界裡。
前端能力當然依舊重要,但如果你再往上走一步,補上伺服器端、資料庫、工程化、AI 開發這些能力,你看到的就不再只是頁面,而是完整產品系統。
在後面,我也會補充更多我自己選型過程中的學習心得和筆記,供大家一起學習。
喜歡霖呆呆的小夥伴還希望可以關注霖呆呆的公眾號 LinDaiDai。
我會不定時地更新一些前端方面的知識內容以及自己的原創文章🎉。
你的鼓勵就是我持續創作的主要動力 😊。