D語言是由Walter Bright開發的,他也是Symantec C++編譯器的作者,僅憑這一點就知道D語言一定不錯。
D語言的介紹最好是看
uframer的blog,他翻譯了D語言的大部分文檔。當然由于D語言目前一直處于測試版,文檔和最新的編譯器之間可能有很多不一致。
D語言的編譯器目前有2個,DMD和GDC,DMD比較容易配置,可以從
http://www.digitalmars.com/d/dcompiler.html下載最新版。下載的壓縮包直接解壓到任意一個分區的根目錄,并把\dm\bin和\dmd\bin加到PATH環境變量里即可使用。
寫一個簡單的D語言程序,當然還是經典的HelloWorld程序:
void main ()
{
printf ("Hello world!\n");
}
和C程序基本上一樣。把它保存為hello_world.d。
下面直接在這個源文件所在的目錄下,執行dmd hello_world.d,即可編譯出hello_world.exe,執行它就能在控制臺打印出Hello world!。
接下來到
http://www.dsource.org/projects/build/下載build程序,這是在D社區使用比較廣泛的一個程序。由于最新的v2.09版已經發現了一些嚴重的BUG,所以最好到
http://svn.dsource.org/projects/build/downloads/下載v2.08版。把下載的.exe文件改名為build.exe并放置合適的文件夾下,并設置PATH環境變量。(為簡單起見我是直接把它放在\dm\bin文件夾下)
下面測試一下build程序,編寫一個hello_world.brf文件,保存在hello_world.d同一路徑下,文件內容如下:
-cleanup
hello_world.d
然后執行build @hello_world即可編譯出hello_world.exe。
akIDE是一個D語言的IDE,可以到http://www.lessequal.com/akide下載,它只需要DMD支持。
D語言編譯速度非常快(這也是Walter Bright對C++不滿的一個重要原因)。dsource.org中的mango項目包含755個D源文件,但在我的機器上編譯成.lib文件只需要4秒時間。
D語言性能也很不錯,有2篇D語言和C/C++、Java、C#的性能比較文章:
http://mag.vchelp.net/200312/fanyi.htm
http://mag.vchelp.net/200312/fanyi_2.htm
相關項目介紹:
mango: 這是一個專注于服務端編程的項目,目前主要由Kris開發、維護,實現了servlet,暫時還沒有太復雜的功能,不過很值得期待。
dwt: D語言的swt開發包,界面開發首選。看過eclipse界面的應該有比較深的印象。由于大部分代碼是從java代碼轉換過來的,所以類名、接口等都沒有改變。
dui: D語言的別一個界面開發包,基于GTK。
build: 上面介紹過的build工具。
dcoder: 基于vs.net的D語言語法高亮插件。
dsp: 全稱是Dynamic Servlet Pages。
以上項目都可以在http://www.dsource.org/projects/找到詳細資料。
DMDScript是一個類似于JavaScript的腳本系統,可以在http://www.digitalmars.com/dscript/找到詳細資料,這個我還沒有使用過。
最后附上2個使用dwt開發的界面(注:由于本人不習慣安裝殺毒軟件,下載請先殺毒):
1、仿eclipse界面:
http://www.shnenglu.com/Files/cpunion/dummyeclipse.rar
2、dwt控件演示:
http://www.shnenglu.com/Files/cpunion/controlexample.rar
在windows xp主題下效果比較好。這2個程序在我的機器上分別只占6.4M和7.2M內存,啟動時間也不足1秒,不要被eclipse的啟動時間嚇壞了。
找到了這2張圖:
