星期四, 10月 29, 2009

台灣在網域界已經獨立了?

這網址www.google.co.Taiwan/adsense ,是騙人的吧,還是台灣在網路界已經自己獨立了



CodeGear RAD Studio 2010出了喔

一般人也許不知道 codegear 是什麼產品,但 borland 這個曾經是程式設計開發工具的風雲人物,大家就不陌生了,
而 codegear 就是 borland 把程式設計開發工具(簡稱 ide)分割出來的產品(公司名embarcadero),
codegear rad studio 2010 為其最新力作,其中包含了delphi 、c++ builder、和 turbo c++ 等著名工具,
可開發 vcl、.net 和原生 win 32的程式,
其中 rad studio's delphi prism™ 可開發.net 和 mono (linux 版的 .net) 應用程式,並包含了最新的 .net技術,
例如asp.net, winforms, wpf 和 linq等。
如果剛剛接觸程式設計,想學 c/c++、pascal等,這個ide決對不可以錯過。
分享的版本為 architect 版,最高級版本喔




Delphi新版本(D2010)簡介:

1.多核的支持/異步方法(VC中早就擁有的OpenMP,在Delphi中也很快就有了)
2.內置的Direct 2D模塊及開發庫
3.將會擁有一個能同時運作於x86和x64的IDE,在此IDE下將會有跨平台編譯器,能夠編譯用於linux和MAC的應用程序。 (一次編碼+選擇編譯器=多個平台下可運行的副本,對於遊戲開發太有用了,我們再也沒有必要特地為linux或MAC開發遊戲,拿Windows下的代碼來重新編譯吧)
4.將會支持windows7下的觸摸式編程,對手勢事件的感知,比如說一個手指從屏幕劃過,或者兩個手指從上移動到下,甚至是用一個手掌來拍屏幕,這些不同的動作都能感知到,並且處理它們。 (Windows7的特性,微軟曾表示,會發布用於VC的Touch開發SDK,但是沒有計劃將該SDK集成到IDE,Delphi將是Win7下RAD Touch開發的領路者)
5.將會支持手持設備的開發,比如說工業的設備,或是手機
6.強化的DataSnap,將可以完美的支持在Delphi, C++Builder和Delphi Prism之間傳遞數據
7.可以調試數據庫中的存儲過程(Store Procedure)和函數(Function),並幫助數據庫找出問題
8.多人合作模式的進化,避免寫過多過長的代碼,CodeGear將進一步致力於減少代碼量,在提高開發效率的同時,也保證產品的質量(這才是Delphi的真正意義所在!! )
9.將支持雲計算(這個不用說了吧,現在廣為流行的雲計算)
10.將支持函數式編程,這需要很多時間,據David估計是兩年後會實現

以上的10條,足以讓我們激動了吧? Win7的特性,據我所知,微軟內部有SDK,但是卻從未打算在語言,或是IDE上體現出來,Delphi將在Touch Development上引領一個時代。同時,類似於Erlang的分佈式,函數式編程,雖說要比較久才能看到,但是由此我們看到了CodeGear的努力。

然後是一些FAQ,David親自回答了我們的問題,並且對Delphi的將來,他也是非常的樂觀
對於我們來說,我們自然是希望了解得越多越好,有些問題也問得很尖刻,但是David還是給出了讓我們較為滿意的答复

一、技術類

1. Delphi什麼時候能原生支持類似於parallel.for的多核並行開發?
[David] Delphi肯定會支持多核並行的開發,但是不是現在,可能是下一個版本

2.有計劃讓Delphi發展成類似於Erlang的分佈式語言嗎?是否會提供分佈式開發庫?
[David]似乎DataSnap已經能夠滿足類似的需求了,你可以用它來做分佈式應用。當然我們是有計劃實現分佈式的函數式編程的,這需要大幅修改編譯器

3. B/S開發能否加強?能否使用類似於JSP/PHP的模式?
[David]我們現在重點在VCL for the Web上,VCL for the Web 11和以往的版本相比有著天壤之別,它可以像一般的Delphi開發那樣,拖放式開發,也可以支持RIA。 VCL for the Web 11已經可以支持IIS等許多服務器了。我覺得它已經很強了。 (VCL for the Web 11已經可以被部署在支持IIS,Apache,ISAPI,NSAPI等各種服務器上,並且可以實現不需要本地運行時庫的RIA應用,比 Silverlight或是Flash都來得優越)

4.能否支持Native RIA?能否不需要用戶安裝類似於SilverLight的運行時庫
[David] VCL for the Web的目標與Silverlight不同(其他的內容參考上一條)

5.是否有計劃實現針對敏捷開發的Delphi Doc?
[David]新版本的Delphi會帶有一個Source Control System,用於滿足多人合作開發的需求,它的功能比單純的Document強得多

6. Delphi的類能否被序列化成XML?能否從XML加載一個類?
[David]從XML加載類是不可能的,類裡邊的方法不能夠通過XML來描述,我是指Native的語言都不可能這樣,如果想在Server和Client之間傳遞一個類的話,可以用DataSnap

