Delphi 進階基礎技能說明


    以下討論均基於Delphi XE8,主要是利用DELPHI新版的功能,如:Unicode,泛型,匿名函數等[XE2 后應該都支持]。

    用新特性的好處是少寫代碼,提高效率。本博客不再討論Delphi舊版,舊版資料太多,無需太多重復。

    本博客不討論第三方控件,因為Delphi沒落已成事實,第三方控件很難再去支持新版,但Delphi本身作為非程序員的工具,還是非常合適的。

    非程序員要用DELPHI生存(生存是指用Delphi熟練正確地解決問題)下來,請參考以下技能:(本文會不斷更內容並加上實例代碼)

    要打造一套自己的delphi單元支持鏈,遇到問題,可以快速開工。

一、缺省技能:語法,常用控件的應用,這些都是可查詢知識。

     A) delphi 基礎書籍推薦

     B) delphi 提高編碼速度技能

     關於類的知識的入門視頻:

         1) Delphi XE8 入門教學001(優酷視頻) , 基礎操作

         2) Delphi XE8 入門教學002(優酷視頻) , 兩個窗體相互引用的問題。

         3) Delphi XE8 入門教學003(優酷視頻) , TForm 可視化繼承。

         4) Delphi XE8 入門教學004源碼 , FrmMain 引用 FrmProduct,但 FrmProduct 不准引用 FrmMain,

      用事件來傳遞 Product 的值給 FrmMain 。

    

二、命名法則:用英文單詞給變量(類名,單元名,控件名等)取正確的名字。關於命名

三、必掌握技能

1.對TThread進行擴展和改進,變成基礎線程類,以后所有需要用線程的地方,都從此類繼承。

   如果不能掌握線程,程序就缺少了太多的可能性。稍耗時的地方,將會變得極其糟糕。

   線程視頻教學: Delphi XE8 線程001-003(優酷視頻)  ,

      1).線程001源碼  線程視頻001中源碼

      2).線程002源碼  線程視頻002中源碼

      3).線程003源碼  線程視頻003中源碼

      4).線程004源碼  本例用多個線程計算 N 的累加和。

      5).線程005源碼  本例給線程發指令,讓線程做不同的工作。

      6).線程006源碼  本例是線程向調用者請求數據。

      7).線程007源碼  本例是線程組來解決同一個問題.

      8).線程008源碼  本例是在線程中連接數據庫。

   請先學004,005,這兩個示例最簡單,然后再從001開始學習實用型的線程用法。

   其它線程示例:

   A)  TSimpleThread,以后都線程應用均從TSimpleThread派生 

   B)  把多個線程的某種操作,如:訪問數據庫的代碼集中(或者說阻塞)到一個特定線程中。

   C)  delphi 線程Timer

2.帶泛型的TList類

  TSimpleList,以后的List應用都從此類派生

3.基於1,2的線程池

  TSimplePool,以后的線程池應用都從此類派生

4.常用的字串操作函數功能

四、實用功能:基於第以上再擴展到具體就用的技能。

1.保存參數

  Delphi 實現Ini文件參數與TEdit和TCheckBox綁定(TSimpleParam)

2.定時任務 

五、根據情況選擇的技能

1.基礎外掛功能. A. 發消息外掛 B.鍵盤鼠標外掛 C.用DLL下鍵盤Hook.

2.操作網頁,模擬網頁. A.操作IE或TWebBrowse B.用Idhttp讀網頁或模擬登錄

a) 用IdHttpEx讀網頁 

b) 操作IE,001

c) delphi 實現vip126發郵件

3.DataSnap.  A.實現Rest服務供其它程序調用 B.簡單的三層

4.用Delphi操作數據庫。 如:MSSQL,建表,寫SQL,寫存儲過程,理解鎖,在存儲過程中用Applock等。

5.Windows API. Delphi基於windows,但許多windows功能在Delphi中並未實現,這就需要去調用Windos 的API. 

  如:VPN撥號,Win API 調用起來麻煩,各版本還有差異,要學會看MSDN,並構造那一大串參數

 六、重要但又不重要的技能,如:各種高大上算法。我們是非程序員,請奉行拿來主義,請奉行簡單粗暴原則!

 七、其它技能

     修改Delphi IDE代碼補全的快捷鍵(由Ctrl+Space 改為 Ctrl + alt + Space) 

總之:要少寫代碼,提高效率並要寫正確!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM