`
gk23
  • 浏览: 176649 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

D语言介绍

阅读更多

官方网站:http://www.digitalmars.com/d/2.0/dmd-windows.html

 

D语言是由Digital Mars公司开发的编程语言,起因是为了改进C++。它与C二进制兼容(不完全),可编译为本地码,有GC也可手动管理内存,语法上借鉴多种语言,模板则在C++的基础上做了相当大的扩充。D 语言既有 C 语言的强大威力,又有 PythonRuby 的开发效率。它是一种集垃圾回收、手工内存操作、契约式设计、高级模板技术、内嵌汇编、内置单元测试、Mixin 风格多继承、类 Java 包管理机制、内置同步机制、内建基本运行时信息的系统级编程语言。

 

D 语言是一种通用的系统和应用编程语言。它是比 C++ 更高级的语言,同时还保持了生成高效代码以及直接访问操作系统API和硬件的能力。D 很适合于编写从中等规模到那些由团队合作完成、数百万行代码规模的各种程序。D 易于学习,为编程者提供了很多便利,并且适用各种野心勃勃的编译器优化技术。

  D 不是脚本语言,也不是一种解释型语言。它不需要虚拟机、宗教、或者高于一切的哲学。它是给实际的编程者使用的实际的语言,它帮助编程者快速、可靠的完成易于维护、易于理解的代码。

  D 是数十年来实现多种语言编译器的经验的积累,是用那些语言构造大型工程的尝试的积累。D 从那些语言(主要是 C++ )那里获得了灵感,并使用经验和现实世界中的实用性来驯服它。

  为什么是 D ?

  确实,为什么?有谁需要另一种编程语言?

  自从 C 语言被发明以来,软件工业走过了一段很长的路。许多新的概念被加入了 C++ 中,但同时维护了同 C 的向后兼容性,包括兼容了原始设计中的所有的弱点。有很多修正这些弱点的尝试,但是兼容性是最大的困扰。同时,C 和 C++ 都在不断引入新的特性。这些新特性必须被小心的加入到现有的结构中,以免重写旧的代码。最终的结果十分复杂—— C 标准将近 500 页,C++ 标准大概有 750 页!C++ 实现起来既困难又代价高昂,造成的结果就是各种实现之间都有差别,因此很难写出完全可以移植的 C++ 代码。

D语言详细介绍

  C++ 程序员倾向于使用语言中的孤岛来编程,也就是说,他们倾向于十分精通语言中的某个特性而避免使用其他特性。尽管代码通常在编译器之间是可移植的,但在程序员之间移植就不那么容易了。C++ 的一个长处是它支持很多根本上不同的编程风格——但从长远来看,互相重复和互相冲突的风格会给开发带来妨碍。

  C++ 在标准库而不是语言核心中实现了可改变大小的数组和字符串拼接等。不在语言核心中实现这些功能造成了几种不太理想的结果。

  是否能把 C++ 的能力释放、重新设计并重铸到一门简单、正交并实用的语言中呢? 这种语言是否能做到易于正确实现,并使编译器有能力有效地生成高度优化的代码呢?

  现代编译器技术已经取得了很大的进步,有些原来用作原始编译技术的补充的语言特性已经可以被忽略了(一个这样的例子是 C 语言中的‘register’关键字,一个更为微妙的例子是 C 中的宏预处理程序)。我们可以依赖现代编译器的优化技术而不是使用语言特性(如同原始的编译器所做的那样)来获得可以接受的代码质量。

分享到:
评论

相关推荐

    D语言编程参考手册

    - **DLL编程**:介绍了如何在D语言中创建和使用DLL(动态链接库),以及如何编写带有C接口的DLL。 #### 五、D语言与C语言的交互 - **头文件转换**:讨论了如何将C语言的头文件转换为D语言模块,以便在D程序中使用...

    D语言编程手册上pdf

    - **C/C++头文件转换**:介绍了如何将C语言的`.h`文件转换为D语言模块,以便于在D项目中使用C代码。 #### 八、D语言版本比较 - **D2.0与D1.0的差异**:详细列出了D2.0版本相对于D1.0版本的改进之处,包括核心语言的...

    D 语言编程中文参考手册

    本参考手册详细介绍了D语言1.0和2.0的各个方面,旨在帮助开发者全面理解并熟练掌握这一强大的编程工具。 D语言1.0是D语言的早期版本,主要关注于语言的基础结构和核心特性。它包括了类型系统、变量、常量、运算符、...

    D语言教程

    在《学会与D共舞》这本书中,作者们通过第一章介绍了D语言的基础入门知识,帮助初学者快速上手。本章节主要涵盖了D语言的基本概念、安装配置环境以及编写第一个程序等关键步骤。 1. **D语言概述**: - D语言是一种...

    D程序设计语言.(美)Andrei.Alexandrescu著

    《D程序设计语言》是一本介绍D语言的权威书籍,全面、系统、专业地讲解了D语言相关的内容。书中涵盖了D语言的方方面面,不但介绍了语言的表达式、语句、类型、函数、契约、模块、类和结构等基本内容,还通过常见示例...

    D_语言_2.0_编程参考手册

    《D语言2.0编程参考手册》是一套全面介绍D语言2.0版本的中文版教程,分为上、中、下三部分,旨在为开发者提供详尽的编程指南和参考资料。D语言是一种现代的系统级编程语言,兼顾了高性能与高生产力,广泛应用于游戏...

    D语言程序设计(用D语言编程)

    ### D语言程序设计知识点...通过以上介绍,我们可以看出D语言不仅具备现代编程语言的所有特点,还特别注重代码的安全性和可维护性。对于那些希望编写高质量、高性能代码的开发者来说,D语言无疑是一个值得考虑的选择。

    D 语言编程参考手册 1[1].0(上).

    书中详细介绍了如何将C语言的`.h`文件转换为D语言模块,包括预处理、连接属性、类型转换、字符串处理、宏定义、结构体等细节,为混合编程提供了指导。 #### 六、D语言的编码风格和文档规范 D语言推荐的编码风格...

    颗粒流PFC2DFISH语言

    下面是对PFC2DFISH语言的详细介绍。 PFC2DFISH语言特点 PFC2DFISH语言具有以下几个特点: 1.颗粒流模拟:PFC2DFISH语言可以模拟颗粒流的行为,包括颗粒的堆积、碰撞和聚集等过程。 2.灵活的编程接口:PFC2DFISH...

    当今流行网络编程语言介绍

    当今流行网络编程语言介绍 在当前的网络编程语言领域中, Java、PHP、Python、Perl、Ruby、JavaScript、C、D、Lua、PowerShell 和 Erlang 等语言都是非常流行的选择。每种语言都有其特点和应用领域,了解这些语言的...

    学习D语言的tango:第二章 D语言基础

    在本章中,我们将深入探讨D语言的基础知识,特别是与Tango库的结合使用。D语言是一种现代化的、高效的编程语言,它具有静态类型的特性,同时又具备动态语言的便捷性。Tango库是D语言的一个重要组成部分,提供了丰富...

    D语言的中文文档

    《D程序设计语言》这份文档,如其名称所示,是关于D语言的详细介绍。PDF格式使得内容便于阅读和打印,方便开发者随时查阅。文档通常包括语言基础、语法特性、标准库、编译器使用、调试技巧等多个方面,帮助读者从零...

    tradeblazer语言介绍[参照].pdf

    - Date (D):获取当前Bar的日期。 - Time (T):获取当前Bar的时间。 - Open (O)、High (H)、Low (L)、Close (C)、Vol:分别对应Bar的开盘价、最高价、最低价、收盘价和成交量。 - OpenInt:获取当前Bar的持仓量...

    dtrace(版本375)

    **D语言介绍** D语言是DTrace的专用脚本语言,具有简洁的语法和丰富的内置函数。它可以定义和触发探针,对收集的数据进行过滤、聚合和格式化输出。例如,下面是一个简单的DTrace脚本,用于统计系统上的磁盘I/O: `...

    D语言编程参考手册 2.036-3.1.pdf

    通过详细的介绍和示例代码的分析,我们可以看出D语言在实际应用中的优势所在,尤其是在需要高性能和高安全性的情况下。无论是对于初学者还是经验丰富的开发者来说,D语言都值得深入了解和探索。

    微机原理与汇编语言A/D转换器ADC0809数字温度计设计综合设计实验

    《微机原理与汇编语言A/D转换器ADC0809数字温度计设计综合设计实验》 在微机系统中,A/D转换是至关重要的一个环节,它将连续变化的模拟信号转换为离散的数字信号,以便于微处理器进行处理。本实验主要涉及的知识点...

Global site tag (gtag.js) - Google Analytics