軟體工程經驗點滴之程式碼易複製性
上一次粗略說了一下工程目錄的問題,這一章主要說說裡面的細節。裡面沒有過多的教科書經驗,都是些個人經驗,大家可以看成草根經驗吧,有認為不對的地方,大家可以發郵件給我 mailto:ttch007@sina.com,直接評論我的回覆時效性非常低。
上一節說的比較散亂,那麼下面我整理一個總綱,然後以後一個個的描述。
一個好的工程,最初的優良標準是程式碼是否易於複製,是否存在簡單模式搭配。
1.目錄名稱設定
目錄的
名稱設定
和術語``有
一定關係
,這樣方便於快速記憶
和查詢
,我最早接觸的一個大概有70萬程式碼量左右
的delphi工程
,是通過中文名設定工程目錄
的。對,你沒看錯,確實是中文名
。因為大部分都是術語型,翻譯後的詞彙無法直接準確,且我們掌握和溝通也存在十分嚴重的差異,所以中文大家一套術語就搞定了,你一說投保,大家都知道對應的目錄在哪?歸類下來,大概有幾種:
1、業務術語模型目錄(上面的例子)。
2、技術術語模型(比如引擎一個目錄目錄名稱,model一個目錄目錄名稱,view一個目錄名稱等等)
3、功能術語模型(會包含子模組為技術術語模組,此種較為優良)。
2.標準用語
比如投保,我們稱為Apl,等等細節的對錯不是特別重要,這個可以迭代式改進,因為促使定製一個完全無誤的術語模型,是需要很大精力和時間,這樣往往會導致專案上的延期。
比如如下例子:
function SaveApl:
Assert CheckApl//檢測投保人
Assert CheckIsd//檢測被保人
Assert Subj //檢測標的項
SaveApl//儲存被保險人
SaveIsd//儲存投保人
Save Subj//儲存標的
if Plc.state == PreApl:
SavePlc(Plc);
這樣的虛擬碼很容易就讓程式設計師理解。
3.標準場景
一般系統開發團隊,入場後,首先會編寫需求文件,但對於場景整理忽略性較大,所以到後期的調整和問題比較多,首先最大的問題是成本居高不下,為什麼呢?
1、標準的場景定義沒有,其實程式設計師是比較喜歡複製場景的,如果場景可以直接被呼叫,工程質量就會上一層次,比如核保中的校驗引數函式,可以定義一系列的場景文件對應模型,然後通過gendoc方式來生成,這樣程式設計師寫其他的程式的時候,可以通過直接呼叫,省略掉重複編寫的過程,這樣不會產生歧義程式碼,重複程式碼,亂程式碼,錯誤程式碼,標準就是一句話`修補總比重寫好`(配置系統另當別論)。
2、程式碼review做的時候沒有參考依據,大部分人以為review都以為review只是進行基本的程式碼模式和名稱格式和拼寫等檢查,其實review最好的做法是減少`癌細胞繁殖數量`,那麼參考依據就是標準場景定義。
標準場景我認為包括幾個部分:
1、Action(主要指業務Action層,業務的非資料庫處理邏輯部分。)
2、Model的CRUD。
3、Services層的事務函式術語。
4.標準邏輯
這節不需要過於累贅說臺多,因為其實這個就是指業務Action,業務的非資料庫處理邏輯,為什麼要做這部分呢?
1、減少程式設計師寫重複邏輯程式碼。
2、為了將來系統擴充套件有依據。
3、為了形成指令碼性靜態程式碼生成器做準備。
4、形成標準術語庫。
額,先寫到這,等下次再繼續。
相關文章
- 軟體工程管理的一點經驗之工程構建軟體工程
- VB程式設計經驗點滴程式設計
- VB程式介面設計經驗點滴 (轉)
- Oracle程式設計經驗及維護點滴(轉)Oracle程式設計
- [軟體工程]程式碼的複用與軟體企業管理軟體工程
- Win32ASM經驗點滴 (轉)Win32ASM
- Google 的軟體工程經驗總結Go軟體工程
- 下一代軟體工程的思考與點滴實踐軟體工程
- 軟體工程——程式編碼軟體工程
- Linux下燒錄CDR經驗點滴(轉)Linux
- RedHatLinux使用者管理經驗點滴(轉)RedhatLinux
- 程式碼中的軟體工程軟體工程
- MySQL複製之初體驗MySql
- [個體軟體過程]之缺陷管理--程式碼複查 (轉)
- Google工程師:複雜性是軟體的死敵Go工程師
- 複製程式碼
- oracle複製軟體排名『複製技術系列』Oracle
- Django之學習點滴Django
- oracle 複製中設定主體站點指令碼Oracle指令碼
- DB2使用經驗點滴(2008/10/31更新)DB2
- grid軟體複製到另外的節點啟動crs
- 點選按鈕複製連結程式碼例項
- 越做越複雜的軟體工程專案軟體工程
- 軟體工程與管理實驗3軟體工程
- 軟體可擴充套件性:來自星巴克的經驗套件
- 如何降低軟體的複雜性?
- 【軟體工程】軟體設計之總體設計軟體工程
- 一點一滴探究 JVM 之記憶體結構JVM記憶體
- JavaScript 點選複製選中文字程式碼例項JavaScript
- 點選按鈕複製文字框文字程式碼例項
- 淺談軟體工程中的程式碼評審軟體工程
- Golang工程經驗Golang
- [課程複習] 軟體工程導論之經典題目回顧 (一)選擇題、填空題1軟體工程
- 軟體工程--總作業(已經完成)軟體工程
- 驗證碼機制之驗證碼重複使用
- 複雜性正在殺死軟體開發者
- 大眾點評點餐小程式開發經驗 - 原始碼解析原始碼
- [個體軟體過程]之缺陷管理--C++程式碼複查指南和檢查表 (轉)C++