程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> Delphi >> 終於看到了傳說中的Delphi9以及我的一些感受

終於看到了傳說中的Delphi9以及我的一些感受

編輯:Delphi

  下午2:00,來到了在北山路上的香格裡拉飯店參加
  李維的高效率Delphi.Net講座,會廳不算大,但是座無虛席。
  在整個講座中,李維一再的重申,.Net並不比win32慢,
  以在.Net下開發要注意的一些效率問題為
  重點,並且現場演示了一些Delphi.Net的例子,
  用來說明一些在.Net下開發應用程序應該注意的
  問題,這些問題都與應用程序的效率有極大的關系(比如CLR的JIT以及GC,String,Boxing/unBoxing,multiThreading)。

  在整個講座的最後,李維現場向我們展示了Delphi9,更確切的說
  應該是BDS3.0, 啟動的時候看到Delphi9開始load n多個包,在splash中
  可以看到C#Builder2.0,ECO for ASP.Net等等,load完了進入主界面,
  總的風格和Delphi8沒有什麼大的變化,

  新建項目的時候可以看到n多的向導,包括delphi project頁(就是win32),Delphi.net頁,eco application頁,eco for ASP.Net頁,C# application頁,
  vb.Net application頁,TDD頁(也就是Test Driven Develop,裡面有test
  unit,test case等向導)以及其它一些等等。
  在主菜單和編輯器的右鍵菜單裡都有refactoring功能菜單,
  李維演示了Declare Variable和Extract Method功能,

  在model vIEw部分,delphi9比Delphi8的建模能力有了進一步的增強,
  雖然看上去好像UML裡面的use case diagram和sequence diagram都沒有得到支持(這點上來看和together for vs.Net還差的遠),但是class diagram終於
  有了讀寫能力,也就是和代碼的雙向同步能力,代碼的變動會自動反映到class diagram,在class diagram中直接畫類圖也能夠自動的生成(修改)代碼,這在Delphi8中只能在ECO application中才能做到,但是現在普通的application也可以。

  在語言上,Delphi9新引入了inline關鍵字(這個功能我想不說也知道吧?呵呵,感謝Borland,終於引入了這個功能),win32編譯器的優化能力得到進一步增強,號稱達到或接近vc的程度,for in(相當於C#中的foreach)也加入了(但是為了效率,最好還是少用為妙),我問了李維,.Net中的attribute沒有被加入到win32中(可惜)。

  在代碼編輯器中,除了refactoring以外,在Delphi8的基礎上,新加入了一個HelpInsight功能,把鼠標放在一個變量名或者類名上,就會出現一個tip窗口,說明了這個變量是什麼類型,在哪個單元幾行幾列裡聲明的,以及這個變量的簡單注釋(當然我想這個注釋應該是在定義變量的時候用XML tag寫的吧,就像在VS.net中一樣,其實這個功能應該是向vs.net學的,但是做了一些改進,出來的tip窗口很pp^_^,但是我在李維的機器上試了一下,在函數聲明上一行按了'///',Delphi9並沒有像vs.Net那樣自動跳出XML tag, 唉,borland,為什麼這麼小的功能,你卻不肯做???)。Delphi9的Parameter Insight Window還是和Delphi8一樣的
  丑,遇到很多overload的函數,這個窗口又丑又長,如果顯示器的分辨率低於1152*864,很容易把當前在寫的光標所在的位置整個遮住,根本沒法繼續寫代碼,我印象中MessageBox.show()就是一個例子,Delphi8出來的時候在borland新聞組中早就有人提出這個問題,但是很奇怪為什麼borland一直不糾正這個問題???美觀不說,實用總得解決吧?
  SynEdit是代碼編輯器中另一個新的亮點,就是代碼同步編輯功能,這個我想用過C++BuilderX和JBuilder的應該知道這個功能吧,選中一段代碼,進入同步編輯狀態,修改一個變量名,選中區域中其它出現這個變量的地方會自動跟著修改,比較方便。

  TDD方面,李維沒有作演示,我也沒機會探究,但是問了他,他說在正式版出來之前,TDD應該還會有加強,不會只有目前的test unit和test case兩個向導。

  在MDA方面,ECO終於支持asp.net了,前不久我聽說現在在.net上,90%以上的應用都是asp.net,所以如果ECO不支持asp.net,那這麼好的東東,除了學習,實用的意義就少了很多,寫ASP.Net的有福了:)

  其它功能比如和caliberRM,StarTeam的集成李維沒有演示,也沒機會看到,不知道比起Delphi8在集成度上會不會有所提高。

  粗看之下,我個人總的印象,整個IDE的細致度好像還是不太夠,
  我想這個版本要想徹底挽回delphi開發人員的流失,好像還是有點難度,畢竟吸引人的新的feature還是不夠多,像refactoring和unit testing現在的Delphi7加上第三方專家都早已能夠實現,希望borland加油。

  最後,強烈強烈強烈希望DevExpress公司開發Delphi9上的CodeRush!
  用過CodeRush,再回到沒有CodeRush的環境下實在太痛苦了~~~!

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved