常用開發規範心得

2021-08-31 17:18:14 字數 1460 閱讀 1233

通過一段時間的看程式和修改別人的程式,簡單做了一下總結,自己的一點觀點,這也是上班後第一次發表到每月技術文章中的文章,現在貼出來,以後自己回頭再看時供自己比較一下。

1.避免「串起來」

如果乙個功能需要多個步驟按次序完成,那麼各個分步驟模組兒之間不要發生呼叫關係,並且按順序執行的要求也不要由每個分步驟模組兒自己來決定,要交由宿主方法來組織。

示例:不推薦模式:

推薦模式:

functiona()

functionb(parameter)

functionc(parameter)

void main()

functiona()

functionb(parameter)

functionc(parameter)

void main()

執行順序由各函式決定

執行順序由宿主方法決定

缺點:模組之間耦合高,不利於**或宿主方法中功能變動時的維護。

優點:各分步驟模組之間偶爾度降低,執行步驟可靈活統一地在宿主方法中被控制。

2.遵循「誰建立,誰負責;取用分開」

如果某個操作需要一些物件作為前提條件,那麼盡量把這些物件的建立和業務操作中依賴物件的處理邏輯分開。

示例:典型的資料庫操作中會出現這種情況,我們運算元據庫表的時候需要先建立一些訪問資料庫的物件如connection,然後利用connection物件去執行我們的sql命令。

我們可以將這個任務劃分為幾個子任務來處理:

a.建立用於資料庫連線的connection物件;

b.構造sql命令的處理邏輯,呼叫連線物件執行命令;

c.連線物件的**;

宿主方法中分別呼叫這幾個模組兒來實現最終的功能。

不推薦模式:

//乙個方法完成所有功能

void main()

//只處理跟業務操作有關的

void functionf(connection conn)

//宿主方法組織完成功能

void main()

缺點:連線物件難以統一管理,**復用性和可移植性不高。

優點:連線物件可以被統一排程管理,減少連線物件只被建立而「忘記」關閉的潛在危險的發生;降低各模組**的複雜性。

3. 資料報裝、驗證或預處理操作應和業務邏輯分開

如果乙個模組有輸入或輸出資料,但是通常情況下又需要對輸入和輸出的資料進行格式轉換,如:輸入資料進行base64格式轉換,輸出資料報裝成json串,那麼建議盡量保持業務處理中的輸入和輸出資料是最原始的,而將資料的預處理和格式轉換等放在專門的模組中處理。

示例:不推薦模式:

void main(p)

//公用的轉換方法

functiona(p)

void main(param)

缺點:如果格式轉化邏輯發生變化,**將難以維護;各業務邏輯部分的**重複過多,模組復用率低。

優點:能夠統一管理資料報轉格式;模組復用率提高,**易於維護。

1 開發規範 常用的版本控制

這裡版本控制是經過筆者在專案中實踐總結得出的,有比較廣的適用範圍,當然也要根據不同的業務有取捨應為筆者水平有限,其中有不足的地方也 往大家指出,多多交流 對於版本控制 我這邊是這樣做的 兩條路線,1.大版本控制,也就是所謂的通過請求的url進行控制 當然也可以在引數進行大版本控制 2.小版本控制,通...

mysql 的開發規範 MySQL開發規範

一 基礎規範 1 使用innodb儲存引擎 2 資料庫字符集使用utf8,校對字符集使用utf8 general ci 3 所有表 欄位都盡量新增注釋 4 庫名 表名 欄位名使用小寫字母,禁止超過32個字元,須見名知意 5 非唯一索引以 idx 欄位1 欄位2 命名,唯一索引必須以 uniq 欄位1...

AS 開發心得

as開發心得 隨著大web時代的來臨,越來越多的開發工作從c s模式轉到b s 模式。前不久公司與某電商合作推出3d內容展示應用。儘管最終結果並不理想,還是就過程中的一些問題總結一下。和所有的指令碼語言類似actionscript 簡稱as 的使用很容易上手。as3.0以前的版本,更多的是面向過程的...