跳转到内容

D 语言入门指南

25% developed
来自维基教科书,自由的教科书

面向有经验的程序员

[编辑 | 编辑源代码]

D 语言与 C++ 和 Java 等语言非常相似。因此,如果您有使用这些语言的经验,您可以通过阅读 D 语言迁移指南 来快速学习 D 语言。

本文档的状态

[编辑 | 编辑源代码]

本书将作为使用 D 语言进行编程的入门指南。它面向各种读者,从编程新手到经验丰富的程序员。本书的编排使您可以按照建议的章节顺序阅读,这将引导您逐步理解概念,以便您在完成本书之前就能使用它们。或者,您也可以根据自己的需要选择章节,跳过您可能已经熟悉的某些内容。

本书不包含对编程的全面介绍,因为已经有许多关于这方面的资料,不过它确实提供了一个关于该主题的 复习

本书的内容基于 DigitalMars dmd 编译器附带的 Phobos 标准库。

在贡献内容之前,请阅读 样式指南

目录几乎完成了,所以这本书现在可以接受内容。如果您想写一个页面,首先阅读 样式指南,然后选择一个页面,将下面的列表中的文本替换为指向您想要的名称的链接,例如
[[/Chapter/]] or [[/Chapter/Section Title/|Section Title]]

(斜杠很重要),并在页面上添加一些说明,说明您将负责该页面(以尽量减少重复)。

  1. 在开始之前...
    1. D 语言简要介绍
    2. D 语言编译器
    3. 支持 D 语言的编辑器
  2. 基础知识
    1. D 语言的结构
    2. 从头开始
    3. 模块简介
    4. 类型和数学 [几种不同类型的输入,直到动态数组]
    5. 基本输出 [使用 std.stdio.writef/writefln]
    6. 基本输入 [使用 std.cstream.din]
  3. 条件和循环
    1. 条件语句和循环的概念
    2. 简单分支
    3. 简单迭代
    4. 简单循环 (while 和 do-while 循环)
    5. 复杂迭代 (for 循环)
    6. 条件和循环/switch 语句 (switch 条件语句)
  4. 函数和简单参数 [本章中的某处,应该简要介绍段错误和其他错误,但只是参考后面的章节]
    1. 函数的概念 [不是函数式编程意义上的函数]
    2. 简单函数
    3. 递归
    4. 传递基本类型
    5. 传递数组
    6. 断言和契约
  5. 基本类和面向对象编程
    1. 类的概念
    2. 简单类 [对上面输入程序的扩展,包含一个具有 char[] name、int age 等属性的“person”类]
    3. 方法
    4. 数据隐藏
      1. 公有与私有
      2. 访问器方法和属性
  6. 异常和处理 [本章还应该提到段错误]
    1. 异常的概念
    2. 抛出异常
    3. 简单捕获
    4. finally 子句
  7. 高级数组
    1. 动态数组、连接和 COW
    2. 静态数组
    3. 关联数组
  8. 模块
    1. 模块和文件系统
    2. 创建自己的模块
    3. 导入模块
      1. 公有导入、私有导入和静态导入
      2. 命名空间和冲突
  9. 高级面向对象编程
    1. 友好类
    2. 类继承
      1. 简单继承
      2. 接口
    3. 运算符重载
    4. x. --- 待完成 ---
  10. 高级函数和参数 [本章也许应该与上一章交换位置]
    1. 传递回顾
    2. 传递类
    3. 按值传递与按引用传递:in、out、inout
    4. x. 函数指针和委托?
    5. x. --- 待完成 ---
  11. 模板和泛型编程
    1. 模板类
    2. 模板函数
    3. 混入
    4. 高级模板
  12. 其他功能和高级特性
    1. 函数
      1. 惰性求值
    2. 面向对象编程
      1. 结构体和打包
      2. 联合体
    3. 枚举
  13. 待续

待添加的内容(不按特定顺序;您可以自由地添加这些内容)

  • 类似预处理器的功能
    • 编译指示
    • 条件编译
  • 混入
    • 可能在(待描述的)模板部分
  • 函数指针和委托
    • 如果高级函数章节位于高级 OO 章节之后,则此内容适合放在那里。
  • 垃圾回收
    • 不确定将其放在哪里
  • 作用域语句
    • 不确定将其放在哪里
  • 类型转换
    • 需要放在多个地方
  • 数组字面量
  • 信号和槽
  • 元组
  • 对象变量的“scope”
  • 套接字
  • 线程
华夏公益教科书