D语言是由Walter Bright开发的,他也是Symantec C++编译器的作者,仅凭这一点就知道D语言一定不错。
D语言的介绍最好是看
uframer的blog,他翻译了D语言的大部分文档。当然由于D语言目前一直处于测试版,文档和最新的编译器之间可能有很多不一致。
D语言的编译器目前有2个,DMD和GDC,DMD比较容易配置,可以从
http://www.digitalmars.com/d/dcompiler.html下载最新版。下载的压缩包直接解压到任意一个分区的根目录,并把\dm\bin和\dmd\bin加到PATH环境变量里即可使用。
写一个简单的D语言程序,当然还是经典的HelloWorld程序:
void main ()
{
printf ("Hello world!\n");
}
和C程序基本上一样。把它保存为hello_world.d。
下面直接在这个源文件所在的目录下,执行dmd hello_world.d,即可编译出hello_world.exe,执行它就能在控制台打印出Hello world!。
接下来到
http://www.dsource.org/projects/build/下载build程序,这是在D社区使用比较广泛的一个程序。由于最新的v2.09版已经发现了一些严重的BUG,所以最好到
http://svn.dsource.org/projects/build/downloads/下载v2.08版。把下载的.exe文件改名为build.exe并放置合适的文件夹下,并设置PATH环境变量。(为简单起见我是直接把它放在\dm\bin文件夹下)
下面测试一下build程序,编写一个hello_world.brf文件,保存在hello_world.d同一路径下,文件内容如下:
-cleanup
hello_world.d
然后执行build @hello_world即可编译出hello_world.exe。
akIDE是一个D语言的IDE,可以到http://www.lessequal.com/akide下载,它只需要DMD支持。
D语言编译速度非常快(这也是Walter Bright对C++不满的一个重要原因)。dsource.org中的mango项目包含755个D源文件,但在我的机器上编译成.lib文件只需要4秒时间。
D语言性能也很不错,有2篇D语言和C/C++、Java、C#的性能比较文章:
http://mag.vchelp.net/200312/fanyi.htm
http://mag.vchelp.net/200312/fanyi_2.htm
相关项目介绍:
mango: 这是一个专注于服务端编程的项目,目前主要由Kris开发、维护,实现了servlet,暂时还没有太复杂的功能,不过很值得期待。
dwt: D语言的swt开发包,界面开发首选。看过eclipse界面的应该有比较深的印象。由于大部分代码是从java代码转换过来的,所以类名、接口等都没有改变。
dui: D语言的别一个界面开发包,基于GTK。
build: 上面介绍过的build工具。
dcoder: 基于vs.net的D语言语法高亮插件。
dsp: 全称是Dynamic Servlet Pages。
以上项目都可以在http://www.dsource.org/projects/找到详细资料。
DMDScript是一个类似于JavaScript的脚本系统,可以在http://www.digitalmars.com/dscript/找到详细资料,这个我还没有使用过。
最后附上2个使用dwt开发的界面(注:由于本人不习惯安装杀毒软件,下载请先杀毒):
1、仿eclipse界面:
http://www.cppblog.com/Files/cpunion/dummyeclipse.rar
2、dwt控件演示:
http://www.cppblog.com/Files/cpunion/controlexample.rar
在windows xp主题下效果比较好。这2个程序在我的机器上分别只占6.4M和7.2M内存,启动时间也不足1秒,不要被eclipse的启动时间吓坏了。
找到了这2张图:
分享到:
相关推荐
第2章 Java语言开发环境(第7版),讲解Java的开发环境部署。 1.安装JDK 安装JDK的同时会安装JRE 2.配置环境变量 Windows10系统点击此电脑右键选择属性,出现弹框点击高级系统设置,出现弹框选择高级,点击环境变量...
3380 测试机的软件编程手册,包括硬件配置信息,软件代码书写结构等信息
因此,我使用 (这是Microsoft的协议)为这两种语言设置了编程环境。 如果您使用其他语言,例如JavaScript,C ++等,则可以通过LSP轻松地为它们设置-有时您只需安装语言服务器,Emacs的配置代码就不需要更改。 关于...
Dev-C++ (或者叫做 Dev-Cpp)是 Windows 环境下的一个用于 C 语言和 C++ 语言程序设计的轻量级免费集成开发环境。 它集成了 SynEdit 源码编辑器、MinGW-w64 编译器、GDB 调试器和 AStyle 格式整理器等众多自由软件...
第Ⅰ部分 初步了解Python 第1章 编程基础和字符串 3 1.1 编程与使用计算机的区别 3 1.1.1 编程的一致性 3 1.1.2 编程的可控性 4 1.1.3 程序要应对变化 4 1.1.4 小结 4 1.2 准备工作 4 ...附录D 术语表 527
它使用Go语言开发,具有很强的可配置性、可扩展性和易用性。 小知识: YAML(/ˈjæməl/,尾音类似camel骆驼)是一个可读性高,用来表达数据序列化的格式。YAML参考了其他多种语言,包括:C语言、Python、Perl,...
5.3.2 更复杂的编程实例 5.4 DOM和XML的未来 5.4.1 W3C的工作 5.4.2 应用 5.4.3 数据库、模式和DOM 5.5 小结 第6章 SAX 1.0: XML简易API 6.1 事件驱动接口 6.2 SAX的由来 6.3 SAX的高级特性 6.3.1 可选择...
《WebGL编程指南》 第1 章 WebGL 概述 1 WebGL 的优势 3 使用文本编辑器开发三维应用 3 轻松发布三维图形程序 4 充分利用浏览器的功能 5 学习和使用WebGL 很简单 5 WebGL 的起源 5 WebGL 程序的结构 6 总结...
5.3.2 更复杂的编程实例 5.4 DOM和XML的未来 5.4.1 W3C的工作 5.4.2 应用 5.4.3 数据库、模式和DOM 5.5 小结 第6章 SAX 1.0: XML简易API 6.1 事件驱动接口 6.2 SAX的由来 6.3 SAX的高级特性 6.3.1 可选择...
《WebGL编程指南》 第1 章 WebGL 概述 1 WebGL 的优势 3 使用文本编辑器开发三维应用 3 轻松发布三维图形程序 4 充分利用浏览器的功能 5 学习和使用WebGL 很简单 5 WebGL 的起源 5 WebGL 程序的结构 6 总结...
Android集成开发环境 8941-Android智能手机编程全文共17页,当前为第1页。 C. 8941-Android智能手机编程全文共17页,当前为第1页。 软件开发工具包 D. 虚拟设备 第5题. 如果需要给一个UI的组件设置背景图片,则在...
内容关键词:开发板,编程环境,视频流源,代码编写,调试优化,打包部署 用途:本文将帮助您了解如何使用hi3519和rtsp进行实时视频流处理,并学会编写相应的代码,进行调试优化以及打包部署。通过阅读本文,您可以...
Python的安装并不难,但是要正确安装它的库以及配置环境变量则有些麻烦。对于刚刚开始想要学习Python的小伙伴来说,用Anaconda这个工具往往是很好的选择,它帮助我们下载了很多python的库以及python本身。 下面我...
采用Verilog语言编程可以简化有限状态机设计过程,并优化硬件资源配置。本方案首先介绍了利用Verilog设计有限状态机的流程和不同方式,其次从电路的容错性、延时、面积等因素进行考量,着重对编码方式进行比较,最后根据...
5.3.2 更复杂的编程实例 133 5.4 DOM和XML的未来 143 5.4.1 W3C的工作 143 5.4.2 应用 144 5.4.3 数据库、模式和DOM 144 5.5 小结 144 第6章 SAX 1.0: XML简易API 145 6.1 事件驱动接口 145 6.2 SAX的由来 148 6.3 ...
5.3.2 更复杂的编程实例 5.4 DOM和XML的未来 5.4.1 W3C的工作 5.4.2 应用 5.4.3 数据库、模式和DOM 5.5 小结 第6章 SAX 1.0: XML简易API 6.1 事件驱动接口 6.2 SAX的由来 6.3 SAX的高级特性 6.3.1 可选择...
《WebGL编程指南》 第1 章 WebGL 概述 1 WebGL 的优势 3 使用文本编辑器开发三维应用 3 轻松发布三维图形程序 4 充分利用浏览器的功能 5 学习和使用WebGL 很简单 5 WebGL 的起源 5 WebGL 程序的结构 6 总结...
CWSS: C Web Services Server 1. 目的: 利用C 语言的高效, 稳定和灵活性,创建一个通用的通讯平台; 服务器端以插件配置方式动态加入功能组件;... 具客户端帐号验证功能, 支持帐号直接配置和可编程管理二种验证方式;
CWSS: C Web Services Server 1. 目的: 利用C 语言的高效, 稳定和灵活性,创建一个通用的通讯平台; 服务器端以插件配置方式动态加入功能组件;... 具客户端帐号验证功能, 支持帐号直接配置和可编程管理二种验证方式;
通过进行一些非常基本的buildpack更改,我们可以将各种类型的绑定配置服务器中的应用程序属性注入到标准环境中无需更改应用程序代码对于Cloud Foundry支持的任何编程语言对于任何配置服务器类型该演示针对两种语言...