Delphi 是一個很經典的版本在Win/XP下推薦安裝Delphi 來開發軟件在Vista下推薦使用Delphi 開發軟件安裝好Delphi 後應立即安裝Delphi Update Pack Delphi 則建議盡量安裝最新的版本工欲善其事必先利其器為了提升開發效率為了能更加得心應手的處理接下來的開發工作我們有必要安裝一些有用的開發輔助工具(Delphi將此類插件以Expert命名)首先推薦的是DelForExp這個源代碼格式化工具集成在IDE裡使用相當方便即使我所寫代碼的風格非常好但是還是免不了閱讀某些人寫的亂七八糟的代碼這時DelForExp就能派上用場了秒鐘就能讓代碼能看上去順眼多了GExperts曾經是一個非常出名的工具可現在都不怎麼更新了裡面有幾個功能還是值得一用比如Grep Search Replace Components Code Proofreader等強烈推薦安裝CnPack IDE 專家包相信我它會讓你的Delphi更好用Delphi 是不支持重構的因此我還建議安裝Castalia這個工具中某些功能還是很不錯的CodeRush一直都是Delphi下最強大的工具可是由於安裝後比較容易與其他工具沖突讓人不得不忍痛割愛Delphi 下建議安裝Delphi SpeedUp這個IDE加速工具其原理是在Delphi啟動前替換RTL的函數為來自FastCode工程的執行效率更高的函數ModelMaker Code Explorer為Delphi增加了一些方便重構代碼的功能值得安裝使用
第一次啟動Delphi 關閉設置中的Delphi Direct以禁止Delphi訪問Borland服務器勾選Show Compiler Progress選項以便編譯程序時可以看見編譯進度然後分別設置所安裝的專家的選項再對Delphi的窗體布局按自己的喜好調整調整好了然後將其保存為默認布局關閉工程設置好默認的工程選項接下來就可以安裝控件包了如果是在項目小組中配置開發環境因為可能所需的控件比較多安裝比較麻煩建議由一個有經驗的開發人員將那些散裝控件預編譯後做成安裝程序供小組其他成員安裝
軟件設計
在整理自己的思路的時候可以采用PersonalBrain來畫思維導圖這是一個拓展腦力激發思維的一個活動並且將自己的想法全部記錄下來並在整理的過程當中可以發現內在聯系與更多的問題在接下來的設計中加以考慮做設計需要畫圖除了Visio外我推薦EDraw Soft DiagrammerEnterprise Architect用來做UML設計是很好的選擇ModelMaker為Delphi增加UML支持可以保持設計與代碼雙向同步非常不錯的工具
作為一個Delphi產品的設計人員應該具有廣闊的視野熟悉NETJava下優秀的框架設計熟悉Delphi類庫的源代碼其中總有我們可以借鑒與學習的地方根據公司的實際情況以及具體需求有選擇的在產品開發中進行實踐這樣才能做出高質量的產品
軟件開發
數據結構是軟件開發中的基礎在開發項目前你一定應該准備好如TStack THashtable TQueue TCollection TMap TBag TSet TAssociation之類的容器類然後在以後的開發中根據需要選用合適的數據結構避免不要直接使用指針與TList如有需要可以先將TStreamTRegistry等常用類繼承實現也就是做一個包裝這樣就為以後的開發中就留下了一個可以隨時加入擴展的接口
網上也能找到DGL(The Delphi Generic Library)來為Delphi增加泛型支持實際上也可以稱之為一個模板庫但是這個庫我也只使用過一次網上也未見其他人使用因此到底是否可靠還有待於實踐驗證說到模板庫我還想起一個DEEX這是一個預處理器可以讓你使用類似STL相似的語法其中也內置了DTL(Delphi Template Library)庫
關於AOPDelphi這方面完全不能與Java或NET相比所能用的技術也就只能是動態代理或Hook來實現雖然也出現了MeAOP之類的框架我還是建議從設計上去解決這類AOP的需求或者也可以考慮采用在DailyBuild的時候做編譯前預處理(比如設計成{LogAction}類似於NET的屬性特性來修飾特定的方法當然預處理器必須自己開發)
與開發有關的文件都應該被管理起來而不僅僅是只管理代碼一開始就要做好目錄規劃特別要注意將代碼與運行時所需的資源分隔開一般來說可以分為DocSrcResMisc四大類Doc存放全部相關的文檔裡面建立具體的分類目錄Src存放編譯所需的文件比如源代碼和幫助的源文件Res存放制作安裝包與發布軟件所需的各種資源文件比如圖片網頁等這樣做將為接下來的DailyBuild做好准備
Delphi沒有Package與Namespace的概念因此只能利用目錄上的物理劃分代替邏輯劃分將同一性質的單元放置到同一目錄根據需要再劃分更多子目錄來存放單元
程序的界面上的控件最好都重新規范命名切忌在代碼中出現類似Labeltxt := abc;之類的代碼開發者應該熟悉Delphi所提供的系統函數切忌自己去實現Delphi已經提供了的函數一則這樣做的效率不高二則你自己所寫的代碼沒有經過完全的測試很有可能存在未妥善處理的情況我們不提倡重復發明輪子特別是在正式的開發中這樣做開發中把握面向對象設計的原則單一職責開放封閉裡氏替換依賴倒置接口隔離高內聚低耦合代碼就是最好的注釋變量命名盡可能的表達其本身的意義最好的注釋就是不需要注釋也能很容易的看懂代碼只在需要的地方加上注釋開發人員應該將自己所寫的代碼視之為供別人使用的產品不要隨意的將方法聲明為公開方法只提供給別人需要的方法每個公用方法上都應該用注釋標明其功能程序編譯過程中出現的任何警告或提示都應該認真對待爭取消除每一個警告或提示這樣做是避免一些代碼中可能存在的隱患
[] []
From:http://tw.wingwit.com/Article/program/Delphi/201311/24781.html