| 導購 | 订阅 | 在线投稿
分享
 
 
當前位置: 王朝網路 >> delphi >> Delphiwe編寫規範
 

Delphiwe編寫規範

2006-12-17 09:48:34  編輯來源:互聯網  简体版  手機版  評論  字體: ||
 
 
  Delphiwe編寫規範

  

  Delphiwe編寫規範 程 序 編 寫 規 範

  1、 變量聲明d

   所有的變量不 論類型, 均以v開頭, 如:

  var vWorkerName:string;

  vYear:integer;

  vDate:tdate;

   _recordset對象的前綴爲vrs。

   特殊的變量:vSql:基本上所有的SQL語句均先用變量vSql斌值, 如:

   var vSql:string;

   begin

   vsql:=』select a.fdworker 『;

   vsql:=vsql+』 from tabworker a 『;

   end;

  控件命名

  類 前綴 示例

  TEdit ed edWorkerNo

  TDBGrid grd grdWorker

  TCombobox cbo cboWorker

  TDateTimePicker dp dpDate

  TButton c cOk cCancel

  TCheckBox chk chkCancel

  TSpeedButton sb sbWorker

  TClientDataSet cln clnWorker

  TDataSource ds dsWorker

  TAdoDataSet adods adodsWorker

  TPanel pan panTop

  TForm frm frmWorker

  TDataSetProvider pvd pvdWorker

  TTreeview trv trvRawType

  TListview lst lstWorker

  TPageControl pc pcWorkerInformation

  TImage img imgWorker

  TMemo ed edMemo

  2、 函數及過程的命名3、

   函數的前綴用f

  例如:處理數據檢查的函數:function fCheckData:boolean;

   過程的前綴用p

  例如:處理工人離職的過程:procedure pWorkerLeave;

  命名規則

   所有變量或控件的命名 均采取英文意義命名, 並且盡量不 要用縮寫。

  例如: 對輸入工人姓名的TEdit的命名爲:edWorkerName

  而不要命名爲:edWN等縮寫形式

  

   數據表的前綴爲tab, 字段的前綴爲fd。

  例如: 工人表的名稱爲:tabworker

  工人編號的字段爲:fdworkerno

  數據庫操作方法

   操作數據庫(選擇、插入、更新、刪除):基本上用SQL語句來操作數據庫, 避免用Data Aware類的控件來操作數據庫。

  例如:插入一條生産記錄:

   var vSql:string;

   vWorkerID:string;

   vProductNum:string;

   begin

   xxxxxx;

   ………;

   vsql:=』insert into tabproduct (fddate,fdworkerid,fdproductnum) values(『;

   vsql:=vsql+vinfo.vdbsqldate(date);

   vsql:=vsql+』,』+(vWorkerID);

   vsql:=vsql+』,』+(vProductNum);

   vsql:=vsql+』)』;

   vinfo.execute(vsql);

   end;

  *注:vinfo代表一個自定義類TInfo的一個實例,裏面封裝了各種函數,具體內容在後面有說明。

   用TDBGrid顯示數據的方法:

  1. 使用TDBGrid TDataSource TClientDataSet TDataSetProvider TAdoDataSet控件。

  2. 連接方式爲TDBGrid->TDataSource->TClientDataSet->TDataSetProvider->TAdoDataSet

  3. 先用_recordset對象來接收數據,4. 然後把_recordset對象斌給TAdoDataSet控件,5. 再調用TClientDataSet的Close方法、Open方法。

   多用戶操作數據的處理:通常把要操作的表進行鎖定, 鎖定方法爲用TInfo類的pLockTable方法。

  數據合法性檢查方法

   通常在要保存數據的時候之前進行數據合法性的檢查, 不 要在輸入的時候檢查數據的合法性。

  檢查包括:

  1. 檢查是否是整數;

  用類TInfo的fIsInt函數判斷。

  2. 檢查是否是浮點數;

  用類TInfo的fIsFloat函數判斷。

  3. 檢查是否是日期;

  日期用TDateTimePicker來進行輸入,通常不用檢查。

  4. 檢查是否沒有輸入;

  用類TInfo的flen函數判斷。

  5. 數據完整性的檢查(檢查內容會在開發文檔中說明);

  6. 數據邏輯性的檢查(檢查內容會在開發文檔中說明);

   對于字符類型的數據, 注意一定要用trim函數清除前後的空格。

  類TInfo的說明

  Tinfo類封裝了一些基本的函數、過程及常數:

   函數及過程:

  6. function fIsFloat(vData:string):boolean;

  7. function fIsInt(vData:string):boolean;

  8. function fLen(vData:string):boolean;

  9. procedure pBeginTrans;//事務開始

  10. procedure pCommitTrans;//事務提交

  11. procedure pRollBack;//事務回滾

  12. procedure execute(const vSql:string;var vRs:_recordset;vAbort:boolean=false);overload;

  安全的SQL執行函數1,vSql爲要執行的SQL語句,vrs爲接收返回值的_recordset對象,vAbort表示當發生屬于連接(網絡中斷)的錯誤時,是否中止處理。通常執行包含在一個事務裏的SQL語句時用true,而不在事務裏的SQL語句不用指定。

  例如: var vSql:string;

   vrsWorker

   begin

   vsql:=』select a.fdworkerno,a.fdworkername 『;

   vsql:=vsql+』 from tabworker a 『;

  vinfo.execute(vsql,vrsworker);//這句沒有指定vabort,則缺省爲false

  {上面這一句在執行,如果網絡中斷,導致不能連接到數據庫,則會進行提示是否要重試,如果不要重試,則退出整個系統;如果重試,則會重試連接到數據庫,但如果仍然不能連接,則重複進行提示直到連接上或由用戶取消連接以退出系統}

  vinfo.execute(vsql,vrsworker,true);//這句指定vabort

  {上面這一句在執行,如果網絡中斷,導致不能連接到數據庫,則會進行提示不能連接到數據庫,所以執行中止。並會嘗試連接到數據庫。如果不能連接,則提示是否要重試,如果不要重試,則退出整個系統;如果重試,則會重試連接到數據庫,但如果仍然不能連接,則重複進行提示直到連接上或由用戶取消連接以退出系統}

   end;

  

  13. procedure execute(const vSql:string;vAbort:boolean=false);overload;

  安全的SQL執行函數2,與1的區別在于1有返回數據集。

   常數:

  1. vDateStr:當前計算機的日期格式,2. 如果當前計算機的格式爲2位年份,3. 則轉化爲4位年份。

  例如:當前計算機的短日期格式爲』yy-mm-dd』,則vDateStr爲』yyyy-mm-yy』。

  4. vCurrentUserNo:當前登錄的操作員的編號。

  5. vCurrentUserName:當前登錄的操作員的名6. 稱。
 
 
 
上一篇《在Delphi中實現類型安全的容器,Delphi泛型庫DGL引介(提供源碼下載)》
下一篇《用Delphi設計的網絡營銷軟件》
 
 
 
 
 
 
日版寵物情人插曲《Winding Road》歌詞

日版寵物情人2017的插曲,很帶節奏感,日語的,女生唱的。 最後聽見是在第8集的時候女主手割傷了,然後男主用嘴幫她吸了一下,插曲就出來了。 歌手:Def...

兄弟共妻,我成了他們夜裏的美食

老鍾家的兩個兒子很特別,就是跟其他的人不太一樣,魔一般的執著。兄弟倆都到了要結婚的年齡了,不管自家老爹怎麽磨破嘴皮子,兄弟倆說不娶就不娶,老父母爲兄弟兩操碎了心...

如何磨出破洞牛仔褲?牛仔褲怎麽剪破洞?

把牛仔褲磨出有線的破洞 1、具體工具就是磨腳石,下面墊一個硬物,然後用磨腳石一直磨一直磨,到把那塊磨薄了,用手撕開就好了。出來的洞啊很自然的。需要貓須的話調幾...

我就是掃描下圖得到了敬業福和愛國福

先來看下敬業福和愛國福 今年春節,支付寶再次推出了“五福紅包”活動,表示要“把欠大家的敬業福都還給大家”。 今天該活動正式啓動,和去年一樣,需要收集“五福”...

