藍(lán)凌JAVA產(chǎn)品開(kāi)發(fā)規(guī)范.doc_第1頁(yè)
藍(lán)凌JAVA產(chǎn)品開(kāi)發(fā)規(guī)范.doc_第2頁(yè)
藍(lán)凌JAVA產(chǎn)品開(kāi)發(fā)規(guī)范.doc_第3頁(yè)
藍(lán)凌JAVA產(chǎn)品開(kāi)發(fā)規(guī)范.doc_第4頁(yè)
藍(lán)凌JAVA產(chǎn)品開(kāi)發(fā)規(guī)范.doc_第5頁(yè)
已閱讀5頁(yè),還剩22頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

藍(lán)凌 JAVA 產(chǎn)品 開(kāi)發(fā)規(guī)范開(kāi)發(fā)規(guī)范 Landray 藍(lán)凌 版權(quán)所有 僅供藍(lán)凌內(nèi)部使用 不得外傳 第 2 頁(yè) 共 27 頁(yè) 藍(lán)凌藍(lán)凌 JAVA 產(chǎn)品開(kāi)發(fā)規(guī)范產(chǎn)品開(kāi)發(fā)規(guī)范 文檔控制文檔控制 Document Control 修改記錄修改記錄 日期日期作者作者版本版本備注備注 2007 11 13易榮烽1 0初稿 2008 04 28易榮烽1 1經(jīng)過(guò)再次討論修訂 2008 04 09易榮烽2 0再次修訂 2008 05 11易榮烽3 0修訂周超修改的內(nèi)容 2008 09 07易榮烽4 0 根據(jù)評(píng)審檢查點(diǎn)添加規(guī)范內(nèi) 容 2008 09 08周超4 1因多語(yǔ)言問(wèn)題添加規(guī)范內(nèi)容 2011 02 22易榮烽5 0修改協(xié)作規(guī)范章節(jié) 審閱人審閱人 日期日期審閱人審閱人版本版本備注備注 分發(fā)分發(fā) 日期日期分發(fā)人分發(fā)人分發(fā)對(duì)象分發(fā)對(duì)象備注備注 2008 9 25周超Java 開(kāi)發(fā)人員YFKF200809250001 Landray 藍(lán)凌 版權(quán)所有 僅供藍(lán)凌內(nèi)部使用 不得外傳 第 3 頁(yè) 共 27 頁(yè) 藍(lán)凌藍(lán)凌 JAVA 產(chǎn)品開(kāi)發(fā)規(guī)范產(chǎn)品開(kāi)發(fā)規(guī)范 目目 錄錄 第一章 概述第一章 概述 4 4 1 1 目的 4 1 2 范圍 4 1 3 文檔約定 4 1 4 相關(guān)概念及詞匯列表 4 1 5 相關(guān)角色 5 第二章 協(xié)作規(guī)范第二章 協(xié)作規(guī)范 6 6 2 1 參與協(xié)作開(kāi)發(fā) 6 2 2 進(jìn)行協(xié)作開(kāi)發(fā) 8 2 3 相關(guān)規(guī)范 12 第三章 設(shè)計(jì)規(guī)范第三章 設(shè)計(jì)規(guī)范 1313 3 1 JAVA 存放位置 13 3 2 頁(yè)面存放位置 14 3 3 配置文件存放位置 14 3 4 業(yè)務(wù)代碼位置 15 3 5 數(shù)據(jù)庫(kù)設(shè)計(jì) 15 3 6 MODEL規(guī)范 16 3 7 DESIGN配置規(guī)范 16 3 8 JAVA 類規(guī)范 17 3 9 JSP 界面規(guī)范 18 3 10 PROPERTIES資源文件規(guī)范 19 第四章 代碼規(guī)范第四章 代碼規(guī)范 2020 4 1 命名規(guī)范 20 4 2 風(fēng)格規(guī)范 25 文檔授權(quán)文檔授權(quán) 3030 Landray 藍(lán)凌 版權(quán)所有 僅供藍(lán)凌內(nèi)部使用 不得外傳 第 4 頁(yè) 共 27 頁(yè) 藍(lán)凌藍(lán)凌 JAVA 產(chǎn)品開(kāi)發(fā)規(guī)范產(chǎn)品開(kāi)發(fā)規(guī)范 第一章 概述第一章 概述 1 1 目的 目的 對(duì)于代碼 首要要求是它必須正確 能夠按照程序員的真實(shí)思想去運(yùn)行 第二個(gè) 的要求是代碼必須清晰易懂 使別的程序員能夠容易理解代碼所進(jìn)行的實(shí)際工作 通過(guò)建立開(kāi)發(fā)規(guī)范 形成開(kāi)發(fā)小組編碼約定 提高程序的可靠性 可讀性 可修 改性 可維護(hù)性 可繼承性和一致性 可以保證程序代碼的質(zhì)量 繼承軟件開(kāi)發(fā)成果 充分利用資源 使開(kāi)發(fā)人員之間的工作成果可以共享 1 2 范圍 范圍 1 項(xiàng)目組成員 2 藍(lán)凌公司相關(guān)技術(shù)開(kāi)發(fā)人員 3 其他經(jīng)公司認(rèn)可的必要知情的人員 1 3 文檔約定 文檔約定 本文檔采用 MS Word2003 軟件編寫 采用統(tǒng)一風(fēng)格排版 正文風(fēng)格為 五號(hào)中文宋 體 五號(hào)英文 Arial 字體 行距 1 5 行 針對(duì)需要重點(diǎn)注意的段落 采用紅色描色 一般來(lái)說(shuō) 各章內(nèi)容相對(duì)獨(dú)立 構(gòu)成全文的有效組成部分 1 4 相關(guān)概念及詞匯列表 相關(guān)概念及詞匯列表 同步代碼同步代碼 在進(jìn)行開(kāi)發(fā)的過(guò)程中將本地的代碼和 SVN 服務(wù)器的代碼進(jìn)行同步 在 eclipse 中的操作叫 Synchronize whit Repository 合并代碼合并代碼 在同步的過(guò)程中 發(fā)現(xiàn)本地的代碼和服務(wù)器上的代碼都有所改變 這個(gè)時(shí)候會(huì)產(chǎn)生沖突 就需要合并代碼 簽入簽入 在進(jìn)行開(kāi)發(fā)的過(guò)程中將代碼放入 SVN 服務(wù)器的操作叫簽入 check in 在 eclipse 中的操 Landray 藍(lán)凌 版權(quán)所有 僅供藍(lán)凌內(nèi)部使用 不得外傳 第 5 頁(yè) 共 27 頁(yè) 藍(lán)凌藍(lán)凌 JAVA 產(chǎn)品開(kāi)發(fā)規(guī)范產(chǎn)品開(kāi)發(fā)規(guī)范 作叫提交 簽出簽出 在進(jìn)行開(kāi)發(fā)的過(guò)程中將代碼從 SVN 服務(wù)器下載下來(lái)的操作叫簽出 check out 在 eclipse 中的操作叫更新 1 5 相關(guān)角色 相關(guān)角色 開(kāi)發(fā)人員開(kāi)發(fā)人員 根據(jù)開(kāi)發(fā)規(guī)范 進(jìn)行日常開(kāi)發(fā)工作 SVN 管理員管理員 管理 SVN 服務(wù)器 包括開(kāi)通帳號(hào) 停止帳號(hào) 處理 SVN 遇到的問(wèn)題 Landray 藍(lán)凌 版權(quán)所有 僅供藍(lán)凌內(nèi)部使用 不得外傳 第 6 頁(yè) 共 27 頁(yè) 藍(lán)凌藍(lán)凌 JAVA 產(chǎn)品開(kāi)發(fā)規(guī)范產(chǎn)品開(kāi)發(fā)規(guī)范 第二章 協(xié)作規(guī)范第二章 協(xié)作規(guī)范 開(kāi)發(fā)人員編寫程序的過(guò)程中 每個(gè)程序都會(huì)有很多不同的版本 這就需要開(kāi)發(fā)人員很 好的管理代碼 在需要的時(shí)間可以取出需要的版本 并且每個(gè)版本都需要一個(gè)完成的說(shuō)明 和標(biāo)記 我們公司采用 Sub Version 簡(jiǎn)稱 SVN 主要用于定制項(xiàng)目管理 和 Rational team concert 簡(jiǎn)稱 RTC 主要用于產(chǎn)品管理 做為版本管理工具 在多個(gè)開(kāi)發(fā)人員開(kāi)發(fā)同一段 代碼的過(guò)程中 版本的管理和協(xié)作規(guī)范顯得尤為重要 2 1 參與協(xié)作開(kāi)發(fā) 參與協(xié)作開(kāi)發(fā) 如何參與協(xié)作開(kāi)發(fā) 具體參考以下文檔 1 SVN 藍(lán)凌 JAVA 產(chǎn)品部 SVN 使用指南 doc 2 RTC 藍(lán)凌 JAVA 產(chǎn)品部 RTC 使用指南 doc 2 3 相關(guān)規(guī)范 相關(guān)規(guī)范 1 開(kāi)發(fā)環(huán)境一律使用公司標(biāo)準(zhǔn)開(kāi)發(fā)環(huán)境 如使用自己的開(kāi)發(fā)環(huán)境 遇到問(wèn)題則 自己行解決 2 每個(gè)開(kāi)發(fā)人員都有自己的帳號(hào)和密碼 禁止使用其他開(kāi)發(fā)人員的帳號(hào)和密碼 可以保證每個(gè)版本都能找到相應(yīng)的開(kāi)發(fā)人員 如需開(kāi)通新帳號(hào)密碼 請(qǐng)告知 SCM 管理員 3 遇到 SCM 服務(wù)器問(wèn)題 應(yīng)及時(shí)尋找 SCM 管理員幫助解決 避免自己去嘗試 解決導(dǎo)致服務(wù)器崩潰 4 發(fā)現(xiàn)沖突必須經(jīng)過(guò)手動(dòng)合并后才能上傳到 SCM 服務(wù)器上 不能將其他開(kāi)發(fā) 人員的代碼直接覆蓋 導(dǎo)致代碼丟失 5 上傳的代碼必須保證是能運(yùn)行的代碼 不能將未經(jīng)過(guò)測(cè)試的代碼就上傳 SCM 服務(wù)器上 導(dǎo)致其他發(fā)開(kāi)人員項(xiàng)目啟動(dòng)不了 6 每天下班前將當(dāng)天開(kāi)發(fā)的已完成的代碼提交到服務(wù)器上 7 每天早上來(lái)到公司應(yīng)該同步 SCM 服務(wù)器 將最新的代碼更新到本地 可以 避免服務(wù)器崩潰后找不到最新的代碼 Landray 藍(lán)凌 版權(quán)所有 僅供藍(lán)凌內(nèi)部使用 不得外傳 第 7 頁(yè) 共 27 頁(yè) 藍(lán)凌藍(lán)凌 JAVA 產(chǎn)品開(kāi)發(fā)規(guī)范產(chǎn)品開(kāi)發(fā)規(guī)范 注 開(kāi)發(fā)人員必須遵守以上規(guī)范 如發(fā)現(xiàn)未遵守以上規(guī)范 導(dǎo)致代碼丟失或者影響其他開(kāi) 發(fā)人員正常工作的行為 會(huì)給予相應(yīng)的處罰 Landray 藍(lán)凌 版權(quán)所有 僅供藍(lán)凌內(nèi)部使用 不得外傳 第 8 頁(yè) 共 27 頁(yè) 藍(lán)凌藍(lán)凌 JAVA 產(chǎn)品開(kāi)發(fā)規(guī)范產(chǎn)品開(kāi)發(fā)規(guī)范 第三章 設(shè)計(jì)規(guī)范第三章 設(shè)計(jì)規(guī)范 開(kāi)發(fā)人員在編程過(guò)程代碼目錄結(jié)構(gòu) 業(yè)務(wù)邏輯在什么地方 配置文件存放位置等 都需要規(guī)范 以便其他開(kāi)發(fā)人員快速查找文件 減少開(kāi)發(fā)過(guò)程中的溝通 減少維護(hù)成 本 3 1 JAVA 存放位置存放位置 src 是存放 JAVA 代碼的目錄 我們公司所有的項(xiàng)目的包名前面都有 com landray kmss 后面接的是項(xiàng)目名稱 如 HR 項(xiàng)目就是 com landray kmss hr 下面 是 HR 的各個(gè)模塊 如績(jī)效考核模塊 com landray kmss hr pm 我們公司采用三層架構(gòu) struts hibernate spring JAVA 代碼分成五個(gè)目錄存 放 目錄包括 action form dao model service 還有一個(gè) ApplicationResources properties 資源文件文件 每個(gè)模塊都包含五個(gè)目錄和一個(gè)資源文 件 代碼結(jié)構(gòu)如下 com lanray kmss 項(xiàng)目名稱 模塊 1 子模塊 如歸檔模塊 action constant dao hibernate form model service spring util ApplicationResources properties 模塊 2 模塊 3 例子 com landray kmss hr pm action com landray kmss hr pm archive 績(jī)效考核歸檔模塊 com landray kmss hr pm dao Landray 藍(lán)凌 版權(quán)所有 僅供藍(lán)凌內(nèi)部使用 不得外傳 第 9 頁(yè) 共 27 頁(yè) 藍(lán)凌藍(lán)凌 JAVA 產(chǎn)品開(kāi)發(fā)規(guī)范產(chǎn)品開(kāi)發(fā)規(guī)范 com landray kmss hr pm dao hibernaete com landray kmss hr pm form com landray kmss hr pm model com landray kmss hr pm service com landray kmss hr pm service spring com landray kmss hr pm ApplicationResources properties 3 2 頁(yè)面存放位置 頁(yè)面存放位置 頁(yè)面文件存放在 WebContent 目錄下面 代碼結(jié)構(gòu)如下 WebContent 項(xiàng)目名稱 模塊 1 模塊 2 模塊 3 例子 WebContent hr pm hr pm action hr pm angle resources 可選 retain salary 發(fā)現(xiàn)多個(gè)模塊使用的文件的直接存放在模塊下 resources 存放 JS 圖片 樣式 靜態(tài) HTML 3 3 配置文件存放位置 配置文件存放位置 配置文件名放置路徑樣例 spring 配置文件WebContent WEB INF KmssConfig sys organization spring xml 枚舉類型文件WebContent WEB INF KmssConfig sys organization enums xml 設(shè)計(jì)信息配置文件WebContent WEB INF KmssConfig sys organization design xml struts 配置文件WebContent WEB INF KmssConfig sys organization struts xml 校驗(yàn)配置文件WebContent WEB INF KmssConfig sys organization validation xml Hibernate 配置文件WebContent WEB INF KmssConfig sys organization hibernate xml design spring xml 等文件應(yīng)存放 WebContent WEB INF 下的 KmssConfig 目錄下 Landray 藍(lán)凌 版權(quán)所有 僅供藍(lán)凌內(nèi)部使用 不得外傳 第 10 頁(yè) 共 27 頁(yè) 藍(lán)凌藍(lán)凌 JAVA 產(chǎn)品開(kāi)發(fā)規(guī)范產(chǎn)品開(kāi)發(fā)規(guī)范 面 代碼結(jié)構(gòu)如下 WebContent WEB INF KmssConfig 項(xiàng)目名稱 模塊 1 data dict 模塊 2 例子 WebContent WEB INF KmssConfig hr pm data dict HrPmAction xml design xml spring xml hibernate xml struts xml validation xml enums xml retain 3 4 業(yè)務(wù)代碼位置業(yè)務(wù)代碼位置 業(yè)務(wù)代碼均在 spring 或者 dao 中開(kāi)發(fā) action 只用于頁(yè)面的跳轉(zhuǎn) 禁止在 action 寫大 量業(yè)務(wù)代碼 禁止對(duì) model 進(jìn)行賦值操作 禁止多次調(diào)用 service 的更新操作 禁止直接調(diào) 用 dao 注 開(kāi)發(fā)人員在開(kāi)發(fā)過(guò)程中請(qǐng)嚴(yán)格遵循以上代碼結(jié)構(gòu) 3 5 數(shù)據(jù)庫(kù)設(shè)計(jì)數(shù)據(jù)庫(kù)設(shè)計(jì) 數(shù)據(jù)庫(kù)設(shè)計(jì)在開(kāi)發(fā)中如有更改 要及時(shí)維護(hù) PowerDesigner 沒(méi)有必要情況不要寫數(shù)據(jù)庫(kù)特性的 sql 語(yǔ)句 盡量使用 HQL 語(yǔ)句 如有特殊情況特殊 處理 Landray 藍(lán)凌 版權(quán)所有 僅供藍(lán)凌內(nèi)部使用 不得外傳 第 11 頁(yè) 共 27 頁(yè) 藍(lán)凌藍(lán)凌 JAVA 產(chǎn)品開(kāi)發(fā)規(guī)范產(chǎn)品開(kāi)發(fā)規(guī)范 3 6 Model 規(guī)范規(guī)范 model 里面不能使用基礎(chǔ)類型 只能使用對(duì)象類型 如 double 類型 int 類型等是不 能使用 要使用 Double 類型 Integer 類型等 hbm 中 String 的 length 大于 1500 的不能超過(guò) 5 個(gè) 否則使用 clob 屬性 針對(duì)類似 Clob Blob 等大字段類型的字段 必須采用字段延時(shí)加載的模式 修改樣例 如下 1 hbm 文件 2 model 類 需實(shí)現(xiàn) net sf cglib transform impl InterceptFieldEnabled 接口 protected String docContent public String getDocContent return String readLazyField docContent docContent public void setDocContent String docContent this docContent String writeLazyField docContent this docContent docContent 3 7 Design 配置規(guī)范配置規(guī)范 design 中配置模塊首頁(yè) homepage 例如 注意 url 需要轉(zhuǎn)碼 并且不能將 s css default 配置在里面 錯(cuò)誤的配置 錯(cuò)誤的配置 Landray 藍(lán)凌 版權(quán)所有 僅供藍(lán)凌內(nèi)部使用 不得外傳 第 12 頁(yè) 共 27 頁(yè) 藍(lán)凌藍(lán)凌 JAVA 產(chǎn)品開(kāi)發(fā)規(guī)范產(chǎn)品開(kāi)發(fā)規(guī)范 design 中 portlet 配置需要添加 morlUrl 默認(rèn)配置為模塊首頁(yè)地址 例如 moreURL km doc index 有 我的工作 系統(tǒng)配置 草稿 等屬性需要在 design 中配置 myjob config darft 等 treenode 3 8 JAVA 類規(guī)范類規(guī)范 不能使用累贅?lè)椒?循環(huán)嵌套 循環(huán)次數(shù)不能超過(guò)兩次 當(dāng)出現(xiàn)這樣的情況 需要抽取 成方法 增加代碼可讀性 例如 Public void Test for i 0 i 2 i Test1 Public void Test1 for i 0 i 2 i Test2 Public void Test1 for i 0 i 2 i 錯(cuò)誤的寫法 Public void Test for i 0 i 2 i for j 0 j 2 j for k 0 k 2 k for Landray 藍(lán)凌 版權(quán)所有 僅供藍(lán)凌內(nèi)部使用 不得外傳 第 13 頁(yè) 共 27 頁(yè) 藍(lán)凌藍(lán)凌 JAVA 產(chǎn)品開(kāi)發(fā)規(guī)范產(chǎn)品開(kāi)發(fā)規(guī)范 沒(méi)有使用過(guò)的變量需要?jiǎng)h除 例如 沒(méi)有使用過(guò)的方法需要?jiǎng)h除 已經(jīng)不需要的代碼不要長(zhǎng)篇幅的注釋放在那里 方法體需要添加注釋 3 9 JSP 界面規(guī)范界面規(guī)范 jsp 不允許直接寫中文 例如 if fdBeforeStartTimeReminds null fdBeforeStartTimeReminds alert document getElementById fdBeforeStartTimeRemind focus return false 錯(cuò)誤的寫法 if fdBeforeStartTimeReminds null fdBeforeStartTimeReminds alert 日程開(kāi)始前提醒的時(shí)間不能為空 document getElementById fdBeforeStartTimeRemind focus return false 例如 錯(cuò)誤的寫法 創(chuàng)建時(shí)間 Landray 藍(lán)凌 版權(quán)所有 僅供藍(lán)凌內(nèi)部使用 不得外傳 第 14 頁(yè) 共 27 頁(yè) 藍(lán)凌藍(lán)凌 JAVA 產(chǎn)品開(kāi)發(fā)規(guī)范產(chǎn)品開(kāi)發(fā)規(guī)范 單選按鈕或多選按鈕需要添加標(biāo)簽 如 是 否 js 中 alert 使用的資源文件中若含有雙引號(hào) alert 必須使用單引號(hào) 例如 km doc subject 當(dāng)前操作為 修改當(dāng)前處理人 alert 錯(cuò)誤的寫法 alert 3 10 properties 資源文件規(guī)范資源文件規(guī)范 properties 不允許寫入含有單引號(hào)或雙引號(hào)的 html 語(yǔ)句 如必要資源文件需拆語(yǔ)句 例如 資源文件中 sysNotifyTodo home you 您 sysNotifyTodo home notHave 沒(méi)有 sysNotifyTodo home todo 待辦事宜 jsp 中 錯(cuò)誤的寫法 資源文件中 sysNotifyTodo home havenot 您沒(méi)有 待辦事宜 jsp 中 Landray 藍(lán)凌 版權(quán)所有 僅供藍(lán)凌內(nèi)部使用 不得外傳 第 15 頁(yè) 共 27 頁(yè) 藍(lán)凌藍(lán)凌 JAVA 產(chǎn)品開(kāi)發(fā)規(guī)范產(chǎn)品開(kāi)發(fā)規(guī)范 Landray 藍(lán)凌 版權(quán)所有 僅供藍(lán)凌內(nèi)部使用 不得外傳 第 16 頁(yè) 共 27 頁(yè) 藍(lán)凌藍(lán)凌 JAVA 產(chǎn)品開(kāi)發(fā)規(guī)范產(chǎn)品開(kāi)發(fā)規(guī)范 第四章 代碼規(guī)范第四章 代碼規(guī)范 4 1 命名規(guī)范 命名規(guī)范 1 數(shù)據(jù)庫(kù)設(shè)計(jì)數(shù)據(jù)庫(kù)設(shè)計(jì) 表和字段全部小寫 用 分隔表名或字段名中的多個(gè)詞 表 產(chǎn)品簡(jiǎn)稱 模塊簡(jiǎn)稱 表簡(jiǎn)稱 樣例 hr org dept 每個(gè)數(shù)據(jù)庫(kù)的主表 表 產(chǎn)品簡(jiǎn)稱 模塊簡(jiǎn)稱 main 樣例 km review main 子表名稱 產(chǎn)品簡(jiǎn)稱 模塊簡(jiǎn)稱 主表簡(jiǎn)稱 子表簡(jiǎn)稱 樣例 km review main keyword 中間表名稱 產(chǎn)品簡(jiǎn)稱 模塊簡(jiǎn)稱 主表簡(jiǎn)稱 字段簡(jiǎn)稱 樣例 km review main post 主鍵 fd id 外鍵 fd 字段名 id 樣例 fd creator id 字段 fd 字段名 樣例 fd order 字段類型 主外鍵 VARCHAR2 36 布爾 NUMBER 1 枚舉 NUMBER 2 普通的多行文本 VARCHAR2 1500 或 VARCHAR2 2000 RTF CLOB 排序號(hào) NUMBER 10 注 表名長(zhǎng)度 字段名長(zhǎng)度均不能超過(guò) 30 個(gè)字符 2 JAVA 類類 類名 產(chǎn)品簡(jiǎn)稱 模塊簡(jiǎn)稱 表內(nèi)容簡(jiǎn)稱 樣例 HrOrgDept Landray 藍(lán)凌 版權(quán)所有 僅供藍(lán)凌內(nèi)部使用 不得外傳 第 17 頁(yè) 共 27 頁(yè) 藍(lán)凌藍(lán)凌 JAVA 產(chǎn)品開(kāi)發(fā)規(guī)范產(chǎn)品開(kāi)發(fā)規(guī)范 普通屬性 fd 字段名 樣例 fdOrder docCreator 特殊對(duì)象屬性 直接屬性的類名 首字母小寫 說(shuō)明 特殊對(duì)象指該對(duì)象通過(guò)類名已經(jīng)可以明確對(duì)象的含義 該對(duì)象無(wú)二義 性 如 hrOrgPostType 崗位性質(zhì) 但類似 SysOrgElement 組織架構(gòu)元素 的對(duì)象 它既可以表示創(chuàng)建者 也可以表示修改者或其他實(shí)際的業(yè)務(wù)屬性 這種情況下 該對(duì)象必須以 普通屬性 的格式命名 如創(chuàng)建者命名為 fdCreator 樣例 hrOrgPostType 普通列表屬性 fd 字段名的復(fù)數(shù) 樣例 fdEditors 特殊列表屬性 直接屬性的類名的復(fù)數(shù) 說(shuō)明 特殊列表屬性類似于特殊對(duì)象屬性 與普通列表屬性的區(qū)別是該類含 義無(wú)二義性 樣例 hrOrgPostTypes 3 常用表名字常用表名字 含義含義表名表名樣例樣例備注備注 模板 類別中間表 產(chǎn)品簡(jiǎn)稱 模塊簡(jiǎn)稱 tmp category km review tmp category如果有多種模 板則根據(jù)需要 修改單詞 tmp 相關(guān)崗位中間表 產(chǎn)品簡(jiǎn)稱 模塊簡(jiǎn)稱 主表簡(jiǎn)稱 post km review main post 相關(guān)屬性中間表 產(chǎn)品簡(jiǎn)稱 模塊簡(jiǎn)稱 主表簡(jiǎn)稱 property km review main property 關(guān)鍵字中間表 產(chǎn)品簡(jiǎn)稱 模塊簡(jiǎn)稱 主表簡(jiǎn)稱 keyword km review main keyword 管理員中間表 產(chǎn)品簡(jiǎn)稱 模塊簡(jiǎn)稱 主表簡(jiǎn)稱 admin km review main admin 可閱讀者 可使用者 中間表 產(chǎn)品簡(jiǎn)稱 模塊簡(jiǎn)稱 主表簡(jiǎn)稱 reader km review main reader 可編輯者 可維護(hù)者 中間表 產(chǎn)品簡(jiǎn)稱 模塊簡(jiǎn)稱 主表簡(jiǎn)稱 editor km review main editor 其他可閱讀者 產(chǎn)品簡(jiǎn)稱 模塊簡(jiǎn)稱 主表簡(jiǎn)稱 oreader km review main oreader 其他可編輯者 產(chǎn)品簡(jiǎn)稱 模塊簡(jiǎn)稱 主表簡(jiǎn)稱 oeditor km review main oeditor 所有可閱讀者 產(chǎn)品簡(jiǎn)稱 模塊簡(jiǎn)稱 主表簡(jiǎn)稱 areader km review main areader 所有可編輯者 產(chǎn)品簡(jiǎn)稱 模塊簡(jiǎn)稱 主表簡(jiǎn)稱 aeditor km review main aeditor 附件可拷貝者 產(chǎn)品簡(jiǎn)稱 模塊簡(jiǎn)稱 主表簡(jiǎn)稱 attcopy km review main attcopy 附件可下載者 產(chǎn)品簡(jiǎn)稱 模塊簡(jiǎn)稱 主表簡(jiǎn)稱km review main attdl Landray 藍(lán)凌 版權(quán)所有 僅供藍(lán)凌內(nèi)部使用 不得外傳 第 18 頁(yè) 共 27 頁(yè) 藍(lán)凌藍(lán)凌 JAVA 產(chǎn)品開(kāi)發(fā)規(guī)范產(chǎn)品開(kāi)發(fā)規(guī)范 attdl 附件可打印者 產(chǎn)品簡(jiǎn)稱 模塊簡(jiǎn)稱 主表簡(jiǎn)稱 attprint km review main attprint 4 常用字段常用字段 普通類型 含義含義字段名字段名Java 屬性名屬性名數(shù)據(jù)庫(kù)字段類型數(shù)據(jù)庫(kù)字段類型Java 字段類型字段類型必須必須 名稱fd namefdNameVARCHAR2 200 StringY 排序號(hào)fd orderfdOrderNUMBER 10 Integer 描述fd descriptionfdDescriptionVARCHAR2 150 0 String 父類別fd parent idhbmParentVARCHAR2 36 IbaseTreeModel 所屬部門fd dept idfdDeptVARCHAR2 36 SysOrgElement 通知類型fd notify typefdNotifyTypeVARCHAR2 100 String 內(nèi)容管理 含義含義字段名字段名Java 屬性名屬性名數(shù)據(jù)庫(kù)字段類型數(shù)據(jù)庫(kù)字段類型Java 字段類型字段類型必須必須 標(biāo)題doc subjectdocSubjectVARCHAR2 200 StringY 狀態(tài)doc statusdocStatusVARCHAR2 2 String 創(chuàng)建者doc creator iddocCreatorVARCHAR2 36 SysOrgPersonY 修改人doc alteror iddocAlterorVARCHAR2 36 SysOrgPerson 作者doc author iddocAuthorVARCHAR2 36 SysOrgPerson 創(chuàng)建時(shí)間doc create timedocCreateTimeDATEDateY 最后修改時(shí) 間 doc alter timedocAlterTimeDATEDate 發(fā)布時(shí)間doc publish timedocPublishTimeDATEDate 所屬分類doc category iddocCategoryVARCHAR2 36 ISysCategoryTempl ate Y 所屬部門doc dept iddocDeptVARCHAR2 36 SysOrgElement 關(guān)鍵字doc keyworddocKeywordVARCHAR2 200 String 相關(guān)崗位doc post iddocPosts VARCHAR2 36 中間表 List 相關(guān)屬性doc property iddocProperties VARCHAR2 36 中間表 List 點(diǎn)擊率doc hitsdocHitsNUMBER 10 Integer 文檔內(nèi)容doc contentdocContentCLOBString 權(quán)限相關(guān) 含義含義字段名字段名Java 屬性名屬性名數(shù)據(jù)庫(kù)字段類型數(shù)據(jù)庫(kù)字段類型Java 字段類型字段類型必須必須 管理員auth admin idauthAdmins VARCHAR2 36 中間表 List 可閱讀者auth reader idauthReaders List Landray 藍(lán)凌 版權(quán)所有 僅供藍(lán)凌內(nèi)部使用 不得外傳 第 19 頁(yè) 共 27 頁(yè) 藍(lán)凌藍(lán)凌 JAVA 產(chǎn)品開(kāi)發(fā)規(guī)范產(chǎn)品開(kāi)發(fā)規(guī)范 VARCHAR2 36 中間表 可編輯者auth editor idauthEditors VARCHAR2 36 中間表 List 其他可閱讀 者 auth other reader idauthOtherRea ders VARCHAR2 36 中間表 List 其他可編輯 者 auth other editor idauthOtherEdit ors VARCHAR2 36 中間表 List 所有可閱讀 者 auth all reader idauthAllReade rs VARCHAR2 36 中間表 List 所有可編輯 者 auth all editor idauthAllEditor s VARCHAR2 36 中間表 List 所有人可閱 讀標(biāo)記 auth reader flagauthReaderFl ag NUMBER 1 Boolean 所有人可編 輯標(biāo)記 auth editor flagauthEditorFla g NUMBER 1 Boolean 附件可拷貝 者 auth att copy idauthAttCopys VARCHAR2 36 中間表 List 不可拷貝標(biāo) 記 auth att nocopyauthAttNocop y NUMBER 1 Boolean 附件可下載 者 auth att download idauthAttDownl oads VARCHAR2 36 中間表 List 不可下載標(biāo) 記 auth att nodownloadauthAttNodo wnload NUMBER 1 Boolean 附件可打印 者 auth att print idauthAttPrints VARCHAR2 36 中間表 List 不可打印標(biāo) 記 auth att noprintauthAttNopri nt NUMBER 1 Boolean 注 創(chuàng)建人 創(chuàng)建時(shí)間必須為 docCreator 和 docCreateTime 5 常用枚舉常用枚舉 字段名稱值列表備注 doc status 文檔狀態(tài) 10 草稿 20 待審 11 駁回 00 廢棄 30 發(fā)布 40 過(guò)期 該狀態(tài)可選 如果同等狀態(tài)下有多種 形式的 請(qǐng)修改第二位 的編碼 如發(fā)布狀態(tài)下 也會(huì)有已反饋等 可將 其置為 31 6 權(quán)限命名權(quán)限命名 a 每個(gè)模塊必須定義 DEFAULT 的角色 用于校驗(yàn)?zāi)K中未聲明的頁(yè)面以及操 Landray 藍(lán)凌 版權(quán)所有 僅供藍(lán)凌內(nèi)部使用 不得外傳 第 20 頁(yè) 共 27 頁(yè) 藍(lán)凌藍(lán)凌 JAVA 產(chǎn)品開(kāi)發(fā)規(guī)范產(chǎn)品開(kāi)發(fā)規(guī)范 作權(quán)限 并在該角色的注釋中說(shuō)明 DEFAULT 所具有的操作權(quán)限 b 模塊的基礎(chǔ)配置信息 簡(jiǎn)單配置 如員工管理中的政治面貌 學(xué)歷等 若無(wú) 特別業(yè)務(wù)要求 均采用集中一個(gè)角色的方案進(jìn)行配置 c 模塊中稍微復(fù)雜的配置 如 員工信息中的異動(dòng)流程設(shè)置 采用一個(gè)角色對(duì) 應(yīng)一種配置的方案進(jìn)行配置 d 一般的主業(yè)務(wù)的配置 需要針對(duì) 新增 刪除 修改 查閱 等操作分別進(jìn)行 配置 其中查閱和修改操作 針對(duì)是否有數(shù)據(jù)過(guò)濾 又分為讀者 作者 有數(shù) 據(jù)過(guò)濾 和閱讀 修改 無(wú)數(shù)據(jù)過(guò)濾 兩種方式設(shè)置 對(duì)于有數(shù)據(jù)過(guò)濾的模塊 不限制 list 操作 e 對(duì)于組織架構(gòu)關(guān)聯(lián)很大的主業(yè)務(wù)的配置 需要進(jìn)行本部門下的新增 刪除 修改 權(quán)限控制 對(duì)于閱讀的權(quán)限 采用數(shù)據(jù)過(guò)濾的方式 過(guò)濾掉非本部門的數(shù)據(jù) 同樣不限制 list 操作 默認(rèn)角色 ROLE 模塊名 英文 DEFAULT 定義于 模塊的默認(rèn)校驗(yàn) 名稱 模塊名 中文 默認(rèn)權(quán)限 描述 可訪問(wèn)模塊名 中文 中的其他頁(yè)面以及可以進(jìn)行模塊名 中文 中的其他操作 樣例 角色 ROLE SYSORG DEFAULT 名稱 組織架構(gòu) 默認(rèn)權(quán)限 描述 可訪問(wèn)組織架構(gòu)中的其他頁(yè)面以及可以進(jìn)行組織架構(gòu)中的其他操作 基礎(chǔ)信息維護(hù)者 ROLE 模塊名 英文 SETTING 定義于 簡(jiǎn)單的基礎(chǔ)信息維護(hù) 注意 簡(jiǎn)單的基礎(chǔ)信息一般指單表 名稱 模塊名 中文 維護(hù)基礎(chǔ)信息 描述 可維護(hù)模塊名 中文 中的基礎(chǔ)信息 樣例 角色 ROLE SYSORG SETTING 名稱 組織架構(gòu) 維護(hù)基礎(chǔ)信息 描述 可維護(hù)組織架構(gòu)中的基礎(chǔ)信息 新增角色 ROLE 表名 英文 CREATE 定義于 表的 add save saveadd 頁(yè)面 名稱 模塊名 中文 新增表名 中文 描述 可新增模塊名 中文 中的表名 中文 信息 樣例 角色 ROLE SYSORGDEPT CREATE 名稱 組織架構(gòu) 新增部門 描述 可新增組織架構(gòu)中的部門信息 刪除角色 ROLE 表名 英文 DELETE 定義于 表的 delete deleteall 頁(yè)面 名稱 模塊名 中文 刪除表名 中文 描述 可刪除模塊名 中文 中的表名 中文 信息 Landray 藍(lán)凌 版權(quán)所有 僅供藍(lán)凌內(nèi)部使用 不得外傳 第 21 頁(yè) 共 27 頁(yè) 藍(lán)凌藍(lán)凌 JAVA 產(chǎn)品開(kāi)發(fā)規(guī)范產(chǎn)品開(kāi)發(fā)規(guī)范 樣例 角色 ROLE SYSORGDEPT DELETE 名稱 組織架構(gòu) 刪除部門 描述 可刪除組織架構(gòu)中的部門信息 查閱角色 ROLE 表名 英文 VIEW 定義于 表的 view 和 list 頁(yè)面 注意跟 READER 的角色區(qū)分 一般用于無(wú)權(quán)限過(guò)濾的表 名稱 模塊名 中文 查閱表名 中文 描述 可查閱模塊名 中文 中的表名 中文 信息 樣例 角色 ROLE SYSORGDEPT VIEW 名稱 組織架構(gòu) 查閱部門 描述 可查閱組織架構(gòu)中的部門信息 編輯角色 ROLE 表名 英文 EDIT 定義于 表的 edit 和 update 頁(yè)面 注意跟 EDITOR 的角色區(qū)分 一般用于無(wú)權(quán)限過(guò)濾的表 名稱 模塊名 中文 編輯表名 中文 描述 可編輯模塊名 中文 中的表名 中文 信息 樣例 角色 ROLE SYSORGDEPT EDIT 名稱 組織架構(gòu) 編輯部門 描述 可編輯組織架構(gòu)中的部門信息 讀者角色 ROLE 表名 英文 READER 定義于 表 Model 的數(shù)據(jù)過(guò)濾器 一般用于有權(quán)限過(guò)濾的表 名稱 模塊名 中文 查看所有的表名 中文 描述 可查看模塊名 中文 中的所有表名 中文 信息 無(wú)論是否有授權(quán) 樣例 角色 ROLE SYSORGDEPT READER 名稱 組織架構(gòu) 查看所有的部門 描述 可查看組織架構(gòu)中的所有部門信息 無(wú)論是否有授權(quán) 讀者角色 ROLE 表名 英文 EDITOR 定義于 表 Model 的數(shù)據(jù)過(guò)濾器 一般用于有權(quán)限過(guò)濾的表 名稱 模塊名 中文 編輯所有的表名 中文 描述 可編輯模塊名 中文 中的所有表名 中文 信息 無(wú)論是否有授權(quán) 樣例 角色 ROLE SYSORGDEPT EDITOR 名稱 組織架構(gòu) 編輯所有的部門 描述 可編輯組織架構(gòu)中的所有部門信息 無(wú)論是否有授權(quán) 結(jié)合部門的角色 ROLE 表名 英文 DEPT OPT 定義于 表的 OPT 相關(guān)頁(yè)面 Landray 藍(lán)凌 版權(quán)所有 僅供藍(lán)凌內(nèi)部使用 不得外傳 第 22 頁(yè) 共 27 頁(yè) 藍(lán)凌藍(lán)凌 JAVA 產(chǎn)品開(kāi)發(fā)規(guī)范產(chǎn)品開(kāi)發(fā)規(guī)范 名稱 模塊名 中文 操作名本部門下的表名 中文 描述 可操作名模塊名 中文 中本部門下的表名 中文 信息 樣例 角色 ROLE SYSORGDEPT DEPT ADD 名稱 組織架構(gòu) 增加本部門下的部門 描述 可增加組織架構(gòu)中本部門下的部門信息 4 2 風(fēng)格規(guī)范 風(fēng)格規(guī)范 1 基本要求基本要求 程序結(jié)構(gòu)清析 簡(jiǎn)單易懂 單個(gè)函數(shù)的程序行數(shù)避免超過(guò) 100 行 單個(gè)類避 免超過(guò) 1000 行 盡量使用標(biāo)準(zhǔn)庫(kù)函數(shù)和公共函數(shù) 不要隨意定義全局變量 盡量使用局部變量 使用括號(hào)以避免二義性 如 if 和 else 基礎(chǔ)數(shù)據(jù)對(duì)象如 Long Double 等不能使用 new 方法直接初始化 要使用 ValueOf 方法 集合類要聲明集合元素的類型 如 Map map new HashMap 2 文件組織文件組織 Java 源文件還遵循以下規(guī)則 1 1 包和引入語(yǔ)句 Package and Import Statements 在多數(shù) Java 源文件中 第一個(gè)非注釋行是包語(yǔ)句 在它之后可以跟引入 語(yǔ)句 例如 package mon actions import java util Map import javax servlet ServletException import javax servlet http HttpServletRequest import org apache struts action ActionMapping 1 2 文件注釋 Beginning Comments 所有的源文件都應(yīng)該在有一個(gè) C 語(yǔ)言風(fēng)格的注釋 其中列出該類的使用說(shuō) 明 作者 版本信息 日期 Action基類 不建議直接繼承 僅當(dāng)ExtendAction完全無(wú)法滿足實(shí)際業(yè)務(wù) 需求時(shí)才繼承該類 使用范圍 Action層代碼 作為基類繼承 author 葉中奇 Landray 藍(lán)凌 版權(quán)所有 僅供藍(lán)凌內(nèi)部使用 不得外傳 第 23 頁(yè) 共 27 頁(yè) 藍(lán)凌藍(lán)凌 JAVA 產(chǎn)品開(kāi)發(fā)規(guī)范產(chǎn)品開(kāi)發(fā)規(guī)范 version 1 0 2006 04 02 3 注釋注釋 在處理過(guò)程的每個(gè)階段都有相關(guān)注釋說(shuō)明 特殊變量 結(jié)構(gòu) 聯(lián)合 類 或?qū)ο?定義或引用時(shí) 也應(yīng)寫注釋 有注釋有便于其他開(kāi)發(fā)人員或自己下 次查看代碼時(shí)候能很明白程序的意思 讀懂程序 可以減少內(nèi)部的溝通 程序可以有 4 種實(shí)現(xiàn)注釋的風(fēng)格 塊 block 單行 single line 尾端 trailing 和行末 end of line 1 塊注釋 Block Comments 塊注釋通常用于提供對(duì)文件 方法 數(shù)據(jù)結(jié)構(gòu)和算法的描述 塊注釋被 置于每個(gè)文件的開(kāi)始處以及每個(gè)方法之前 它們也可以被用于其他地方 比 如方法內(nèi)部 在功能和方法內(nèi)部的塊注釋應(yīng)該和它們所描述的代碼具有一樣 的縮進(jìn)格式 塊注釋之首應(yīng)該有一個(gè)空行 用于把塊注釋和代碼分割開(kāi)來(lái) 比如 Here is a block comment 2 單行注釋 Single Line Comments 短注釋可以顯示在一行內(nèi) 并與其后的代碼具有一樣的縮進(jìn)層級(jí) 如果 一個(gè)注釋不能在一行內(nèi)寫完 就該采用塊注釋 參見(jiàn) 塊注釋 單行注釋之前 應(yīng)該有一個(gè)空行 以下是一個(gè) Java 代碼中單行注釋的例子 if condition Handle the condition 3 尾端注釋 Trailing Comments 極短的注釋可以與它們所要描述的代碼位于同一行 但是應(yīng)該有足夠的 空白來(lái)分開(kāi)代碼和注釋 若有多個(gè)短注釋出現(xiàn)于大段代碼中 它們應(yīng)該具有 相同的縮進(jìn) 以下是一個(gè) Java 代碼中尾端注釋的例子 if a 2 return TRUE special case else return isPrime a works only for odd a 4 行末注釋 End Of Line Comments 注釋界定符

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論