免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費(fèi)電子書(shū)等14項(xiàng)超值服

開(kāi)通VIP
『Delphi園地』-一個(gè)程序員的開(kāi)發(fā)習(xí)慣(ZT)
一個(gè)程序員的開(kāi)發(fā)習(xí)慣(ZT)
有關(guān)開(kāi)發(fā)習(xí)慣的一些想法,如鯁在喉,不吐不快。究其發(fā)貼動(dòng)機(jī),當(dāng)然不排除有騙取參與分的可能,但另一方面,也希望能給同行(念Xing)者提供一些建議,或者參考(希望不是誤人子弟)。同時(shí),也希望各位能夠就我的這些陋習(xí),發(fā)表一點(diǎn)看法,給出批評(píng)和指正的意見(jiàn)。謝謝。
一.建立工程目錄
首先,第一步要做的,當(dāng)然是給新項(xiàng)目建一個(gè)單獨(dú)的目錄(別笑)。目錄名稱與項(xiàng)目名稱同名,或者另取一個(gè)也可,只要清楚、簡(jiǎn)練。然后,在此目錄中創(chuàng)建以下各個(gè)目錄:
<Doc>:用來(lái)存放該項(xiàng)目相關(guān)的開(kāi)發(fā)文檔(需求說(shuō)明,概要設(shè)計(jì),詳細(xì)設(shè)計(jì)等等等等);
<Source>:用來(lái)存放Delphi源程序中的”.Dpr”,”.Pas”,”.Dfm”等文件;
<Dcu>:該目錄中存放”.Dcu”文件,將’.Pas’與’.Dcu’文件分開(kāi)存放只是為了讓Source目錄的內(nèi)容更加清楚一些;
<Bin>:存放工程的輸出文件,比如”.Exe”,”.Dll”或者”.Ocx”等等;
<Log>:用來(lái)存放日志文件;通常在這個(gè)目錄中我會(huì)放一個(gè)”<項(xiàng)目名稱>程序員日志.Txt”文件。
<Images>:當(dāng)然是存放工程中用到的圖片的目錄了。一般情況下,這個(gè)目錄是少不了的。假如還用到其他資源,那么也一樣建立各自的目錄,比如Wav,比如Avi等等。

二.設(shè)置工程選項(xiàng)
在Delphi中創(chuàng)建一個(gè)新的工程,將此工程保存到Source目錄中,同時(shí):
a. 選一個(gè)耐看的,與項(xiàng)目有些聯(lián)系的圖標(biāo)作為這個(gè)工程的圖標(biāo)。當(dāng)然,這個(gè)圖標(biāo)可能只是臨時(shí)用用的,但是總要比Delphi默認(rèn)的那個(gè)難看的要好才行,要不然,怎么對(duì)得起自己?
b. 將Project Options -> Directories/Conditionals頁(yè)面中的Output Directory設(shè)置為Bin目錄;
c. 將Unit output Directory設(shè)置為Dcu目錄。

三.添加常量單元
添加一個(gè)新的Unit,另存為“unt<工程名> Consts.Pas”,用來(lái)保存工程中用到的常量。

四.有關(guān)窗體(Form)及單元(Unit)
按照匈牙利命名法則給Form命名,則一個(gè)用來(lái)登錄的窗體可以命名為’FrmLogin’,而其單元名可以為’untLogin’。通常,兩個(gè)對(duì)應(yīng)的Form和Unit的名稱在除去’Frm’或’unt’的縮寫(xiě)后應(yīng)當(dāng)保持一致。
在Unit的頭部添加本單元的注釋,注釋的格式可以參照Delphi的源碼,但是至少應(yīng)當(dāng)包含以下幾項(xiàng):功能描述;作者;版權(quán);創(chuàng)建時(shí)間;最后修改時(shí)間;修改歷史等等。
將新創(chuàng)建好的Form的Caption設(shè)置為該Form類的名稱,而不是使用Delphi默認(rèn)的。比如,將Form1更名為FrmLogin后,此時(shí)我們獲得了TFrmLogin這個(gè)新的窗體類,并且Delphi自動(dòng)將窗體的Caption更新為’FrmLogin’。依我看,該Caption應(yīng)當(dāng)為’TFrmLogin’才是,因?yàn)槲覀冊(cè)谠O(shè)計(jì)的是一個(gè)窗體類TFrmLogin,而不是僅僅對(duì)FrmLogin進(jìn)行操作。
向TFrmLogin這樣功能明確的窗體類,許多人都有在設(shè)計(jì)期就將其Caption設(shè)置為諸如“操作員登錄”這種名稱的習(xí)慣。我的習(xí)慣是,象“操作員登錄”這樣的常量,通常存放在unt<工程名>Consts.Pas中,用ResourceString來(lái)定義,或者用Const來(lái)定義。至于窗體的Caption的命名,應(yīng)當(dāng)屬于運(yùn)行期的工作。所以,我往往在TForm.OnCreate事件觸發(fā)之時(shí)才對(duì)Caption進(jìn)行操作,比如:
procedure TFrmLogin.FormCreate(Sender: TObject);
begin
Caption := csLoginTitle;
....
end;

