eXile 的专栏

D语言与C++

  无意中听说了还有一种D语言,发现这D还真不赖,简直一个改良的C++高级语言版,兼具C++和Java的优点,比那遥遥无期的C++0X 要爽得多。
  花了一个晚上,粗浅得了解了一下,感觉最强烈的有以下几点:

  (1)超快的编译速度:编译几百个文件,只要3,4秒,估计C++要半个小时吧。这是因为它的Module机制实在是比C++的include机制强太多了。

  (2)与C兼容策略:只与C接口兼容,这样既能利用现有的C资源,又不引入C的低级特征。这一点要比C++的完全兼容策略好多了。这样,Linus大牛也不用叫喊:“你们这些搞C++的家伙不要往我这C阵营里挤”。弄得好多人马上说C++高不成低不就什么的。

  (3)完美的宏替代者:Mixin  
 
   (4)对象既可以由gc管理,也可以手动管理,倒是和C++0x有些像。 所以还可以结合析构函数实现RAII,这一点JAVA是没有办法的(Java只能用丑陋的try catch块来解决这个问题)。

  (5)很多新的特征:unittest, 不变式,contract programming,  简单的模板用法。。。

说了这么多好处,再说一下D现在的最大问题:
  对于现在D语言的发展,既没有一家成熟的商业公司支持,也没有一个有效的开源社区维护,它的设计完全掌握在设计者一个人手中,它的核心代码也没有完全开源,这使它的前景呈现出一些不稳定的因素。如果要用它进行商业开发的话,还是有点为时过早。
  想起了Borland和CodeGear,与其弄什么Turbo C++,还不如去支持这个D。。。
  又开始YY了,睡了。。。

posted on 2007-09-14 02:26 eXile 阅读(4193) 评论(20)  编辑 收藏 引用 所属分类: C/C++

评论

# re: D语言与C++ 2007-09-14 08:21 LOGOS

这就是这个语言的前途
[quote]也没有一个有效的开源社区维护,它的设计完全掌握在设计者一个人手中,它的核心代码也没有完全开源[/quote]
  回复  更多评论   

# re: D语言与C++ 2007-09-14 08:35 探丫头

不容乐观啊,一个技术的出现到在商业实践中运用,怎么也得5年以上的时间  回复  更多评论   

# re: D语言与C++ 2007-09-14 08:59 万星星

语言不重要,关键看你是否有积累。  回复  更多评论   

# re: D语言与C++ 2007-09-14 11:01 VirusCamp

DigitMars 的发明,他们的C/C++编译器是非常好的.
不能说,设计完全掌握在设计者一个人手中.

目前有两个实现,DigitMars的不开源的,和 GNU D ,完全兼容.

我看最大的问题还是库,不能用C++库,C的库又不好用必须有一层包装.

特别是GUI库,没有好的,广泛接受的 qt gtk windows包装  回复  更多评论   

# re: D语言与C++ 2007-09-14 11:38 Wuth

唉~~~怎么这些语言都不想想计算机原理呢?
说出这些话的人对计算机原理是不熟的人  回复  更多评论   

# re: D语言与C++ 2007-09-14 15:57 @王一伟

荒谬 拖出去喂鸟


3.4秒钟你遍历这几百个文件名还不一定够

你还编译个鸟  回复  更多评论   

# re: D语言与C++ 2007-09-14 16:41 shaker(太子)

@@王一伟

可能就没有编译吧

像VB6按F5那样执行 执行到哪编译到哪~  回复  更多评论   

# re: D语言与C++ 2007-09-14 16:59 lovedday

我也是看好这个D语言,总之比C++改进了不少,最重要的是与C兼容,可以直接调用C的接口,D语言如果正式推出,基本上C++的末日也到了。  回复  更多评论   

# re: D语言与C++[未登录] 2007-09-14 18:10 exile

(1)http://qiezi.javaeye.com/blog/26685
D语言编译速度非常快(这也是Walter Bright对C++不满的一个重要原因)。dsource.org中的mango项目包含755个D源文件,但在我的机器上编译成.lib文件只需要4秒时间。
(2)
D is not a scripting language, nor an interpreted language. It doesn't come with a VM
  回复  更多评论   

# re: D语言与C++[未登录] 2007-09-14 18:12 exile

看来D的编译速度已经超出了某些人的想象极限.......  回复  更多评论   

# re: D语言与C++ 2007-09-15 15:00 eagleguo998

D确实是一个不错的语言,至于学什么语言不主要,算法是最重要的,楼主你能够马上运用D,也是因为你有C++的经验,这就像工人换了一个更合手的锤子,你原来就知道如何怎么做,换了合手的锤子,你自然就觉得做起事来更方便了。  回复  更多评论   

# re: D语言与C++ 2007-09-15 17:14 lovedday

同意eagleguo998的看法,比喻很恰当,知道怎么做最重要,工具顺不顺手因人而异。  回复  更多评论   

# re: D语言与C++ 2007-09-15 17:52 ide

eXile:
以前的文章怎么没了,不会是删掉了吧?  回复  更多评论   

# re: D语言与C++ 2007-09-30 08:39 Minidx全文检索

目前在一些游戏上有用D的  回复  更多评论   

# re: D语言与C++ 2007-10-20 18:36 力为

支持D语言,支持bbs.caxsoft.com  回复  更多评论   

# re: D语言与C++ 2007-11-03 14:50 逍遥剑客

C++某些方面的确今人头疼  回复  更多评论   

# re: D语言与C++ 2007-11-12 10:02 游荡人

的确,C++教会我们处理问题的能力,所以即便我们很好的用D,那么我们不能忘记C++  回复  更多评论   

# re: D语言与C++ 2007-11-12 11:24 <a href=http://minidx.com>minidxer</a>

D相对来说还不太成熟~  回复  更多评论   

# vuspcwmv 2008-06-20 21:31 vuspcwmv

cynqiydi http://zdilgmfi.com ttfbxbox smcrgpda <a href="http://rysyrtlf.com">glotiyru</a> [URL=http://blnosjgf.com]vznwcffm[/URL]   回复  更多评论   

# re: D语言与C++ 2015-04-10 08:06 sgf

你确定 Module 比 include强?
但是这不是就产生了一个问题了吗?
就是你刚刚开始说的 兼容C接口!
你确定D语言是兼容C接口的吗?
打个比方吧,可以直接调用Win32 API 而无需自己再定义一遍API函数吗?
貌似不行吧。我试过了。  回复  更多评论   


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理


导航

<2008年5月>
27282930123
45678910
11121314151617
18192021222324
25262728293031
1234567

统计

常用链接

留言簿(18)

随笔分类

随笔档案

服务器编程

搜索

最新评论

阅读排行榜

评论排行榜