D语言是否有多个标准库和GC问题?

我想知道D是多么成熟和稳定,如果它可能是C / C ++的一个很好的替代品。 我知道目前有两个标准库(Phobos和Tango)。是否仍然没有统一的标准库? 另外我前段时间听说语言在GCed /非GCed代码的边界上存在问题。我在D网站上找不到任何关于它的参考,这个问题仍然是正确的吗?     
已邀请:
我建议将D2与Phobos一起使用。它正处于语言足够令人愉快和足够稳定以弥补实施问题引起的偶然挫折的程度。     
  我知道目前有两个标准库(Phobos和Tango),所以我假设可能有人试图将它们统一起来。 由于许可证的差异,“统一”极不可能。当探戈将移植到D 2.0时,您将能够与Phobos一起使用它,这在D 1.0中是不可能的。   另外我前段时间听说语言在GCed /非GCed代码的边界上存在问题。我在D网站上找不到任何关于它的参考,这个问题仍然是正确的吗? 我相信如果你不小心你如何管理记忆,那么只有问题。如果对GC分配对象的所有引用都存储在标记为GC根的内存区域之外,则GC将认为该对象未引用并将其删除。   如果我今天必须选择D作为C替换,你会建议使用什么D(v 1.0或v 2.0)和标准库? 火卫一和探戈的方向有些不同。 Phobos(在D 2.0中)与D2的新功能紧密相关。 Tango功能更加丰富,并且包含Phobos中不存在的模块,例如HTTP / FTP客户端支持,各种加密类等。它们也遵循不同的设计理念(Phobos更强制性/元编程 - ish,而Tango非常严格地类似于OOP,因此在这方面类似于Java)。     
  我想知道D是多么成熟和稳定,如果它可能是C / C ++的一个很好的替代品。 我会谨慎使用任何尚未被ANSI,ISO或ECMA等标准机构支持的语言。这可能是成熟度的指标。例如,Java和Delphi就属于这一类,虽然我不使用这些语言,但它们可能被描述为“成熟”。 另一项措施可能是为该语言编写的书籍和文章的数量和质量。安德烈亚历山大夫斯库(Andrei Alexandrescu)有一本关于D的书。他还撰写了一篇关于Dobbs博士语言的长篇文章,专门讨论标准库问题。     
我在使用Phobos和SDL在D1中编写一个小游戏时有很好的经验,但这是一个非常小的项目。 在我看来,D缺乏: 一个官方网络论坛,人们可以在那里获得帮助并搜索答案(不是新闻组) 转换为D的许多SDK的官方存储库(例如SDL,Gtk等。当它们存在时,通常很难找到并使用它们。)     
我不认为更换C的问题是关于潜在替代品在理论层面上是否“好”或“成熟”,而是关于实际考虑因素以及C对于其用于什么的“足够好”的事实。除非语言具有适用于每个主要操作系统的完整本机构建和运行时环境,否则对于使用C的内容来说并不实际。事实上,C是POSIX的语言,是整个问题的重要组成部分。 当然,像D这样的其他半低级语言可以在专业领域有很好的应用。但您不太可能看到用D编写的主要多平台软件(Web服务器,数据库服务器,文字处理器,Web浏览器等),因为没有主要操作系统(更不用说所有这些)都带有D构建或运行时环境。     

要回复问题请先登录注册