Panorama系統程式開發規範

風塵璞發表於2016-10-01

                         編排

 

函式間要有空行分開,一個程式中的空行數目最好佔8%-16% ;

 

變數的定義儘可能放在最開始處,多型函式和功能相近的函式集中放在一起;

宣告變數時對齊變數名,並在定義時加以註釋說明

 

                          程式開發環境規約

工作目錄結構的規定:
project name(專案名稱)
——bin    執行檔案
 ——log    日誌檔案
——lib    庫檔案
——include標頭檔案
——src    源程式
——dat    資料檔案

 

2工程中不起作用的檔案或類應刪除,工程目錄下的非工程檔案也應該移走,保持工程的清潔,避免混淆難於管理;

 

3VC環境下,建議將常用的標頭檔案全部放入stdafx.h中,而在每個cpp開始處嵌入stdafx.h。避免標頭檔案的交叉引用,如果有嚴重的交叉引用,適當使用類的宣告。

將獨立性比較強的模組抽出來,做成DLL,控制元件或COM元件,該模組可單獨編寫和測試,也增強了其可重用性。

一個比較大的工程應留有一定的訊息介面或外掛介面等。

工程的版本控制要嚴格,版本格式為xx.xx.xx,必要時使用Build次數或日期。高版本儘量相容低版本的用法、資料或協議。

工程的編譯巨集定義和工程引數設定應正確,每作一個新工程時應檢查工程引數是否正確。建議位元組對齊方式為1位元組對齊。

                          程式備份



1. 要有備份記錄

備份時註明備份日期和主要增加的功能

2. 定時備份

    根據程式量的多少,可以每天備份一次,也可以半天備份。

 

3. 多種介質備份

   至少在硬碟上做2個備份,在軟盤上做一個備份;在使用他人主機進行備份時,不可放於沒有密碼保護的ftp伺服器上,可以傳送到自己的email信箱中進行備份。   

    

在軟盤上備份時,應該去掉中間檔案和執行檔案,vc可以自動生成的檔案如*.clw, *.ncb, *.opt等也可刪除,最後壓成一個zip檔案,複製到軟盤中。

 

 

 

                         VC程式介面設計規範

 

1.顏色選擇:

 1.1 基調應以WINDOWS顏色(灰色)為主,同一個窗體中除白、黑、灰色之外,其它的顏色總數不宜超過3種(對以生產和學習為目的的軟體而言,娛樂性軟體可以做得花哨一些;

  1.2 窗體和控制元件(除EDITRICH EDIT等編輯控制元件外)的背景色也宜用灰色,當一個控制元件有輸入焦點或滑鼠焦點時,可以用較明亮的顏色;

  1.3 非啟用狀態下,字型前景宜用黑色,背景用灰色;

 

.2.字型的選擇:

 2.1 漢字字型一般選宋體,字型大小選10號;

.2.2 一般選系統常用的字型,絕對不要選自己加入的而系統沒有的字型;

 

3.圖片的選擇

  3.1 在窗體的工具攔中的按鈕可以用圖示,文字可以寫上也可以不寫,如果不寫則一定要使用tip來提示使用者該按鈕完成的功能;

 3.2 在按鈕中使用的圖片要能表達按鈕對應功能的意義;

 3.3 不宜對普通的按鈕只用圖示做外觀;

 

.4.操作的便利性

 4.1 為方便使用者的使用,所有的輸入控制元件應該按tab鍵和Enter鍵排序,特別是密碼輸入時,應該能用回車切換輸入框的焦點;

 

5.資料安全

 5.1 對程式的退出、寫資料等有破壞可能或資料丟失可能的操作應該給使用者一次確認的機會;

 

6.幫助檔案

6.1 幫助檔案宜用html格式,因為hlp格式的檔案只能在windows中用;

 

7.窗體大小的確定

  7.1 一般窗體的大小應該可以讓使用者自己調整,窗體的初始長寬比例為43

 7.2 要考慮到使用者可能會用到不同的解析度,在開發時應使用當時流行的解析度;

 7.3 除非必要,否則不宜用模態窗體,但可以讓使用者選擇使窗體成為模態窗體;

  7.4 應用程式的大小不固定時(拖動視窗的右下角時可以改變窗體大小),應處理窗體變化時窗體內各控制元件大小和位置的變化;

 

8.檢視的選擇(/多文件介面型別)

  8.1 對於一個簡單的文字編輯器應用程式,選擇CEditView;

  8.2 對於一個能編輯多資訊文字格式( RT F )檔案的應用程式,選擇CRichEditView(這一選擇將導致應用程式為文件類選擇CRichEditDoc);

 8.3 對於一個圖形應用程式,選擇CScrollView;

  8.4 對於一個簡單的監控或帳目管理應用程式,選擇CListView;

  8.5 要著手建立一個資源管理器型別的應用程式,請選擇CTreeView(在以後的步驟中,可以手工新增一個

CListView);

 8.6 在對話方塊模板外建立一個檢視,選擇CFormView(一個對話方塊是一個被幾個控制元件視窗占據的視窗,諸如按鈕和編輯框);

 

9. MFC應用程式型別的選擇:

  9.1 如果建立一個使用者介面需求有限的應用程式,或如果想介面完全單一,那麼就建立一個對話方塊應用程式。典型的對話方塊應用程式包括配置硬體裝置的應用程式、螢幕保護程式和遊戲程式等;

對話方塊要易用且簡潔,字型和控制元件的組織搭配要得體,能簡單不復雜,各控制元件的焦點、Tab順序等要講究,視應用場合要適當支援鍵盤。在簡潔易用的前提下,力求個性化,設計得更加友好。程式各對話方塊的風格要保持一致。

  9.2 如果應用程式要編輯一個文件,應該選擇單/多文件介面型別。這裡的“編輯一個文件”是廣義上的意思,所指的文件可以是一個文字檔案、電子資料表檔案、第三方資料庫的一個或多個表、或者是自己的二進位制檔案,甚至可以是大量硬體裝置的儲存設定。編輯僅僅表示對其中任何一個型別的文件進行新增、刪除或修改操作。

  9.3 單文件介面應用程式一次只允許處理一個文件。如果應用程式實際上一次只需處理一個文件,諸如監視一組硬體裝置的應用程式,那麼應該選擇單文件介面;否則應該建立一個多文件介面應用程式,即使在開始時一次編輯多個文件並未顯出有任何好處。

9.4 一個多文件介面應用程式允許一次編輯多個文件,它並不比一個單文件介面應用程式複雜,但卻帶來了一次至少檢視多個文件的方便。

9.5 在重要的視窗或區域應能彈出右鍵,實現常見操作。工具欄上放最常用的操作按鈕,必要時動態更換按鈕。狀態列顯示足夠多的有用資訊。訊息主控在Mainframe中,單文件的主控也可在View中,所有的對話方塊的彈出或非模態對話方塊的控制都在主控視窗中完成,具體的資料處理放在單獨的檔案中或設計成類。在App類中實現Ini讀寫,各資料物件的定義和析構,全域性變數的賦值和初始計算,存檔退出等。各檢視的OnDrawGDI畫圖儘量使用記憶體點陣圖的方式,以免閃爍。

10. 操作進度指示

10.1 把滑鼠游標暫時變成沙漏形狀,以指示一個漫長的操作,要求使用者應該等待。

 10.2 可以用沙漏游標指示短暫的等待。對於長時間的等待,可以考慮使用一個無模式對話方塊,並在上面顯示簡短的訊息,描述正進行什麼處理;

 

11. 分隔線控制元件

 11.1 為統一起見不要使用分組框、按鈕等控制元件做分隔線,應按如下做法:用Picture Control,屬性設為EtchedFrame,使該控制元件縮小到一條直線;

相關文章