冰箱異味産生的原因和臭味去除的方法

有時候我們打開冰箱就會聞到一股異味,冰箱裏的這種異味是因爲一些物質發出的氣味的混合體,聞起來讓人惡心。 産生這些異味的主要原因有以下幾點。 1、很多人有這種習...

《極品家丁》1-31集大結局分集劇情介紹

簡介 《極品家丁》講述了現代白領林晚榮無意回到古代金陵,並追隨蕭二小姐化名“林三”進入蕭府,不料卻陰差陽錯上演了一出低級家丁拼搏上位的“林三升職記”。...

李溪芮《極品家丁》片尾曲《你就是我最愛的寶寶》歌詞

你就是我最愛的寶寶 - 李溪芮 (電視劇《極品家丁》片尾曲) 作詞:常馨內 作曲:常馨內 你的眉 又鬼馬的挑 你的嘴 又壞壞的笑 上一秒吵鬧 下...

烏梅的功效與作用以及烏梅的食用禁忌有哪些?

烏梅,又稱春梅,中醫認爲,烏梅味酸,性溫,無毒,具有安心、除熱、下氣、祛痰、止渴調中、殺蟲的功效,治肢體痛、肺痨病。烏梅泡水喝能治傷寒煩熱、止吐瀉,與幹姜一起制...

什麽是脂肪粒?如何消除臉部脂肪粒?

什麽是脂肪粒 在我們的臉上總會長一個個像脂肪的小顆粒,弄也弄不掉,而且顔色還是白白的。它既不是粉刺也不是其他的任何痘痘,它就是脂肪粒。 脂肪粒雖然也是由油脂...

網絡安全治理:國家安全保障的主要方向是打擊犯罪,而不是處置和懲罰受害者

來源:中國青年報 新的攻擊方法不斷湧現,黑客幾乎永遠占據網絡攻擊的上風,我們不可能通過技術手段杜絕網絡攻擊。國家安全保障的主要方向是打擊犯罪,而不是處置和懲罰...

河南夫妻在溫嶺網絡直播“造人”內容涉黃被刑事拘留

夫妻網絡直播“造人”爆紅   1月9日,溫嶺城北派出所接到南京警方的協查通告,他們近期打掉了一個涉黃直播APP平台。而根據掌握的線索,其中有一對涉案的夫妻主播...

如何防止牆紙老化?牆紙變舊變黃怎麽辦?

如何防止牆紙老化? (1)選擇透氣性好的牆紙 市場上牆紙的材質分無紡布的、木纖維的、PVC的、玻璃纖維基材的、布面的等,相對而言,PVC材質的牆紙最不透氣...

鮮肌之謎非日本生産VS鮮肌之謎假日貨是謠言

觀點一:破日本銷售量的“鮮肌之謎” 非日本生産 近一段時間,淘寶上架了一款名爲“鮮肌之謎的” 鲑魚卵巢美容液,號稱是最近日本的一款推出的全新護膚品,産品本身所...

中國最美古詩詞精選摘抄

系腰裙(北宋詞人 張先) 惜霜蟾照夜雲天,朦胧影、畫勾闌。人情縱似長情月,算一年年。又能得、幾番圓。 欲寄西江題葉字,流不到、五亭前。東池始有荷新綠,尚小如...

關于女人的經典語句

關于女人的經典語句1、【做一個獨立的女人】 思想獨立:有主見、有自己的人生觀、價值觀。有上進心,永遠不放棄自己的理想,做一份自己喜愛的事業,擁有快樂和成就...

未來我們可以和性愛機器人結婚嗎?

