知识若不分享 实在没有意义 http://www.d-programming-language-china.org 20070408
点击下面网址查看原文:
http://www.d-programming-language-china.org
by: 燕良
from: http://blog.csdn.net/yanonsoftware/archive/2007/01/05/1475003.aspx
作为一个游戏程序员,D语言对我是很有吸引力的!我相信有不少的人和我有同感。我热爱编程,但是我不能说我热爱C++。坦白的讲,如果是我一个人独立编程,我很乐意使用C++,它的好处就不必多说了,但是在一个稍微大一点的团队中,我一直希望找到一种 “更高级”的语言。这些年一直被C++折磨着,即便团队中有一个新人,有少许几行代码,就足够让整个团队调试一整天。最近的一次,有位兄弟写了如下代码:
在一个类中有这个成员变量:DWORD m_array[10];
for(int i=0; i<sizeof(m_array); i++)
m_array = 0;
错误是明显的,但是它并不会立即造成非法操作,它只是破坏了其它成员变量的内容。。。要知道,在一个20万行的程序中找到这个错误并不是那么容易啊。
C#很不错,而且MS推它的力度很大,现在又有XNA,浮点运算效率一直被大家质疑,不知道现在改进了多少?还有一个不爽的事就是――需要带个百十来M的runtime lib。
D语言的发展很值得关注,在TIOBE的调查(http://www.tiobe.com/?tiobe_index )中已经排到14位,而且上升速度紧跟Ruby之后,十分抢眼。对于游戏程序员,尤其适合。:)当然,D还在发展中,但是它值得关注。 D语言在经历了一百七十多个版本,五年的开发之后,终于推出了1.0版!现在是时候实践一下了。:)
为什么D语言如此令人激动,请看这篇文章:
英文原文:http://www.digitalmars.com/d/overview.html
中文翻译:http://blog.csdn.net/uframer/archive/2005/02/03/279661.aspx
我在这里就不赘述了。( 本文出处: http://www.d-programming-language-china.org )
准备工作环境
最基本的compiler和linker可以从Digital Mars官方网站下载:http://www.digitalmars.com/d/dcompiler.html。注意,要下载两个包dmd.zip是compiler,dmc.zip是linker。压缩包中还带了MS Windbg程序可以用来调试。为了方便调用,后需要把“dmd\bin\”添加到系统的PATH环境变量中。
在“dmd\samples\d”有几个例子,可以先看看,对D有一个初步的印象。“dmd\html\d”有一些文档,应该好好看看。:)
编辑工具现在后很多,简单起见,我现在使用Ultra Edit,关于如何配置UE,请参考:http://www.prowiki.org/wiki4d/wiki.cgi?EditorSupport/UltraEdit。
实战Hello World!( 本文出处: http://www.d-programming-language-china.org )
<!--[if !supportLists]-->1、 <!--[endif]-->创建一个新的文本文件,输入以下代码:
void main()
{
printf("Hello D!");
}
<!--[if !supportLists]-->2、 <!--[endif]-->键入命令行:dmd hello.d –g,此命令会生成hello.exe,其中-g参数是为了生成调试用的符号表;
<!--[if !supportLists]-->3、 <!--[endif]-->键入命令行:windbg hello.exe,可以启动windbg调试窗口,在windbg的Command窗口中键入“g _Dmain”,即可开始调试;
这几行代码是不是和C语言一下啊?!这是因为D和C在二进制上是兼容的,而且D引入了C Runtime lib,所以可以调用CRT的printf。下面这几行是调用D的标准库(Phobos)的代码:
import std.stdio;
void main()
{
writefln("Hello D!");
}
OK,基本的编辑、连接、调试就是这样了!下次将尝试创建一个Win32窗口,并初始化会OpenGL。
( lastupdate:20070427 最新文章请访问http://www.d-programming-language-china.org )关于一大步成功社区:
yidabu提倡在交流中学习,在分享中提高
收集感兴趣的知识,写下心得,通过网络与别人一起分享
理解一点就实践一步,收获什么就分享什么,成功就是这样一点点一步步累积起来的
网络只是一个工具,只有自己身心提高才是实实在在的。d-programming-language-china.org为大家提供一个学习交流各种知识的平台