總覽
彈性
更強大、更容易還原的基礎架構。
安全
通過測試確保代碼和基礎架構盡可能少出現問題。
透明度
按照精確的規則進行編寫代碼的標準方式。
工具:
- ESLint 示例:幫助您編寫更乾淨的代碼。
我們的所有項目都尽量使用 JavaScript。
如果您需要使用其他語言,首先檢查是否真的需要。
目前,我們仍然使用 JavaScript,而不是 TypeScript。
提示:為了方便合併請求的驗證,請遵循以下要點。
使用 Docker 運行我們的軟件,而不是手動操作。
主要目標:為開發人員和 Bobby / GCP / AWS 的生產環境提供相同的環境。代碼應該盡可能少出現警告並且要經過 lint 檢查。
應使用環境變量。
主要目標:不要將密鑰推送到 GitLab + 每個環境不同(SQL Server,郵件服務器等)。DNS 可以更改為新的 IP,而不會破壞代碼。
主要目標:代碼不應依賴基礎架構。如果滿足要求,CI / CD 應該自動部署。
警告:舊代碼可以更新,但新代碼必須遵循新的方式。
![]()
請尽可能使用駝峰命名法。
const pesDowntimeReasonList = "";
危險:不要混合使用駝峰命名法、帕斯卡命名法和短橫線命名法。
const isOk;
const isStillOk
const is_not_ok;
空格: 當您編寫語句時,請使用空格。
true;
const [video, setVideo] = useState();
const test = "Brilltek";
以下是錯誤的寫法。
false;
const [video, setVideo] = useState();
const test = "Brilltek";
if、while、for 和 foreach 之後應加上空格,括號之前應加上空格。
true;
if (a == b) {
a = "foo";
}
_________________________;
false;
if (a == b) {
a = "foo";
}
大括號應放在函數、條件語句、循環等的開始行上,else/elseif 應放在前一個右大括號的同一行上。
const foo = (var) => {
if (is_null(var)) {
return true;
} else {
return false;
}
}
不要在方括號中間加入空格。
true;
$a = ["foo", "bar"];
$c = $a[0];
$x = [];
_________________________;
false;
$a = ["foo", "bar"];
$c = a[0];
$x = [];
Switch 語句: 使用 switch 語句需要有充分的理由,當可以使用數組或 JSON 時不要使用 switch。
switch(case) {
case "start":
color = "#FFFFF"
case "stop":
color = "#00000"
case "pause":
color = "#efefef"
}
這是錯誤使用 switch 語句的例子,這只會使您的代碼更加混亂。 相反,您可以使用類似以下的 JSON 結構:
const colors = {
start: "#FFFFF",
stop: "#00000",
pause: "#efefef"
}
color = colors[case]
後端:
遷移: 提示:在創建、更新或刪除之前,始終先檢查現有字段或列。
危險:不要更改已經提交的遷移文件,您需要創建一個修改第一個遷移文件字段的新遷移文件。
路由: 使您的路由保持盡可能簡單。
真實例子:
create:
POST /user
read:
GET /user
update:
PUT /user
delete:
DELETE /user
錯誤例子:
create:
POST /user/create
read:
GET /user/get
update:
POST /user/update
DELETE:
POST /user/delete
避免在路由或變量中重複使用單詞,例如:
錯誤:/pes/pes_downtime_badReason/DowntimeBadReasonUpdate
更改為:PUT /pes/downtime/badReason