在现实世界中的D编程语言?
有人在那里使用D的真实世界的应用程序? 如果是这样,你用它来做什么? 我似乎无法在D上写出任何大的网页
尽pipe缺乏已知的大用户,D对我来说似乎是一种非常有说服力的语言,据TIOBE说 ,它相当受欢迎。
我使用D来进行计算机graphics领域的研究工作。 我和其他人已经在我们的领域发表了基于使用D的工作发表的论文。我认为它绝对可以用于performance重要的中小型研究项目。 对于研究工作来说,这是一个很好的select,因为无论如何你往往是从头开始的,所以你没有太多遗留代码来担心集成。
另一个受欢迎的区域似乎是Web服务。 希望别人能评论谁在这个领域,但我也认为这个想法是,性能往往非常重要,所以你想要一个编译到金属的语言。 服务往往是相当小的,自包含的过程,所以与大量的传统C ++代码互操作并不是真正必要或有用的。 因此,D可以在门口得到它的脚。
我认为D将会继续以这种方式获得基层的追随者 – 对于那些无论出于何种原因都可以抛弃C ++遗产的小型项目,以获得一种使用起来更愉快的编程语言,或许也更有成效。
但是,除非有大量的基层用户,否则我不会怀疑那些大公司用户。
我在D做生物信息学工作。对我来说,D的关键是它需要一个非常头脑的方法来权衡,并承认收益递减的原则。
与强调零开销原则的C ++不同的是,如果D使得语言更加可用,那么D允许可能具有较小性能/空间成本的特性。 这些包括垃圾收集,每个类的监视器对象,运行时types信息等。
与Ruby,Python,PHP等不同,D尝试几乎和C一样快,即使编程语言的dynamic性和编程难度都比较低。
当开发时间和执行时间同等重要时,结果是一种最佳的语言,大部分时间在我的领域。
同样,D在安全性和灵活性方面采取非常头脑的方法。 它假设程序员基本上知道他们在做什么,但是会犯错误。
与C和C ++不同,它假定你不想在你的代码中的任何地方使用指针,不安全的转换,手动内存pipe理等,因为它们容易出错,并且假设你不想筛选多个当你搞砸只是为了使用可resize的数组时,页面模板错误消息。
与Java和其他束缚与规范的语言不同,D假设有时指针,不安全的转换,手动内存pipe理等是一个必要的罪恶,并假定你足够聪明,可以处理真实的模板,运算符重载等,而不用写混淆的代码。 它也假定你可能搞砸了一个数组越界,但是程序员知道在任何情况下安全和速度之间应该做什么权衡。 因此,是否检查数组是否被编译器开关简单地确定。
我知道有一家小公司向市场发送了一个邮件服务器产品。 他们至less有2个人全职工作。
另外,IT业务的主要参与者还有几名员工在较大的内部项目中使用D.
此外,我知道有一家公司正在寻求风险投资,几家(至less4家)小型公司的员工,部分或全部使用D,至less有一些(包括我)在咨询市场积极寻求机会。
我可能已经遗漏了一些我应该知道的东西,可能有一些我没有听说过,但是依然存在,因为上面的内容或多或less是我通过社区了解到的。
我目前收入的一小部分来自D
我使用D进行Web开发,与C / C ++相比,它certificate了更多的生产力。 当然,还有很多基于ruby / php / python的框架。 但是当你想要开发一些独特的东西时,也必须像C语言一样快,并且像在许多脚本语言中一样容易编程,那么D是一个不错的select。
我在循环(HIL)testing环境中使用D作为硬件。 这是用于汽车领域的软件testing。 D可以在这里使用,因为作为系统编程语言,它可以用于实时程序(在Linux实时扩展RTAI-LXRT中的IRQ处理程序)。
随着目前的SWT / JFace端口,我打算做更多的工作,在D中工作,我以前在Java中完成。
Facebook宣布他们正在使用它在今天的生产。
我正在使用D进行编译时代码翻译的研究。 先进的模板结合元组和混合使得代码翻译更容易,并允许在编译期间完成代码翻译,而不需要单独的工具。
有一些物理学家使用D在D中通过元编程来增强他们的程序。
video – 会议通话,找不到物理学家使用的源码站点。
我们的整个(高stream量)networking基础设施仅基于D1和探戈。 我们是柏林一家年轻的创业公司: sociomantic.com
我目前的工作任务是将C#翻译成D的系统。这是开发软件系统的盈利项目的一部分。
那么,我和其他人一样写了几篇研究论文。
http://www.digitalmars.com/webnews/newsgroups.php?art_group=digitalmars.D.announce&article_id=9466 。
ABA Games发布的很多游戏都是用D 1.x编写的,但我想象的是控制台端口必须用C ++重写。
我已经在D中编写了不less游戏原型,但是我不确定这是否属于“真实世界”,因为我为自己的利益写了这些原型,并且从未发布过任何这些原型。
我写了(并且我仍然在维护和开发)一个软件,用于将各种硬件testing站的testing仪协议转换为可追溯性的标准化输出格式等等。
所有超过5千行的代码,用D 1.x和Phobos库编写。
D非常容易学习,并且忽略了一些陷阱(在Phobos图书馆里)真正的编程乐趣。
我用D开发了一个全局优化algorithm的研究项目。 我将它用于训练neural network的问题。 是否要称之为“现实世界”取决于你。
看来, Remedy Games为他们的游戏提供了一个很大的D2代码库(参考Manu Evans 使用的D游戏引擎 – DConf 2013)。
他们是一个大公司,知道一个大公司使用D是非常好的。
我使用D2,该版本的第二个标准。 我写了实时应用程序(例如3D引擎)。
语言每天都变得越来越强大。 D非常实用,所有embedded的特性,特别是元编程范式,在我看来都远远超过了C ++。 语法更清晰,可以通过过滤或减less等函数来使用函数式编程的强度,而最重要的特性之一就是:可以使用所有的C库。
肯定是我最喜欢的语言,我很确定这将是一个传播使用的语言。
我想我们可以阅读一些东西,缺乏对这个问题的即时答案,那就是没有很多/任何一个acover stackoverflow响应者正在使用D.我也有点惊讶于它在TIOBE列表中的排名水平,你链接到。
话虽如此,Walter Bright在这方面的工作已经有很多年了,我认为他有很多“追随者”记得他在90年代用Zortech C ++编译器做了一个很好的工作。 我还注意到,这种语言现在似乎倾向于function方向。
D的官方网站列举了目前正在使用D的组织。
D维基还提供了一个组织列表,但已经过时了。
只要仔细观察DConf会谈。
- DConf 2013
- DConf 2014
几乎所有的人都在为一些公司工作,他们在工作中使用D.
我正在开始一个项目,将我们的一些内部工具从Perl重写到D.我select了D,因为我对这个语言的devise哲学非常兴奋。 我从事编程很长一段时间,从汇编程序到高级语言(主要是C语言)到脚本语言(主要是Perl)都使用了很多语言,D是我多年来一直热衷于学习的第一语言。
我决定转移到一个编译语言的一个主要原因 – 安全性。 在function上,Perl对于我工作的工具集非常适用,但是它不安全 – 任何可以运行脚本的人都可以读取,复制和创build自己的修改版本的工具。 (而且他们这么做)。我知道有一些迂回的方法可以解决这个问题,但说实话,我没有足够的时间去pipe理所有这些,而且仍然能够完成我的主要工作。
我用ldmd2在D开始了一个光线跟踪的渲染器。