無意中聽說了還有一種D語言,發現這D還真不賴,簡直一個改良的C++高級語言版,兼具C++和Java的優點,比那遙遙無期的C++0X 要爽得多。
花了一個晚上,粗淺得了解了一下,感覺最強烈的有以下幾點:
?。ǎ保┏斓木幾g速度:編譯幾百個文件,只要3,4秒,估計C++要半個小時吧。這是因為它的Module機制實在是比C++的include機制強太多了。
?。ǎ玻┡cC兼容策略:只與C接口兼容,這樣既能利用現有的C資源,又不引入C的低級特征。這一點要比C++的完全兼容策略好多了。這樣,Linus大牛也不用叫喊:“你們這些搞C++的家伙不要往我這C陣營里擠”。弄得好多人馬上說C++高不成低不就什么的。
?。ǎ常┩昝赖暮晏娲撸篗ixin
(4)對象既可以由gc管理,也可以手動管理,倒是和C++0x有些像。 所以還可以結合析構函數實現RAII,這一點JAVA是沒有辦法的(Java只能用丑陋的try catch塊來解決這個問題)。
?。ǎ担┖芏嘈碌奶卣鳎簎nittest, 不變式,contract programming, 簡單的模板用法。。。
說了這么多好處,再說一下D現在的最大問題:
對于現在D語言的發展,既沒有一家成熟的商業公司支持,也沒有一個有效的開源社區維護,它的設計完全掌握在設計者一個人手中,它的核心代碼也沒有完全開源,這使它的前景呈現出一些不穩定的因素。如果要用它進行商業開發的話,還是有點為時過早。
想起了Borland和CodeGear,與其弄什么Turbo C++,還不如去支持這個D。。。
又開始YY了,睡了。。。