delphi 各新版本特性收集

 

加強的數據庫瀏覽器html

    BDP 數據提供者相應的數據庫瀏覽器已經在幾個地方做了加強。 如今能夠簡單的將數據從一個BDP數據提供者遷移到另一個,這個功能可以容許你將一個數據表從一個BDP數據提供者複製另一個上面. 這樣會複製和從新創建複製目標數據表的元數據, 即便這個數據根本就是來之不一樣的數據源, 如將Oracle的數據遷移到MSSQL上.這和BdpCopy控件的行爲相似.web

 

   數據庫瀏覽器還有查看額外的元數據的能力, 而且容許你直接在數據庫瀏覽器中查看和修改數據庫模型, 你能直接在裹面建立新的數據表, 修改數據表還有刪除存在的數據表.數據庫

 

  同時, 你還能夠直接在數據庫瀏覽器中拖拉一個存儲過程到窗體設計器中, 這樣, 將會建立一個BdpConnection(若是須要)和一個BdpCommand實例, 而且自動設置BdpCommand的參數對應到指定的存儲過程.瀏覽器

 

VCL和VCL.NET的數據庫支持緩存

   Delphi 2005中對VCL和VCL.NET的數據庫支持由BDE, dbExpress和 dbGo for ADO,以及InterBase Express(IBX)組成, 這些數據訪問技術同時在於VCL和VCL.NET的項目中可用, 這樣, 提供了一個無縫的升級Win32程序到.NET的方法.服務器

 

dbGO for ADO網絡

   在建立一個VCL.NET的應用程序, Delphi 2005 如今同時支持Win32和.NET的 dbGO for ADO, 這樣使移植Win32 dbGO for ADO的應用程序到.NET框架變爲可能, dbGO for ADO控件須要安裝MDAC 2.8 來支持.session

 

dbExpress併發

     dbExpress 控件組擴展了TSimpleDataSet來支持.NET, 而且提高了TSQLStoredProc的執行效率, 同時也對元數據進行改進.app

 

     下列的驅動如今已經經過認證可直接用在dbExpress: Borland InterBase 7.5 (同時也能使用 InterBase 7.1, 7.0 和6.5, 但沒通過認證), Oracle 10g (能使用 Oracle 9.2.0 和 9.1.0), IBM DB2 UDB 8.x (能使用 7.x), Microsoft SQL Server 2000, IBM Informix 9.x, SQL Anywhere 9 (能使用 ASA 8), MySQL 4.0.x, and Sybase 12.5.

BDE

   針對VCL和VCL.NET應用程序的Borland 數據庫引擎(BDE), 用來支持本地的dBASE和Paradox數據集訪問. BDE for .NET 版本如今已經改進, 再也不須要指定路徑, 能自動裝載BDE相關的DLL文件了,  它還改進了訪問BLOB的性能, 還新增了幾個之前沒有的, 針對.NET的BDE控件, 它們是: TUpdateSQL, TNestedTable, 和 TStoredProc.

 

IBX

  InterBase Express (IBX)提供VCL和VCL.NET應用程序直接聯接到InterBase 的功能.

 

2.5 Web

  Delphi 2005 包含了大量在VCL(Win32和.NET)和ASP.NET下加強的Web開發技術.

 

Web部署管理器

 

    Delphi 2005 親增了一個Web部署管理器, 能使用在ASP.NET Web Form各ASP.NET WEB Service項目中, 同時期intraWeb可以同時適應VCL和VCL for .NET.Web部署管理器可以聯接到目錄(本地的或者網絡上的)和FTP 目標. 部署管理器的窗口還能同時顯示本地的文件(從項目目錄中)和遠程的文件(從目錄或者FTP位置), 並且你只需單擊一個選項就可實現整個項目的部署. 你還能執行比較, 移除文件等到操做. 部署的設置就與你的項目文件保存在一塊兒, 因此, 你能以一致的配置方式在不一樣的時間部署你的項目. 這個是一種很是有效和快捷的部署方式.

    除了支持ASP.NET和IntraWeb項目以外, Web部署管理器還能擴展來支持的其它不一樣的項目類型.

 

Web數據控件

   Web 數據控件能用來編寫功能強大的數據驅動的ASP.NET web 窗體應用. Delphi2005 引入了大量新的Web數據控件, 包括DBWebAggregateControl, DBWebSound, DBWebVideo, 和 DBWebNavigationExtender等,.

 

DBWebAggregateControl能用來顯示數據集中各個欄目的聚合值,  實際上可能用來顯示平均值, 計數值, 最小值, 最大值, 總額.

 

DBWebSound和DBWebVideo控件被加進來支持音頻和視頻格式. 能夠經過一個DBWebDataSource控件聯接到數據集對應的字段或給它一個URL路徑.

 

DBWebNavigationExtender控件在下列這種狀況下很是有用, 就是你想將數據修改發送到數據集, 而又不想使用DBWebNavigation控件時(特別是控件中那個ApplyToServer按鈕). DBWebNavigationExtender是一個非可視化控件, 能被用來擴展標準的Web控件--如按鈕—它帶有的功能和DBWebNavigator的按鈕同樣. 因此, 你能用它來編寫一個本身的導航條控件. 除了這四個新Web控件外, DbWebDataSource控件被擴展增長了一個OnAutoApplyRequest事件, 而且如今支持嵌套的更新和刪除.

 

   除了DbWebDataSource以外, Web數據控件如今還能聯接到EcoDataSource—一個聯接到ECO II ExpressionHandler的控件.

 

   Delphi 2005 還提供了一個新的Web數據控件嚮導讓你能編寫兼容於ASP.NET控件的本身的Web數據控件(一樣能聯接到DbWebDataSource 或者 EcoDataSource)

 

   Web數據控件如今支持XML緩存, 這個強大的功能能給web客戶端實現一個服務端公文包.

 

Web 數據導航

     Delphi 2005 Web數據控件如今擁有控制導航命令的功能, 它使用相應的導航API, 如RegisterNextControl, RegisterPreviousControl, RegisterFirstControl, RegisterLastControl, RegisterInsertControl, RegisterDeleteControl, RegisterUpdateControl, RegisterCancelControl, RegisterUndoControl, RegisterUndoAllControl, RegisterApplyControl, RegisterRefreshControl, 和 RegisterGoToControl.

 

服務端控件

    ASP.NET的HTML類控件如今能在後臺文件用代碼表示成控件了, 經過選用」Run AS Server Control」這個選項, 將會增長一個 runat=server 屬性到控件的腳本中, 這就好象在控件的源碼文件中直接聲明.

 

模板編輯器

    Delphi 2005 如今爲DataGrid和DataList增長了一個模板編輯器, 讓你可以定義和更容易的編輯你本身定製的欄目模板.

 

IntraWeb

當使用VCL(Win32或者.NET)時, Delphi 2005 支持使用AtoZedSoftware (www.atozed.com)公司的IntraWeb來開發應用. IntraWeb容許快速的所見即所得式來設計Web應用程序, 很象ASP.NET, 但仍是有不少地方不一樣. IntraWeb 對的優勢就是對用戶來講不用關心底層的HTML語法和可以幫用戶管理網頁的狀態, 這些ASP.NET是作不到的. IntraWeb 類的WEB 應用程序和非可視化的VCL控件是兼容的, 如數據訪問面板中的BDE, dbExpress, dbGo for ADO和InterBase Express(這個意味着能夠從Win32遷移升級到.NET), 相反, ASP.NET的應用程序要擁有數據訪問的能力必須使用原生的.NET控件, 如ADO.NET和BDP.

 

2.6 企業核心對象 ECO II

Borland C#Builder 1.0和 Delphi8帶了初版的ECO, 如今在Delphi 2005 中獲得了極大的增強來適應有高伸縮性要求的企業應用開發. 相對初始版本, 在 ECO II有很多改進加強.

 

   其中最重要的加強總結以下:

 

- 支持可伸縮性, 分佈式應用程序

 

- 支持 ASP.NET ( Web Forms 和 Web Services)

 

- 支持映像到一個存在的數據庫

 

- 針對易用性優化, 以使使用ECO流程更加容易

 

可伸縮性, 分佈式應用

最重要的部分是, ECO II 如今具備企業級的伸縮能力. 相對初版本的client/server 解決方案, ECO II 同時支持client/server 和遠程解決方案. 當你編寫有伸縮能力的ASP.NET或者WinForms應用程序時, 有幾個可能採用的結構. 都很是簡單易用. 在同進程中或不一樣多進程中,    想同步多個不一樣緩存對象如EcoSpaces 時, 能夠用新增的PersistenceMapper來管理,. 同步持久性的映射關係能夠在同進程內部自我執行, 或者, 更可能的狀況, 在服務器中的一個進程運行.

 

ECO II and ASP.NET

如今使用Dephi 2005, 咱們可以組合ECO II和ASP.NET一塊兒使用, 同時適合ASP.NET Web窗體和ASP.NET Web 服務方式.Borland 的Web數據控件經過給EcoSapce綁定到一個新的EcoDataSource組件來導出對象, 這是用OCL的表達方式來輸出一個數據源, 而且還能產生一個數據感知的ASP.NET WEB 窗體中. 一樣的操做能適合任何經常使用的原生ASP.NET Web 控件. ECO 組件, 如ExpressionHandler, 可以提供一個能夠當成DataSet 的元素列表, 而且可綁定到任何ASP.NET 組件上, 如DataList 和 DataGrid. 由於對ASP.NET應用程序提出的請求都是無狀態的, 咱們可以在session 或者在應用層次上維護EcoSpace的狀態.

ECO II 使用樂觀鎖, 當發生衝突時, 會使用衝突決議來決定執行正確的動做.特別在當一個Eco Sapce檢測到在後臺數據庫的數據和在EcoSpace中保存的」舊值」不一樣時, 它將會註冊一個衝突到EcoSpace內部列表中. 開發者能調用RetrieveChanges來獲得其它EcoSapces中發生的任何改變, 還可用GetChanges來收集未解決的衝突, 並決定如何處理(一般由最終用戶控制決定如何解決)

 

Delphi 2005 設計時的ECO II ASP.NET Web 窗體

 

映像到現存的數據庫

 帶有ECO II的Delphi 2005 如今有可能利用現存數據庫來實現應用程序持久性. 它是利用一個新增強的使用XML文件模型驅動的對象-關聯映像來實現. 這個強大的菜單達已存在的MS SQL server, ORACLE 或者 InterBase 數據庫, 而且如UML模型同樣創建映像模型, 而且用類將數據庫的數據封裝起來.

加強的EcoSpace設計器

EcoSapce 的功能在Delphi 2005中獲得不少的增長, 包括擁有產生默認的XML模型映像文件, 將ECOI的數據庫格式轉爲ECO II的格式, 拆包/包裝一個現存的數據庫. EcoSpace設計器同時加強了氣泡式提示, 顯示當前一系列須要完成任務的列表, 例以下圖的PersistenceMapperBdp.

 

Delphi 2005 ECO II 設計時氣泡式提示

   工做任務列表會自動檢查, 因此, 你永遠都會獲得一個最新提示, 提示你什麼是已經完成的, 那一步還須要繼續工做.

   另一個用氣泡提示的例子, 當你打算打開一個新的ECO包時, 氣泡提示會顯示全部你選擇的ECO包中定義的類名.

 

ECO II 項目對象

       Delphi 2005 如今能產生幾個不一樣的ECO II項目. 對於C#類型, 咱們能建立一個ECO ASP.NET Web應用程序, 或者ECO ASP.NET Web Service, 或者 DLL中的ECO Package(因此咱們能在另外的項目中引用這個EcoSapce來使用對應的DLL), 還有ECO WinForms 應用程序. 對於Delphi for .NET類型, 咱們能建立ECO ASP.NET Web 應用程序, ECO ASP.NET Web Service和ECO WinForms 應用程序.

 

2.7 ALM

    Delphi 2005 內嵌支持Borland 應用程序生命週期管理套件, 包括CaliberRM, StarTeam, 和 Janeva

 

整合StarTeam   

     StarTeam 提供源碼版本控制的支持, 包括需求管理, 缺陷跟蹤, 分組討論記錄, 遠程協做開發. Delphi 2005 包含一個內置的StarTeam客戶端, 能夠從菜單StarTeam或者項目管理器的右鍵菜單中調用, 你能夠在Delphi 2005 的IDE界面中操做StarTeam. 你能將一個項目放到StarTeam中, 能夠檢出文件, 也能夠導入文件, 或者恢復到之前舊版本的代碼. 鎖定或者解鎖StarTeam倉庫中的文件, 等等操做.

 

    此外, 歷史管理器還支持StarTeam, 因此, 能夠在本地的備份中或者StarTeam的倉庫中訪問,比較和恢復備份的文件.

 

內置Janeva

    Delphi 2005 內置支持Janeva(在企業版和設計師版). Janeva能用來聯接.NET客戶端(C#或者Delphi for .NET編寫)到 J2EE的EJB 或者 CORBA 對象中. 當安裝了janeva(也就是安裝了Janeva IDE 插件), 在項目管理器的項目節點上會新增兩個菜單, Add J2EE Reference... 和 Add CORBA Reference..., 能夠用來增長特定的引用.

    菜單Add J2EE Reference...在你選擇從一個.jar文件選擇一個EJB時會出現一個對話框, 而當你Add CORBA Reference...會在你選擇一個包含接口定義的CORBA對象的.idl文件時顯示一個對話框.. 在導入.jar或者.idl文件後, 你將獲得一個原生對象, 它能夠直接在.NET客戶端使用, 如今將再也不須要額外的層(象Web Service 或其它網關類軟件), 而是利用 Janeva 裝配器直接聯接到J2EE EJB或者CORBA對象上. 之前版本的Janeva插件(C#Builder帶的)能產生C#代碼, 但Delphi 2005 產生的裝配件能夠被任何.NET語言使用. 如今的Janeva 插件嚮導會根據janeva客戶端軟件產生相應的參數, 而後自動產生對應的app.config 文件.

   *Janeva 要求分發你的應用程序時要帶有運行時許可證, 你可在Borland 的銷售許可中找到

 

 

2.8 編繹器/語言/調試器

    Delphi 2005 編繹器, 語法, 調試器都有很多加強.

 

編繹器和語法的加強

   Delphi 2005 編繹器實現了幾個性能有關的加強, 使編輯速度加快了. 編繹器如今已經支持Unicode和UTF8格式的源代碼文件, 可使用Unicode來定義標識符和符號.

 

For ... in ... do

   Delphi 語言增長了一個新的 for-loop 語法. 和 foreach 結構相似. 這個強大的特性可用來迭代訪問一個集合的值.

 

內聯函數

 

   Win32和.NET的Delphi語言都增長了內聯函數, 使用它能提高程序的性能. 它取代了直接呼叫例程, 而是直接將被呼叫的例程的代碼放到呼叫代碼的位置(節省了呼叫和返回的時間, 還有參數管理的時間). 這個對小的例程, 不在同一單元範圍的例程, 或者帶有多參數的例程很是有用. 而對大的例程, 在應用內聯以前要仔細考慮效率和生成代碼大少之間的利弊.

 

   咱們能直接用inline來標識一個內聯例程, 還可使用{$INLINE AUTO}這個編繹指示. 後一個操做, 會讓編繹器本身選擇那些看起來會提高系統性能的例程進行內聯. 使用{$INLINE ON}編繹指示是你指定了從這個編繹指示開始的例程都將用內聯方式.

 

   有不少反對者認爲在編繹器中並無實現內聯, 例如, 即便你能內聯包(裝配件)中的不內單元的例程,你不能跨包進行內聯. 一樣, 不可能內聯虛方法, 動態方法或者消息方法, 一樣不能內聯接口和dispinterfaces.

 

多單元命名空間

 

   上一個版本的Delphi for .NET 編繹器採用了將一個單元映像到一個命名空間的方法(這樣單元的名字將就是命名空間的名字). Delphi 2005 中擴展了這種方法, 如今一個命名空間能夠由幾個單元組成. 例如帶一個單元名爲Comp.Group.MyUnit.pas, 左手邊的Comp.Group是命名空間的名字, 而MyUnit.pas就是在命句空間裏的一個局部單元範圍. 這個可讓咱們使用多個單元而設置他們同屬於一個命名空間(處理ASP.NET 的自定義控件是, 如今能用一個單一的控件前綴).

 

    Delphi2005新的命名空間功能帶來的另外一個效果是, 如今有可能使用Delphi2005來給現存的命句空間擴展功能. 例如, 能夠新增一個MyUnit.pas單元給System Web 命名空間擴展新的類和類型 護展了的命名空間將成爲全部包含System.Web.MyUnit.pas的應用程序和裝配器的一部分.

 

加強的調試器

    Delphi 2005 Win32的調試器如今加強了對沒有帶調節試信息的Win32堆結構的支持. 當在IDE中調試時, 還帶有一個專門處理異常的對話框. 當一個異常被引起時, 將會有一個對話框彈出來讓你有機會選擇忽略這個異常類型 仍是檢查這個異常對象, 包括一個選項來決定是真正引起仍是繼續執行.

 

斷點列表

   內置編輯器也增強了斷點列表, 如今很適合用在條件句中或者羣組中, 啓用和停用斷點能夠簡單的在一個CheckBox 列表選擇就可. 這樣就不用彈出一個對話框選擇, 能夠加速設置斷點.

 

 Delphi 2005 帶有可編輯字段的斷點列表

   在斷點窗口還有新的工具條.經過它你能直接刪除一個斷點, 或者刪除所有, 或者使所有當即都啓用, 或者編輯某個斷點的屬性.

 

新的調試視圖

     Delphi 2005 包含4個新的Delphi 窗口. Borland Delphi8 for .NET提供了斷點的調試窗口, 調棧窗口, 監視窗口,線程和事件日誌. Delphi 2005 增長了FPU, 本地變量, CPU和模塊窗口.

     Delphi 2005 如今還提供了一個模塊窗口, 能夠顯示應用域, 而且容許你操做應用域中的命名空間和配件的細節. 你可以按名字或者基地址來排序顯示模塊.

     CUP窗口是顯示當前源碼, 它能顯示IL(中間語言)和本地機器彙編語言,還有僞代碼

 

Delphi 2005 混合Pascal, ILASM和機器碼的CPU 窗口

 

並行調試

    使用Delphi 2005 IDE不只能夠用項目管理器同時裝載多個項目, 你還能同時運行Win32和.NET調試器。 你能夠在同一個開發環境中調試Win32和.NET應用程序. 你甚至能夠同時運行兩個調試器, 在項目管理器中切換到不一樣的項目(從一個語言切換到另一種)

 

總結

   這個白皮書介紹了Delphi 2005 的關鍵新功能, 也介紹了一些已存在的技術的加強部分.

   就如你所看到的, IDE擁有一個加強的歡迎頁, 支持多語言, 備份歷史文件支持(可選擇內嵌的StarTeam), 浮動的VCL設計器, 同步編輯器, 實時錯誤提示, 實時幫助提示, 結構視圖, 幫助查找, 更好的檢索查找結果的功能, 工具面板嚮導幫助你更快的開始一個新項目.

   重構也是Delphi 2005 中的一個重要的新特性, 提供了重命名符號, 聲明變量, 聲明字段, 抽出方法, 抽出資源字符串,到導入命名空間.

   另一個額外重大的支持是DUnit和NUnit單元測試, 內置於IDE的測試項目和測試例程嚮導.

   在數據庫方面, BDP組件更新了新的驅動, 增長了BdpCopyTable 組件, DataSync t DataHub組件來支持異構的數據庫. 而RemoteServer新增了RemoteConnection組件來編寫三層的.NET數據庫應用(DataSync 和 DataHub, 若是你須要, 能夠甚至是異構的數據庫或者三層).

   對於Web開發, ASP.NET的調試器獲得加強, 新增了dbWeb控件來處理計算的數據, 聲音, 視頻和導向條事件, 支持DataGrid和DataList的模板編繹器, 最後, intraWeb同時支持Win32和.NET WEB應用開發.

   企業核心對象(如今是ECO II)也增強了支持可伸縮性, 分佈式開發, 支持ASP.NET(普通的和dbWeb控件), 而且具備在ECO模式中映像到已存在數據庫的能力.

   Delphi 2005 提供內嵌的Borland ALM工具, 包括StarTeam,和Janeva(能夠聯接J2EE和CORBA服務器).

   最後, 但不是最不重要的, 在編繹器和Delphi語言的許多方面都獲得加強,如新的 for…in 循環, 內聯函數, 跨單元命名空間. 調試器獲得加強, 使用了更好的斷點列表新的.NET調試窗口, 和併發的Win32和.NET項目調試.

有史以來最好的Delphi

   不管你的目的是在Microsoft Windows操做系統仍是在Microsoft .NET1.1框架版本下開發組件或者應用程序,, Delphi 2005 對現代Windows開發提供了普遍的, 高生產力的, 高質量的支持。

http://www.javashuo.com/article/p-wyjsynvz-dd.html

相關文章
相關標籤/搜索