7.什麼時候能支持x64的操作系統?
[David] x64的計劃很早就有了,但是我們沒有足夠的人力,估計還要再等下個版本,或許是2011年?

8.有打算支持跨平台嗎?特別是移動應用平台,如Symbian和Windows Mobile
[David]跨平台肯定會支持的,而且我們以前也做過kylix,但是很可惜的,Borland覺得kylix是浪費時間,於是終止了它。但是現在它又被提上日程了。 Windows Mobile?可以用Delphi Prism開發,其實我自己的感覺,用Visual Studio可能更好(David都認為開發WM的程序用.NET比較好,看來Delphi不太會往WM方向發展了)

二、意見類

9.反射機制能再做得好一點嗎?我們想放棄RTTI
[David]這的確是需要考慮的地方,當然RTTI我們不會放棄的

10.希望在支持Unicode的前提下,讓新版本的Delphi能兼容老版本的代碼
[David]很抱歉這是不可能的,從老版本移植代碼過來,由於Unicode的問題,必須修改一些代碼。我們也在努力的使這個修改變得更少。 (這點我個人還是難以認同的,理由還是那句話,為什麼VC可以而Delphi不行)

11. Delphi2009的bug多得難以忍受,不知Delphi2010是否會改善?
[David]現在的Update3應該沒有多少bug了吧?我記得上次修正了300多個問題,如果是用的早期版本,還是換上update 3吧。 Delphi2010會在Delphi2009 update3的基礎上進行改進,不會再帶上以前的bug的。

12. IDE是否能夠支持將Delphi代碼轉換成其他語言,並按用戶的喜好用不同的編譯器來編譯?
[David]不同的語言使用不同的運行時庫,就算語法上可以轉換,也無法將運行時庫轉換了。而且語法上的轉換也需要花費大量的勞動,並且沒有意義。

13. Embarcadero / CodeGear是否有計劃為Delphi編寫類似於微軟MSDN的文檔庫?
[David]我們有CDN,和MSDN差不多的,同樣的架構,而且現在也有很多人向QC提交內容,這些都會被收錄的。 CDN會越來越豐富,Delphi也可以自己更新到CDN的內容。(可以通過CDN查看網路上別人的開發經驗,這點比單純的幫助文檔好得多了,而且這次CG向CDN添加了大量的開發實例)

14. Delphi是否會支持內建的Python或是Perl,甚至是Ruby這樣的腳本?
[David]不會支持,據我所知已經有第三方的廠商支持了吧?

三、方向類

15. Delphi是否打算成為一個平台,是否會提出自己的標準?
[David]我不知道你所說的平台是指什麼,不過Delphi是一個RAD的,擁有很多控件的,能可視開發的工具,它的標準就是現行的標準。

16. Delphi的編譯器是否有開源的打算?
[David]不會開源,這是公司的商業模式決定的,我們還想靠編譯器來賺錢

17. Embarcadero / CodeGear如何看待用戶的體驗?
[David]我們對用戶的體驗非常重視,用戶有任何的問題都可以反饋到QC上來,我們會極積處理採納的。

18. Embarcadero / CodeGear如何看待來自FreePascal /Lazarus的競爭?
[David]我們從來沒有認為FreePascal或是Lazarus會對Delphi構成威脅,Delphi原本就是從Pascal擴展而來的,做了許許多多的擴充,現在組件也非常豐富了,而Lazarus的編譯器遠遠及不上Delphi,它還借用了許多原本屬於Delphi的庫,自己本身的組件很少。如果說跨平台的話,Delphi也很快就有了。 (CG還是很樂觀的,等Delphi的跨平檯面世後,lazarus還會有存活的餘地嗎?)

19. Embarcadero / CodeGear認為Delphi的主要發展方向是怎麼樣的?
[David]我當然希望它成為一個開發語言中的優秀者,最近的工作主要集中在DBX, DataSnap和跨平台的一些事情上。我們當然也希望用戶可以用Delphi來開發一切

部份文章 轉貼自

http://www.programbbs.com/bbs/view12-21556-1.htm

星期日, 10月 25, 2009

TDD開發模式

今天讀了旗標出的Ruby on Rails 黑黃書


裡面講到了TDD開發模式,引起了好奇


上網找了相關的資料,發現國內沒什麼人在討論


TDD開發就書上的定義:



TDD開發模式!!

?
撰寫一段功能程式碼



確定測試失敗(因為還沒建立功能)



只撰寫可以測試成功的程式碼



重構程式碼,確保它的設計對當時來說是最精簡的



以上是他的,中心思想-快速開發,使用者取向

?就像射箭,先畫好紅心,一直修改射箭姿勢,直到射中為止


其他的就先不要管,先求有再求好


開發敏捷~~先讓程式碼長眼睛,明確的目標寫,可以節省需多時間。


TDD

http://wiki.pragmatus.com/index.php?title=Test_Driven_Development_with_Ruby

免費重組軟體__Drfraggler



微軟內建的磁碟重組慢又不好用,試試看免費的重組小軟體吧


主程式大小不到一MB!



Defraggler 免安裝打包版


Defraggler官方網站:http://defraggler.com/