D语言环境配置与入门

D 语言环境配置与入门
D 语言编译器下载
http://ftp.digitalmars.com/dmd.2.014.zip
D
语言连接器及工具下载
http://ftp.digitalmars.com/dmc.zip
D
语言 IDE 下载
http://svn.dsource.org/projects/dwin/downloads/scite4d/scite4dsetup.exe
D
语言编译工具下载
http://svn.dsource.org/projects/dsss/downloads/0.75/dsss-0.75-dmd-win.zip
D
语言基本库下载
http://downloads.dsource.org/projects/tango/0.99.6/tango-0.99.6-bin-win32-dmd.1.029.zipD
语言 D 语言 Windows GUI 库下载
http://www.dprogramming.com/dfl09701.zip
 
下面开始环境的搭建:
1. 配置编译环境。假设我们要把编译环境安装在 e:\D_Language  那么把 dmd dmc 解压后放在该目录,其中 dmd 会产生两个子目录 dm dmd ,而 dmc 只产生一个 dm 目录,先把 dmd 中的两个各文件夹考到 e:\D_Language 目录下,再把 dmc 中的 dm 文件夹考到 e:\D_Language 目录下。系统会提示是否覆盖,选择是!覆盖掉 dmd 中产生的 dm 文件夹。
 
2. 环境变量设置,将 e:\D_Language\dm\bin   e:\D_Language\dmd\bin  加入 Path 路径中。见下图:
 
这样编译器环境已经设置好了,打开一个命令行窗口,输入 dmd ,如果出现一堆参数提示,表明成功。
 
3. 设置编译工具。将 dsss 解压,进入其 bin 所在的上层目录(也就是能看到 bin 的目录),将所有的包含 bin 目录的子目录覆盖到 e:\D_Language\dmd 目录下 , 会提示是否覆盖 bin 目录,选择是 !  在命令行窗口,输入 dsss ,如果出现一堆参数提示,表明成功。
 
4. 设置 IDE 环境。双击 scite4dsetup.exe 安装 sci 软件,安装完后打开 sci 安装路径下的
SciTEGlobal.properties 文件(一般来说在 C:\Program Files\SciTE4D 目录下),修改开头的几行示例如下:
seatd.global.include=E:\D-Language\dmd\src\phobos;
E:\D-Language\dmd\import;
E:\D-Language\dmd\import\tango;
 
5.tango 安装:解压后将 bin 目录以及其同层目录全部拷贝到 D:/D-Language/dmd 目录下。
 
6 .打开集成开发环境 sci ,并用 sci 打开 D:\D-Language\dmd\import\dfl 下的 all.d 文件。
 
7. D:\D-Language\dmd\import\ 目录下创建 dsss.conf 文件,内容如下:
[dfl]
target=dfl
type=library
postbuild=copy/y dfl.lib ..\..\lib\dfl.lib
 
8 .在 sci F7 Build
9 .安装成功
10. 运行实例:
实例一
经典的入门实例, Hello World 。哈哈 我想你如果以前学过别的计算机语言对这个一定很熟悉。
import tango.io.Stdout;

void main()

{

        Stdout("Hello World!").newline;

}

这是不带命令行参数的程序、下面的实例二经过修改后的带命令行参数的 HelloWorld 程序。
把上面的代码拷贝到集成开发环境后,先保存成 HelloWorld.d 文件。然后按 F7 功能键 Build 一下。再按 Ctrl+F5 运行编译后的程序。可看见在右边的 console 中会输出 HelloWorld 。如果有错误也会在 console 中显示。或者是进 DOS 窗口运行,方法如下:
首先进入到你的文件所在的目录中。然后输入: mdm Hello.d
                                          Hello
同样会输出 Hello World
 
实例二
import tango.io.Stdout;

void main(char [][] args)

{

        if (args.length < 2)

                Stdout ("Usage is : hello name [name]...[name]").newline;

        else

             foreach (name; args[1..$])

                     Stdout.formatln("hello {}", name);

    }

为了能够有效的输入命令行参数,这个程序编译后请在 Dos 窗口中运行。具体的运行方法就是上面所说的。
 
实例三 tango 网络编程实例:
将以下代码拷贝到文档中,并保存成 server.d
private import    tango.core.Thread;
private import    tango.io.Console;
private import    tango.net.ServerSocket;
void main()
{

const int port = 8080;

// thread body for socket-listener
                void run()
                {            
                        auto server = new ServerSocket (new InternetAddress(port));
                         while(true)
                        {
                                // wait for requests
                                auto request = server.accept;
                                // write a response
                                request.output.write ("server replies 'hello'");
                                Cout("Socket accept!\n");
                        }
                }
                // start server in a separate thread, and wait for it to start
                (new Thread (&run)).start;

}
 
在保存的 server.d 同目录下创建 dsss.conf 文件,文件内容如下:
[server.d]
sci F7 Build F5 run
可以看到如今一个网络 server 端已经写好。
我们现在需要写一个 client 端连接服务端,并打印出服务端反馈的信息。 client.d 如下:
private import    tango.io.Console;
private import    tango.net.SocketConduit,
                                tango.net.InternetAddress;
void main()
{
                // make a connection request to the server
                auto request = new SocketConduit;
                request.connect (new InternetAddress ("localhost", 8080));
                request.output.write ("hello\n");
                // wait for response (there is an optional timeout supported)
                char[64] response;
                auto size = request.input.read (response);
                // close socket
                request.close;
                // display server response
                Cout (response[0..size]).newline;
}
 
直接在 sci Ctrl+F5 直接就可以运行,看结果可以看到,本程序已经连接服务器,并打印了服务器反馈的字符串。如果要在 Dos 窗口运行的话,要启动两个窗口,分别运行服务器进程和客户端进程

你可能感兴趣的:(入门,职场,环境,语言,休闲)