說明
這是一套嚴格的團隊開發(fā)規(guī)范,是筆者作為技術負責人多年在團隊內部踐行的 Laravel 開發(fā)規(guī)范。
另外此規(guī)范,也是所有 LearnKu Laravel 教程 里遵循的規(guī)范。
希望這些信息可以為國內的開發(fā)同行參考和借鑒,發(fā)揮最大的價值。
目的
規(guī)范化可以讓我們的工程師訓練有素,以此來提高軟件交付的質量。
另一方面,團隊的項目經(jīng)驗能夠得到繼承,在實戰(zhàn)中不斷進行總結和摸索,找到兼?zhèn)溟_發(fā)效率、程序執(zhí)行效率、擴展性和安全性的最佳實踐,最終實現(xiàn)團體智慧的延續(xù)和精進。
優(yōu)勢
規(guī)范有以下優(yōu)點:
- 高效編碼 —— 避免了過多的選擇造成的『決策時間』浪費;
- 風格統(tǒng)一 —— 最大程度統(tǒng)一了開發(fā)團隊成員代碼書寫風格和思路,代碼閱讀起來如出一轍;
- 減少錯誤 —— 減小初級工程師的犯錯幾率;
- 提高團隊戰(zhàn)斗力 —— 在多人協(xié)作的工作中,做到 1 +1 大于 2。
開發(fā)哲學
因為篇幅原因,本規(guī)范無法涉及到項目里每一塊代碼的編寫標準,所以此處重點說明下此規(guī)范遵循的『開發(fā)哲學』,開發(fā)中請把其當做指明燈,來指引你做決策:
- DRY ——「Don’t Repeat Yourself」不寫重復的邏輯代碼;
- 約定俗成 ——「Convention Over Configuration」,優(yōu)先選擇框架以及社區(qū)提倡的做法,不過度配置;
- KISS ——「Keep it Simple, Stupid」提倡簡單易讀的代碼,不寫高深、晦澀難懂的代碼,不過度設計;
- 主廚精選 —— 讓有經(jīng)驗的人來為你選擇方案,不獨創(chuàng)方案;
- 官方提倡 —— 優(yōu)先選擇官方推崇的方案。
設計理念
以下是一些優(yōu)秀的『程序設計理念』:
- MVC - Model, View, Controller ,以 MVC 為核心,嚴格控制 Controller 的可讀性和代碼行數(shù);
- Restful - 利用『資源化概念』和標準的 HTTP 動詞來組織你的程序。
在此規(guī)范中,我們會將使用這兩套理念作為程序設計基礎。
這些設計理念為我們設計程序提供了依據(jù),遵循這些理念,能讓程序變得清晰易讀。
更多建議: