麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > Delphi > 正文

Delphi代碼創(chuàng)建形式規(guī)范

2019-11-18 18:32:22
字體:
供稿:網(wǎng)友
Delphi代碼創(chuàng)建形式規(guī)范
本規(guī)范的目的:給自己的代碼一個(gè)統(tǒng)一而標(biāo)準(zhǔn)的外觀,增強(qiáng)
              可讀性,可理解性,可維護(hù)性
本規(guī)范的原則:名稱反映含義,形式反映結(jié)構(gòu)

1、單元風(fēng)格

 
{*******************************************************}
{                                                       }
{                     項(xiàng)目名稱                          }
{                                                       }
{            版權(quán)所有 (C) 2000,2001 公司名稱            }
{                                                       }
{*******************************************************}


unit UnitName;
{*******************************************************
項(xiàng)目:
模塊:
描述:
版本:
日期:
作者:
更新:
TODO:
*******************************************************}

interface

uses
   ----,----,----,----,----,----,----,----,----,----,----, 
   ----,----, ----,----,----,----;

const
   --------------------;
   --------------------;
   --------------------;
 
type
   --------------------;
   --------------------;
   --------------------;
    --------------------;
   --------------------;
   --------------------;

var
   --------------------;
   --------------------;
   --------------------;

implementation

uses
   ----,----,----,----;

{$R *.RES}
{$R *.DFM}

--------------------------------;
--------------------------------;
--------------------------------;
--------------------------------;
--------------------------------;
--------------------------------;
--------------------------------;
--------------------------------;
--------------------------------;
--------------------------------;
--------------------------------;
--------------------------------;

end.

2、各區(qū)風(fēng)格

0、注釋與空白

   用{ } 不用 //
   主題注釋,函數(shù)過程目的說明,語句注釋
   空行 :版權(quán)塊,類之間,方法之間--(兩行) 方法內(nèi)部塊(一行)
   空格 :用以增強(qiáng)清晰度                        
   縮進(jìn) :兩個(gè)空格 

1、常量區(qū)

基本:
Const
  -----    = ----;
  -----    = ----;
  -----    = ----;
  -----    = ----;
擴(kuò)展
前綴:  少則C_---;多則可以每個(gè)主題有一個(gè)前綴
Const

  { 主題1 }
  C_---    = ----;  { 含義 }
  C_---    = ----;  { 含義 }
  C_---    = ----;  { 含義 }
  C_---    = ----;  { 含義 }
  { 主題2 }
  -----    = ----;
  -----    = ----;
  -----    = ----;
  -----    = ----;
資源字符串,放在變量區(qū)后面

resourcestring

const
  S_---    = '----';
  S_---    = '----';
  S_---    = '----';

例子:
   CM_BASE                 = $B000;
   CM_ACTIVATE             = CM_BASE + 0;
   CM_DEACTIVATE           = CM_BASE + 1;
   CM_GOTFOCUS             = CM_BASE + 2;
   CM_LOSTFOCUS            = CM_BASE + 3;
    NumPaletteEntries = 20;
    BoxPoints : array[0..5, 0..2] of GLfloat =
              (  (-1,  0,  0),
                  ( 0,  1,  0),
                  ( 1,  0,  0),
                  ( 0, -1,  0),
                  ( 0,  0,  1),
                  ( 0,  0, -1)  );

   { Variant type codes (wtypes.h) }

    varEmpty       = $0000; { vt_empty   }
    varNull        = $0001; { vt_null        }
    varSmallint    = $0002; { vt_i2          }
   GIFVersions : array[gv87a..gv89a] of TGIFVersionRec = ('87a', '89a');

2、類型區(qū)

   數(shù)據(jù)類型-->不提供服務(wù)的數(shù)據(jù)類型
   T---- = ---------
   對象類型-->有狀態(tài)并提供服務(wù)的實(shí)體
   T---- = class(----)
   PRivate
     --------
     --------
   protected
     --------
     --------
   public
       --------
       --------
   published
       --------
      --------
   end;
   按字母排序