五.關(guān)于Format函數(shù)的使用
有iYear,iMonth,iDay三個(gè)數(shù)據(jù),要顯示諸如“生日:1976/3/18”這樣的信息,你通常怎么做?使用s := ‘生日:’+IntToStr(iYear)+’.’+IntToStr(iMonth)+’.’+IntToStr(iDay); 嗎?這樣實(shí)在是太累了。我的習(xí)慣是,在unt<工程名>Consts.Pas中增加一個(gè)常量csBirthDayFormat = ‘生日:%d/%d/%d’來(lái)保存顯示格式,然后使用s := Format(csBirthDayFormat, [iYear, iMonth, iDay]);這樣的語(yǔ)句完成數(shù)據(jù)的拼裝。這么做的好處顯而易見(jiàn),那就是你只需在一個(gè)地方維護(hù)數(shù)據(jù)的顯示格式。
Format函數(shù)功能強(qiáng)大,我對(duì)它很是推崇,你呢?

六.關(guān)于注冊(cè)表或者Ini文件的存儲(chǔ)
原先訪問(wèn)注冊(cè)表我通常使用TRegistry,而訪問(wèn)Ini文件通常使用TIniFile。這兩個(gè)類的使用方法各不相同,因此想要使用相同的代碼既能訪問(wèn)注冊(cè)表又能訪問(wèn)Ini文件幾乎是不可能的。真頭疼??!
終于我發(fā)現(xiàn)了救星!那就是TRegistryIniFile類。查看Registry單元,我們發(fā)現(xiàn),TRegistryIniFile繼承自TCusomIniFile。而TIniFile也是繼承于TCusomIniFile。因此,使用抽象類TCusomIniFile來(lái)實(shí)現(xiàn)對(duì)注冊(cè)表或者Ini文件的訪問(wèn)便是一舉兩得了。比如:
var
csmIniFile: TCusomIniFile;
begin
if blUseIniFile then//如果使用Ini文件
csmIniFile:= TIniFile.Create(csRootKey)
else
csmIniFile:= TRegistryIniFile.Create(csRootKey);
//接著就可以使用csmIniFile對(duì)Ini文件進(jìn)行訪問(wèn),
//或者用類似訪問(wèn)Ini文件的方式訪問(wèn)注冊(cè)表。

七.關(guān)于TStream流以及TFileStream,TMemoryStream等等
TFileStream和TMemoryStream都繼承自抽象類TStream,這意味著我們可以使用一套代碼完成對(duì)文件和內(nèi)存的存取操作。因此,定義一些接口的時(shí)候,我往往傾向于將參數(shù)的類型定義為抽象類,而不是具體類。比如,要完成保存功能的一個(gè)函數(shù),定義成
function Save(AStream: TStream): Boolean;
就比定義成
function Save(AStream: TFileStream): Boolean;
要靈活的多。
前一個(gè)定義是具有前瞻性的,因?yàn)樗梢赃m用于以后可能出現(xiàn)的新型態(tài)的流。而后一個(gè)定義只適用于TFileStream這種流(當(dāng)然包括TFileStream的子類),呆板多了。
我的習(xí)慣:如果存在抽象類,那么盡量將參數(shù)定義為抽象類的類型,畢竟,我們無(wú)法預(yù)見(jiàn)未來(lái)。

八.多使用TAction
Delphi 4以后引入了Action的概念,并且在Standard組件欄中增加TActionList組件。使用Action的好處是,控件狀態(tài)同步的煩惱從此一掃而空!
本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)。
打開(kāi)APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
Delphi7.0 怎樣設(shè)置 打開(kāi)程序主窗體之后 自動(dòng) 彈出登錄窗體
利用auAutoUpgrader實(shí)現(xiàn)自動(dòng)升級(jí)
第一章 Delphi快速入門(四)
用api(shell)函數(shù)實(shí)現(xiàn)文件復(fù)制(摘至delphi盒子)
Delphi快速入門二
Delphi中比較兩個(gè)文件是否相同
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服