1.命名規範 定義這個規範的目的是讓專案中全部的文件都看起來像一個人寫的,新增可讀性。降低專案組中由於換人而帶來的損失。
(這些規範並非一定要絕對遵守,可是一定要讓程式有良好的可讀性)
1.1 namespace的命名 namespace的名字應該都是由一個大寫字母開頭的單片語成,若由多個單片語成。每一個單詞的首字母大寫。
1.2 Class的命名 Class 的名字必須由大寫字母開頭而其它字母都小寫的單片語成。
比如: class Raster;
1.3 區域性變數的命名 變數的名字必須用一個小寫字母開頭。後面的單詞用大寫字母開頭。
1.4 Static 變數的命名 Static 變數的名字應該都大寫,而且指出完整含義。
1.5 引數的命名 引數的名字必須和變數的命名規範一致。
1.6 陣列的命名 陣列應該總是用以下的方式來命名:
byte[] buffer; 而不是:
byte buffer[]; 1.7 程式碼凝視 類頭部凝視
1.用文字說明程式碼的作用。並正確指出該程式碼的編寫思路和邏輯方法;
- 在每一個類的開始賦予一個凝視標頭;
可參考:(至少須要這幾項,Description:描寫敘述該類功能。作者,時間。
)
/**
-
Description: 使用者管理
-
@Author: wjl
-
@Create Date: 2015-8-17下午4:06:14
*/
在更改該類重要的內容時,可在裡面加入內容。
方法頭部凝視
/**
-
跳轉到加入使用者頁面
-
@return
*/
介面頭部凝視
/**
-
Description:
-
param:
-
return:
-
@Author: wjl
-
@Create Date: 2015-8-13下午5:04:34
*/
實體屬性頭部凝視
/**
- username字
*/
1.8 功能點方法規範定義 n 初始化
u XX_init
n 查詢
u XX_query/XX_search
n 授權
u XX_auth
n 拒絕
u XX_reject
n 明細
u XX_info
n 錄入
u XX_input
n 新增
u XX_add
n 改動
u XX_update
n 刪除
u XX_del
v 介面命名規範定義
一個業務一個目錄 裡面放所以該業務的jsp介面。
n 查詢頁面
u query.jsp
n 明細頁面
u show.jsp
n 錄入頁面
u XX_input.jsp
n 新增
u XX_add.jsp
n 改動
u XX_update
n 刪除
大部分刪除基本上都要彈出提示,是否確定刪除。
v 介面欄位顯示格式(非資料庫中儲存格式)
Ÿ 日期格式:2013-06-28
Ÿ 時間格式:2013-06-28 15:31:00
Ÿ 金額:999,999,999,999.00。整數時顯示小數點和小數值
Ÿ 數字:XXX,XXX(顯示千分位)
- 資料庫設計規範 2.1資料庫 採用26個英文字母(區分大寫和小寫)和0-9這十個自然數,加上下劃線'_'組成,共63個字元.不能出現其它字元(注 釋除外). 注意事項:
- 以上命名都不得超過30個字元的系統限制.變數名的長度限制為29(不包含標識字元@).
- 資料 物件、變數的命名都採用英文字元,禁止使用中文命名.絕對不要在物件名的字元之間留空格.
- 小心保留詞,要保證你的欄位名沒有和保留詞、資料 庫系統或者經常使用訪問方法衝突
- 保持欄位名和型別的一致性,在命名欄位併為其指定資料型別的時候一定要保證一致性.假如資料型別在一個表裡是整 數,那在還有一個表裡可就別變成字元型了.
2.2資料庫命名規範 資料庫,資料表一律使用字首
正式數 據庫名使用小寫英文以及下劃線組成,儘量說明是那個應用或者系統在使用的.比方:
web_19floor_net web_car
備 份資料庫名使用正式庫名加上備份時間組成,如:
web_19floor_net_20070403 web_car_20070403
2.3資料庫表命名規範 遵循以上資料庫實體命名規則。
典型的欄位的取名:(以操作員資訊Staff為例)
內碼Staff_Id
名稱Staff_Name
編號Staff_Code
備註欄位名Remark
表與表之間的相關聯欄位要用統一名稱, 如 web_user 表 裡面的 userId 和 web_group 表裡面的 userId 相相應。
(或者能夠加個表名字首)
2.4欄位型別規範 規則:用盡量少的儲存空間來存 數一個欄位的資料. 比方能用int的就不用char或者varchar 能用tinyint的就不用int 能用 varchar(20)的就不用varchar(255)
數字Number
對於編碼欄位,oracle一般用Number(5)或者Number(10),mysql 用int(11);
假設是金額,一般用Number(12,2); mysql用double(11,2)
特殊欄位如:郵編Number(6)
日期時間
datetime型
2.5資料庫文件 在serversvn上都有資料庫設計文件, 更改了資料庫裡面的欄位後,都要更新資料庫文件。方便以後管理查詢維護。
另外,在建立表的時候,要對該表中的全部欄位進行凝視說明。該欄位的中文意思。
相關資料庫的知識:
VARCHAR是變長儲存,欄位長度是資料庫一種約束,定義合理的長度也能夠讓人easy理解欄位的用途。
MYSQL中定義的長度假設小於255,欄位長度用1個位元組表示,假設超過255,欄位的長度將固定用2個位元組表示。ORACLE沒有這種問題。
欄位定義的長度對索引也有較大影響。MYSQL資料庫的索引儲存的長度都是定義的長度,不是實際字元的長度,這是一個很大的問題。預計主要原因是為了實現簡單,所以MYSQL在索引上會浪費大量的空間儲存字串。
nvarchar 和 varchar 的差別是儲存方式不同 varchar是按位元組儲存的.而帶 "n "的nvarchar是按字元儲存的。使用Unicode來儲存資料 比方說 varchar(40),能儲存40個位元組長度的字元,儲存中文字元的時候,由於中文字元1個字元就等於2個位元組.所以varchar(40)僅僅能儲存20箇中文字元. nvarchar(40),就能夠儲存40箇中文字元,也就是說能夠儲存80個位元組長度的字元
將欄位設定為not null 還出於第二種考慮:mysql表的列中包括null的話,那麼該列不會包括在全部中。
也就是使用索引是無效的。
全部。考慮今後會使用索引的欄位。就要設定欄位屬性是not null。
考慮到這個欄位今後會作為查詢keyword使用like的形式進行搜尋。那麼要將該欄位定義成索引。這樣使用like查詢就會更快。