Private
   1、所有數(shù)據(jù)放在Private 區(qū),以F打頭
   2、所有事件屬性對應(yīng)的方法指針放在Private 區(qū),以F打頭
   3、屬性的Get與Set方法放在Private 區(qū)-->不準(zhǔn)備被繼承
   4、響應(yīng)消息的方法放在Private 區(qū)
protected
   1、被子類調(diào)用的但不能被外界調(diào)用的方法與屬性
   2、供子類重載的方法 virsual;      virsual;  abstract
public
   1、構(gòu)建析構(gòu)方法
   2、供外界調(diào)用的方法
   3、供外界調(diào)用的屬性
published
   1、出現(xiàn)在Object Inspector里供設(shè)計(jì)時(shí)用的屬性
   2、出現(xiàn)在Object Inspector里供設(shè)計(jì)時(shí)用的事件響應(yīng) 
例子:
  TGIFVersion = (gvUnknown, gv87a, gv89a);
  TGIFVersionRec = array[0..2] of char;
  PInterfaceTable = ^TInterfaceTable;
  TInterfaceTable = packed record
  EntryCount: Integer;
  Entries: array[0..9999] of TInterfaceEntry;

  { forWord declairation } 
 TGIFImage = class;
  TGIFSubImage = class;
  {---------------------------
           TGIFItem
   ---------------------------}
  TGIFItem = class(TPersistent)
  private
    FGIFImage: TGIFImage;
  .............
  end; 

3、變量區(qū)

 定義全局變量
 注意不要有缺省的類對象變量,在調(diào)用者中聲明!
 var
 -----------: -------;
 -----------: -------;
 例子:
 GIFDelayExp: integer = 10;          { Delay multiplier in mS.}
 GIFDelayExp: integer = 12; 

4、實(shí)現(xiàn)區(qū)

{---------------------------------------------------------
                        主題
----------------------------------------------------------}

{ 方法的目的 }
procedure  ----------------------------
begin
  --------;
  --------;
end;

{ 方法的目的 }
function  -----------------------------
begin
  --------;
  --------;
end;

5、過程與函數(shù)

   命名
   格式
  返回


上一篇:NeHe的opengl教程delphi版(8)----簡單的透明

下一篇:代碼重構(gòu)——之獲得封裝性DELPHI編碼實(shí)例

發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
學(xué)習(xí)交流
熱門圖片

新聞熱點(diǎn)

疑難解答

圖片精選

網(wǎng)友關(guān)注

主站蜘蛛池模板: 亚洲免费视频一区 | 国产一区二区三区四区波多野结衣 | 免费久久久久久 | 综合图区亚洲 | 欧美性受xxxx人人本视频 | 日本一道aⅴ不卡免费播放 久久久久久久高清 | 久草在线视频在线 | 二区视频| 日本特级a一片免费观看 | 国产免费大片视频 | 中文字幕涩涩久久乱小说 | av国产在线被下药迷网站 | 精品成人av一区二区在线播放 | 亚洲福利在线观看视频 | 久久亚洲精品久久国产一区二区 | 男女羞羞的视频 | 国产成年人网站 | 国产精品久久99精品毛片三a | 午夜爱爱福利 | 久久精国 | 正在播放91精 | 国产精品一区二区三区99 | 亚洲精品久久久久久 | 国产深夜福利视频在线播放 | 久久55 | 视频一区二区中文字幕 | 欧美国产精品久久 | 制服丝袜日日夜夜 | 日韩毛片免费观看 | 91麻豆蜜桃一区二区三区 | 国产亚洲精品久久午夜玫瑰园 | 一区在线免费视频 | 国产精品欧美久久久久一区二区 | 欧美精品日日鲁夜夜添 | 国产日韩在线观看一区 | 日韩深夜视频 | 欧美一级α | 成人做爽爽爽爽免费国产软件 | 欧美日韩在线播放 | 久久精品a一级国产免视看成人 | 激情视频在线播放 |