你想體驗機器人性愛嗎?你想和性愛機器人結婚嗎?如果你想,機器人有拒絕你的權利嗎? 近日,第二屆“國際人類-機器人性愛研討會”大會在倫敦金史密斯大學落下帷幕。而...

全球最變態的十個地方

10.土耳其地下洞穴城市 變態指數:★★☆☆☆ 這是土耳其卡帕多西亞的一個著名景點,傳說是當年基督教徒們爲了躲避戰爭而在此修建。裏面曾住著20000人,...

科學家稱,人類死亡後意識將在另外一個宇宙中繼續存活

據英國《每日快報》報道,一位科學家兼理論家Robert Lanza博士宣稱,世界上並不存在人類死亡,死亡的只是身體。他認爲我們的意識借助我們體內的能量生存,而且...

《屏裏狐》片頭曲《我愛狐狸精》歌詞是什麽?

《我愛狐狸精》 - 劉馨棋   (電視劇《屏裏狐》主題曲)   作詞:金十三&李旦   作曲:劉嘉   狐狸精 狐狸仙   千年修...

 
 
 
Delphiwe編寫規範 Delphiwe編寫規範 程 序 編 寫 規 範 1、 變量聲明d  所有的變量不 論類型, 均以v開頭, 如: var vWorkerName:string; vYear:integer; vDate:tdate;  _recordset對象的前綴爲vrs。  特殊的變量:vSql:基本上所有的SQL語句均先用變量vSql斌值, 如: var vSql:string; begin vsql:=』select a.fdworker 『; vsql:=vsql+』 from tabworker a 『; end; 控件命名 類 前綴 示例 TEdit ed edWorkerNo TDBGrid grd grdWorker TCombobox cbo cboWorker TDateTimePicker dp dpDate TButton c cOk cCancel TCheckBox chk chkCancel TSpeedButton sb sbWorker TClientDataSet cln clnWorker TDataSource ds dsWorker TAdoDataSet adods adodsWorker TPanel pan panTop TForm frm frmWorker TDataSetProvider pvd pvdWorker TTreeview trv trvRawType TListview lst lstWorker TPageControl pc pcWorkerInformation TImage img imgWorker TMemo ed edMemo 2、 函數及過程的命名3、  函數的前綴用f 例如:處理數據檢查的函數:function fCheckData:boolean;  過程的前綴用p 例如:處理工人離職的過程:procedure pWorkerLeave; 命名規則  所有變量或控件的命名 均采取英文意義命名, 並且盡量不 要用縮寫。 例如: 對輸入工人姓名的TEdit的命名爲:edWorkerName 而不要命名爲:edWN等縮寫形式  數據表的前綴爲tab, 字段的前綴爲fd。 例如: 工人表的名稱爲:tabworker 工人編號的字段爲:fdworkerno 數據庫操作方法  操作數據庫(選擇、插入、更新、刪除):基本上用SQL語句來操作數據庫, 避免用Data Aware類的控件來操作數據庫。 例如:插入一條生産記錄: var vSql:string; vWorkerID:string; vProductNum:string; begin xxxxxx; ………; vsql:=』insert into tabproduct (fddate,fdworkerid,fdproductnum) values(『; vsql:=vsql+vinfo.vdbsqldate(date); vsql:=vsql+』,』+(vWorkerID); vsql:=vsql+』,』+(vProductNum); vsql:=vsql+』)』; vinfo.execute(vsql); end; *注:vinfo代表一個自定義類TInfo的一個實例,裏面封裝了各種函數,具體內容在後面有說明。  用TDBGrid顯示數據的方法: 1. 使用TDBGrid TDataSource TClientDataSet TDataSetProvider TAdoDataSet控件。 2. 連接方式爲TDBGrid->TDataSource->TClientDataSet->TDataSetProvider->TAdoDataSet 3. 先用_recordset對象來接收數據,4. 然後把_recordset對象斌給TAdoDataSet控件,5. 再調用TClientDataSet的Close方法、Open方法。  多用戶操作數據的處理:通常把要操作的表進行鎖定, 鎖定方法爲用TInfo類的pLockTable方法。 數據合法性檢查方法  通常在要保存數據的時候之前進行數據合法性的檢查, 不 要在輸入的時候檢查數據的合法性。 檢查包括: 1. 檢查是否是整數; 用類TInfo的fIsInt函數判斷。 2. 檢查是否是浮點數; 用類TInfo的fIsFloat函數判斷。 3. 檢查是否是日期; 日期用TDateTimePicker來進行輸入,通常不用檢查。 4. 檢查是否沒有輸入; 用類TInfo的flen函數判斷。 5. 數據完整性的檢查(檢查內容會在開發文檔中說明); 6. 數據邏輯性的檢查(檢查內容會在開發文檔中說明);  對于字符類型的數據, 注意一定要用trim函數清除前後的空格。 類TInfo的說明 Tinfo類封裝了一些基本的函數、過程及常數:  函數及過程: 6. function fIsFloat(vData:string):boolean; 7. function fIsInt(vData:string):boolean; 8. function fLen(vData:string):boolean; 9. procedure pBeginTrans;//事務開始 10. procedure pCommitTrans;//事務提交 11. procedure pRollBack;//事務回滾 12. procedure execute(const vSql:string;var vRs:_recordset;vAbort:boolean=false);overload; 安全的SQL執行函數1,vSql爲要執行的SQL語句,vrs爲接收返回值的_recordset對象,vAbort表示當發生屬于連接(網絡中斷)的錯誤時,是否中止處理。通常執行包含在一個事務裏的SQL語句時用true,而不在事務裏的SQL語句不用指定。 例如: var vSql:string; vrsWorker begin vsql:=』select a.fdworkerno,a.fdworkername 『; vsql:=vsql+』 from tabworker a 『; vinfo.execute(vsql,vrsworker);//這句沒有指定vabort,則缺省爲false {上面這一句在執行,如果網絡中斷,導致不能連接到數據庫,則會進行提示是否要重試,如果不要重試,則退出整個系統;如果重試,則會重試連接到數據庫,但如果仍然不能連接,則重複進行提示直到連接上或由用戶取消連接以退出系統} vinfo.execute(vsql,vrsworker,true);//這句指定vabort {上面這一句在執行,如果網絡中斷,導致不能連接到數據庫,則會進行提示不能連接到數據庫,所以執行中止。並會嘗試連接到數據庫。如果不能連接,則提示是否要重試,如果不要重試,則退出整個系統;如果重試,則會重試連接到數據庫,但如果仍然不能連接,則重複進行提示直到連接上或由用戶取消連接以退出系統} end; 13. procedure execute(const vSql:string;vAbort:boolean=false);overload; 安全的SQL執行函數2,與1的區別在于1有返回數據集。  常數: 1. vDateStr:當前計算機的日期格式,2. 如果當前計算機的格式爲2位年份,3. 則轉化爲4位年份。 例如:當前計算機的短日期格式爲』yy-mm-dd』,則vDateStr爲』yyyy-mm-yy』。 4. vCurrentUserNo:當前登錄的操作員的編號。 5. vCurrentUserName:當前登錄的操作員的名6. 稱。
󰈣󰈤
 
 
 
  免責聲明:本文僅代表作者個人觀點,與王朝網路無關。王朝網路登載此文出於傳遞更多信息之目的,並不意味著贊同其觀點或證實其描述,其原創性以及文中陳述文字和內容未經本站證實,對本文以及其中全部或者部分內容、文字的真實性、完整性、及時性本站不作任何保證或承諾,請讀者僅作參考,並請自行核實相關內容。
 
 
陽光靓麗的模特兒(8)
陽光靓麗的模特兒(7)
陽光靓麗的模特兒(6)
陽光靓麗的模特兒(5)
秋-印象
德慶盤龍峽 一
松江印象之三
雲之南(寬幅)
 
>>返回首頁<<
 
 
 
 熱帖排行
 
 
 
 
© 2005- 王朝網路 版權所有