技術 4 分鐘閱讀
為什麼我選擇 Laravel + React 作為主力技術棧
前言:技術選擇是一場取捨
最近在思考要用什麼技術棧來經營自己的接案事業,研究了好一陣子,最終選定了 Laravel + React 這個組合。這篇文章想分享一下我的思考過程,給同樣在猶豫的人一些參考。
為什麼是 Laravel?
開發速度極快
Laravel 的 Artisan CLI 和內建功能讓後端開發速度飛快。認證、郵件、佇列、排程任務,這些常見需求幾乎不用從頭寫:
php artisan make:model Product -mcr
一行指令就能產生 Model、Migration、Controller,省下大量時間。
中文資源豐富
對於在台灣接案來說,Laravel 的中文社群相當活躍。遇到問題很容易找到解法,客戶端的主機商也大多支援 PHP。
生態系完整
從 金流串接 到 API 開發,Laravel 的套件生態系幾乎涵蓋了所有需求。Spatie 系列套件更是品質保證。
為什麼搭配 React?
元件化思維
React 的元件化架構讓前端程式碼更好維護。當專案規模成長時,這個優勢會越來越明顯。
function ProductCard({ product }) {
return (
<div className="rounded-lg shadow-md p-4">
<h3 className="text-lg font-bold">{product.name}</h3>
<p className="text-gray-600">{product.description}</p>
<span className="text-blue-600 font-semibold">
NT$ {product.price}
</span>
</div>
);
}
市場需求大
目前觀察台灣的求職市場和接案市場,React 的需求量是前端框架中最高的。學一套就能應付大部分客戶的需求。
TypeScript 整合優秀
React 搭配 TypeScript 的開發體驗非常好,型別檢查能在開發階段就抓到很多 bug,這點對於接案品質控管很重要。之後會再寫一篇 TypeScript 的開發心得。
兩者如何串接?
目前覺得最好的方式是使用 Inertia.js。它讓 Laravel 和 React 可以無縫整合,不需要額外建立 API 層。關於 Inertia.js 的詳細用法,之後會寫一篇 完整指南。
另一個選擇是走純 API 架構,Laravel 當後端 API,React 用 Vite 獨立部署。兩種方式各有優缺點,要看專案需求決定。
我考慮過的替代方案
| 方案 | 優點 | 為何沒選 |
|---|---|---|
| Next.js 全端 | SSR 內建 | 後端邏輯複雜時不夠靈活 |
| Django + Vue | Python 生態系 | 台灣 PHP 主機更普及 |
| NestJS + React | 全 TypeScript | 學習曲線較陡 |
總結
沒有完美的技術棧,只有最適合你的情境的選擇。Laravel + React 對我來說,在開發效率、市場需求、和生態系成熟度之間取得了很好的平衡。
如果你需要類似的系統,歡迎聯繫討論。
#Laravel #React #技術選擇