d程序设计语言pdf扫描清晰版
分享到:
d程序设计语言世界著名的C专家Andrei.Alexandrescu先生编纂而成,并由张雪平和谭丽娜共同翻译。D语言是一种通用的系统和应用编程语言,它保持了生成高效代码以及直接访问操作系统API和硬件的能力。d语言有很多优点,比如:d语言不是小巧的简约型语言,拥有很高的推重比;d语言提供了相当强大的泛型机制等等。小编分享的这本d程序设计语言中涵盖了D语言的方方面面,不但介绍了语言的表达式、语句、类型、函数、契约、模块、类和结构等基本内容,还通过常见示例,深入解释了所有语言特性,讲解了如何将语言特性进行组合以支持重要的编程范型,阐述了每一项主要特性的基本原理,对它们的佳用途给出了建议,并对跨领域的问题(如错误处理、契约编程和并发性)进行了讨论。此外,书中还通过大量的图表,为使用D语言解决日常问题提供了快速参考。其细致入微的讲解让人几乎觉得有些“啰嗦”,但正是这些“啰嗦”内容更能加深人们对D语言程序设计的理解,进而拓展到对一般意义上的编程语言程序设计的理解。D程序设计语言不仅适合于D语言初学者,对于想学习编译器实现的研究人员、想拓展学生的编程语言知识面的教师以及想深入了解编程语言设计的人,也能提供很好的帮助和指导。
对d程序设计语言感兴趣并想深入学习的朋友们欢迎到3322软件站免费下载并阅读。
2.d程序设计语言禁用于商业用途!如果您喜欢《d程序设计语言》,请购买正版,谢谢合作。
3.爱学习,请到3322软件站查找资源自行下载!
张雪平,2006年毕业于西南石油大学,模式识别与智能系统专业,硕士研究生。拥有多年高校计算机相关课程的教学经验,热衷于计算机应用软件的开发与研究。现从事石油行业相关软件的研制、开发工作。
谭丽娜,英语语言专业,本科毕业后一直从事一线英语教学工作。曾参与多个英语语言相关课题,其中包括课题一个,省级4个,发表相关文章20余篇。
1.1 数字与表达式
1.2 语句
1.3 函数基础
1.4 数组与关联数组
1.4.1 构建词汇表
1.4.2 数组分割、泛型函数、单元测试
1.4.3 频率统计、λ函数
1.5 基本数据结构
1.6 接口和类
1.7 值与引用
1.8 小结
第2章 基本类型、表达式
2.1 符号
2.2 字面量
2.2.1 布尔字面量
2.2.2 整数字面量
2.2.3 浮点数字面量
2.2.4 字符字面量
2.2.5 字符串字面量
2.2.6 数组与关联数组字面量
2.2.7 函数字面量
2.3 操作符
2.3.1 左值和右值
2.3.2 隐式数值转换
2.3.3 数值操作符的类型
2.3.4 基本表达式
2.3.5 后缀表达式
2.3.6 一元表达式
2.3.7 幂表达式
2.3.8 乘法表达式
2.3.9 加法表达式
2.3.10 移位表达式
2.3.11 in表达式
2.3.12 比较操作符
2.3.13 按位操作符
2.3.14 逻辑与
2.3.15 逻辑或
2.3.16 条件操作符
2.3.17 赋值表达式
2.3.18 逗号表达式
2.4 小结和快速参考
第3章 语句
3.1 表达式语句
3.2 复合语句
3.3 if语句
3.4 static if语句
3.5 switch语句
3.6 final switch语句
3.7 循环语句
3.7.1 while语句
3.7.2 do-while语句
3.7.3 for语句
3.7.4 foreach语句
3.7.5 数组foreach
3.7.6 continue语句和break语句
3.8 goto语句
3.9 with语句
3.10 return语句
3.11 throw语句和try语句
3.12 mixin语句
3.13 scope语句
3.14 synchronized语句
3.15 asm语句
3.16 小结和快速参考
第4章 数组、关联数组和字符串
4.1 动态数组
4.1.1 长度
4.1.2 边界检查
4.1.3 分割
4.1.4 复制
4.1.5 相等性比较
4.1.6 拼接
4.1.7 数组表达式
4.1.8 收缩
4.1.9 扩张
4.1.10 对.length赋值
4.2 固定大小的数组
4.2.1 长度
4.2.2 边界检查
4.2.3 分割
4.2.4 复制和隐式转换
4.2.5 相等性比较
4.2.6 拼接
4.2.7 数组运算
4.3 多维数组
4.4 关联数组
4.4.1 长度
4.4.2 读写槽
4.4.3 复制
4.4.4 相等性比较
4.4.5 移除元素
4.4.6 迭代
4.4.7 将自定义类型作为键
4.5 字符串
4.5.1 代码点
4.5.2 编码
4.5.3 字符类型
4.5.4 字符数组 优势 = 字符串
4.6 数组的远房表亲:指针
4.7 小结和快速参考
第5章 数据与函数、函数式
5.1 编写一个简单函数并进行单元测试
5.2 传递约定和存储类别
5.2.1 ref参数与返回
5.2.2 in参数
5.2.3 out参数
5.2.4 static数据
5.3 类型参数
5.4 约束
5.5 重载
5.5.1 偏序函数
5.5.2 跨模块重载
5.6 高阶函数、函数字面量
5.7 嵌套函数
5.8 闭包
5.9 数组、范围、伪成员
5.9.1 伪成员和@property属性
5.9.2 reduce——不只是证法
5.10 可变参数函数
5.10.1 同构可变参数函数
5.10.2 异构可变参数函数
5.11 函数属性
5.11.1 纯函数
5.11.2 函数属性nothrow
5.12 编译时计算
第6章 类、面向对象风格
6.1 类
6.2 对象名就是引用
6.3 对象的生命周期
6.3.1 构造函数
6.3.2 转发构造函数
6.3.3 构造步骤
6.3.4 析构与解除分配
6.3.5 拆毁步骤
6.3.6 静态的构造函数与析构函数
6.4 方法和继承
6.4.1 术语大杂烩
6.4.2 继承就是子类型化,静态类型和动态类型
6.4.3 改写只能是自愿的
6.4.4 调用被改写的方法
6.4.5 协变返回类型
6.5 静态成员的类级封装6.6 使用final方法来限制扩展性
6.7 封装
6.7.1 private
6.7.2 package
6.7.3 protected
6.7.4 public
6.7.5 export
6.7.6 封装到什么程度
6.8 一统天下的根类
6.8.1 string to String()
6.8.2 sizet to Hash()
6.8.3 boolop Equals(Object rhs)
6.8.4 intop Cmp(Object rhs)
6.8.5 static Object factory(string class Name)
6.9 接口
6.9.1 非虚接口(NVI)惯用法
6.9.2 protected原语
6.9.3 选择性实现
6.10 抽象类
6.11 嵌套类
6.11.1 函数嵌套类
6.11.2 静态嵌套类
6.11.3 匿名类
6.12 多重继承
6.13 多重子类型化
6.14 参数化的类和接口
6.15 小结
第7章 其他自定义类型
7.1 结构
7.1.1 复制语义
7.1.2 将结构对象传递给函数
7.1.3 结构对象的生命周期
7.1.4 静态构造函数和析构函数
7.1.5 方法
7.1.6 静态成员
7.1.7 访问指示符
7.1.8 嵌套结构和类
7.1.9 在函数内部嵌套结构
7.1.10 结构子类型化与@disable属性
7.1.11 字段布局与对齐
7.2 联合
7.3 枚举值
7.3.1 枚举类型
7.3.2 枚举特性
7.4 别名
7.5 使用模板实现参数化作用域
7.6 使用mixin模板注入代码
7.7 小结与参考
第8章 类型修饰符
8.1 immutable修饰符
8.2 immutable的书写
8.3 immutable参数和方法
8.4 immutable构造函数
8.5 immutable相关的转换
8.6 const修饰符
8.7 const与immutable进行交互
8.8 将修饰符从参数传送至结果
8.9 小结
第9章 错误处理
9.1 抛出与捕捉
9.2 类型
9.3 finally子句
9.4 nothrow函数和Throwable的特殊本质
9.5 附属异常
9.6 栈展开与异常安全代码
9.7 未捕捉的异常
第10章 契约编程
10.1 契约
10.2 断言
10.3 前置条件
10.4 后置条件
10.5 不变量
10.6 跳过契约检查与发行版本
10.6.1 enforce不(完全)是assert
10.6.2 assert(false)
10.7 契约:请不要用于洗涤输入
10.8 契约与继承
10.8.1 继承与in契约
10.8.2 继承与out契约
10.8.3 继承与invariant契约
10.9 接口里的契约
第11章 扩展性
11.1 包和模块
11.1.1 import声明
11.1.2 模块搜索根目录
11.1.3 名字查找
11.1.4 public import声明
11.1.5 static import声明
11.1.6 选择性导入
11.1.7 在导入里重新命名
11.1.8 module声明
11.1.9 模块摘要
11.2 安全性
11.2.1 定义行为和未定义行为
11.2.2 @safe、@trusted和@system属性
11.3 模块的构造函数与析构函数
11.3.1 模块内的执行顺序
11.3.2 跨模块的执行顺序
11.4 文档注释
11.5 与C和C 进行交互
11.6 deprecated声明
11.7 version声明
11.8 debug声明
11.9 D语言标准库
第12章 操作符重载
12.1 重载操作符
12.2 重载一元操作符
12.2.1 使用mixin加强操作符定义
12.2.2 后增值与后减值
12.2.3 重载cast操作符
12.2.4 三元操作符重载测试和if测试
12.3 重载二元操作符
12.3.1 操作符重载的平方
12.3.2 交换律
12.4 重载比较操作符
12.5 重载赋值操作符
12.6 重载索引操作符
12.7 重载分割操作符
12.8 $操作符
12.9 重载foreach
12.9.1 带有迭代原语的foreach
12.9.2 带有内部迭代的foreach
12.10 在类里定义重载操作符
12.11 完全不一样的重载:op Dispatch
12.12 小结与快速参考
第13章 并发性
13.1 并发门
13.2 数据共享简史
13.3 快瞧瞧,没有(默认)共享
13.4 启动线程
13.5 线程间的信息交换
13.6 receive的模式匹配
13.6.1 首次匹配
13.6.2 匹配所有消息
13.7 文件复制——稍有改变
13.8 线程终止
13.9 带外通信
13.10 邮箱堵塞
13.11 shared类型修饰符
13.12 shared数据操作及其效果
13.13 使用synchronized类实现基于锁的同步
13.14 synchronized类里的字段类型化
13.14.1 临时保护==无脱离
13.14.2 局部保护==尾部共享
13.14.3 强制同质的互斥量
13.14.4 不可思议:shared可被强制转换掉
13.15 死锁与synchronized语句
13.16 使用shared类进行无锁编码
13.16.1 shared类
13.16.2 几种无锁结构
13.17 小结
参考文献
作者:Andrei Alexandrescu,张雪平
出版社:人民邮电出版社
ISBN:9787115314192
出版日期:2013-06-01
字数:493000
页码:330
版次:1
装帧:平装
开本:16开
1、下载并解压,得出pdf文件
2、如果打不开本文件,别着急,这时候请务必在3322软件站选择一款阅读器下载哦
3、安装后,再打开解压得出的pdf文件
4、以上都完成后,接下来双击进行阅读就可以啦,朋友们开启你们的阅读之旅吧。
方法二:
1、可以在手机里下载3322软件站中的阅读器和百度网盘
2、接下来直接将pdf传输到百度网盘
3、用阅读器打开即可阅读
对d程序设计语言感兴趣并想深入学习的朋友们欢迎到3322软件站免费下载并阅读。
c++教程特别备注:
1.d程序设计语言来源于网络,仅用于分享知识,学习和交流!请下载完在24小时内删除。2.d程序设计语言禁用于商业用途!如果您喜欢《d程序设计语言》,请购买正版,谢谢合作。
3.爱学习,请到3322软件站查找资源自行下载!
d程序设计语言作者/译者介绍:
Andrei.Alexandrescu世界的C专家,2001年撰写了经典名著《C设计新思维》(ModernC.Design),曾荣获2001年佳C图书称号,书中所开发的Loki已经成为负盛名的C程序库之一。他被认为是新一代C的代表人物,因为对Template技术的精湛运用,震撼了整个C社群,开辟了C编程领域的“ModernC”新时代。他还与Herb.Sutter合著了《C编程规范》(C.CodingStandards)。他花了8年的时间攻读机器学习方面的博士学位,专门研究部分自然语言处理结构。自2006年开始,他与D语言的初设计者及实现者WalterBright紧密合作,设计和实现D语言及其标准库,他是D语言很多特性的设计者,也是大多数D语言标准库的作者。AndreiAlexandrescu在工业界和学术界都有很高的声誉。现为Facebook研究员。张雪平,2006年毕业于西南石油大学,模式识别与智能系统专业,硕士研究生。拥有多年高校计算机相关课程的教学经验,热衷于计算机应用软件的开发与研究。现从事石油行业相关软件的研制、开发工作。
谭丽娜,英语语言专业,本科毕业后一直从事一线英语教学工作。曾参与多个英语语言相关课题,其中包括课题一个,省级4个,发表相关文章20余篇。
d程序设计语言目录:
第1章 进入D世界1.1 数字与表达式
1.2 语句
1.3 函数基础
1.4 数组与关联数组
1.4.1 构建词汇表
1.4.2 数组分割、泛型函数、单元测试
1.4.3 频率统计、λ函数
1.5 基本数据结构
1.6 接口和类
1.7 值与引用
1.8 小结
第2章 基本类型、表达式
2.1 符号
2.2 字面量
2.2.1 布尔字面量
2.2.2 整数字面量
2.2.3 浮点数字面量
2.2.4 字符字面量
2.2.5 字符串字面量
2.2.6 数组与关联数组字面量
2.2.7 函数字面量
2.3 操作符
2.3.1 左值和右值
2.3.2 隐式数值转换
2.3.3 数值操作符的类型
2.3.4 基本表达式
2.3.5 后缀表达式
2.3.6 一元表达式
2.3.7 幂表达式
2.3.8 乘法表达式
2.3.9 加法表达式
2.3.10 移位表达式
2.3.11 in表达式
2.3.12 比较操作符
2.3.13 按位操作符
2.3.14 逻辑与
2.3.15 逻辑或
2.3.16 条件操作符
2.3.17 赋值表达式
2.3.18 逗号表达式
2.4 小结和快速参考
第3章 语句
3.1 表达式语句
3.2 复合语句
3.3 if语句
3.4 static if语句
3.5 switch语句
3.6 final switch语句
3.7 循环语句
3.7.1 while语句
3.7.2 do-while语句
3.7.3 for语句
3.7.4 foreach语句
3.7.5 数组foreach
3.7.6 continue语句和break语句
3.8 goto语句
3.9 with语句
3.10 return语句
3.11 throw语句和try语句
3.12 mixin语句
3.13 scope语句
3.14 synchronized语句
3.15 asm语句
3.16 小结和快速参考
第4章 数组、关联数组和字符串
4.1 动态数组
4.1.1 长度
4.1.2 边界检查
4.1.3 分割
4.1.4 复制
4.1.5 相等性比较
4.1.6 拼接
4.1.7 数组表达式
4.1.8 收缩
4.1.9 扩张
4.1.10 对.length赋值
4.2 固定大小的数组
4.2.1 长度
4.2.2 边界检查
4.2.3 分割
4.2.4 复制和隐式转换
4.2.5 相等性比较
4.2.6 拼接
4.2.7 数组运算
4.3 多维数组
4.4 关联数组
4.4.1 长度
4.4.2 读写槽
4.4.3 复制
4.4.4 相等性比较
4.4.5 移除元素
4.4.6 迭代
4.4.7 将自定义类型作为键
4.5 字符串
4.5.1 代码点
4.5.2 编码
4.5.3 字符类型
4.5.4 字符数组 优势 = 字符串
4.6 数组的远房表亲:指针
4.7 小结和快速参考
第5章 数据与函数、函数式
5.1 编写一个简单函数并进行单元测试
5.2 传递约定和存储类别
5.2.1 ref参数与返回
5.2.2 in参数
5.2.3 out参数
5.2.4 static数据
5.3 类型参数
5.4 约束
5.5 重载
5.5.1 偏序函数
5.5.2 跨模块重载
5.6 高阶函数、函数字面量
5.7 嵌套函数
5.8 闭包
5.9 数组、范围、伪成员
5.9.1 伪成员和@property属性
5.9.2 reduce——不只是证法
5.10 可变参数函数
5.10.1 同构可变参数函数
5.10.2 异构可变参数函数
5.11 函数属性
5.11.1 纯函数
5.11.2 函数属性nothrow
5.12 编译时计算
第6章 类、面向对象风格
6.1 类
6.2 对象名就是引用
6.3 对象的生命周期
6.3.1 构造函数
6.3.2 转发构造函数
6.3.3 构造步骤
6.3.4 析构与解除分配
6.3.5 拆毁步骤
6.3.6 静态的构造函数与析构函数
6.4 方法和继承
6.4.1 术语大杂烩
6.4.2 继承就是子类型化,静态类型和动态类型
6.4.3 改写只能是自愿的
6.4.4 调用被改写的方法
6.4.5 协变返回类型
6.5 静态成员的类级封装6.6 使用final方法来限制扩展性
6.7 封装
6.7.1 private
6.7.2 package
6.7.3 protected
6.7.4 public
6.7.5 export
6.7.6 封装到什么程度
6.8 一统天下的根类
6.8.1 string to String()
6.8.2 sizet to Hash()
6.8.3 boolop Equals(Object rhs)
6.8.4 intop Cmp(Object rhs)
6.8.5 static Object factory(string class Name)
6.9 接口
6.9.1 非虚接口(NVI)惯用法
6.9.2 protected原语
6.9.3 选择性实现
6.10 抽象类
6.11 嵌套类
6.11.1 函数嵌套类
6.11.2 静态嵌套类
6.11.3 匿名类
6.12 多重继承
6.13 多重子类型化
6.14 参数化的类和接口
6.15 小结
第7章 其他自定义类型
7.1 结构
7.1.1 复制语义
7.1.2 将结构对象传递给函数
7.1.3 结构对象的生命周期
7.1.4 静态构造函数和析构函数
7.1.5 方法
7.1.6 静态成员
7.1.7 访问指示符
7.1.8 嵌套结构和类
7.1.9 在函数内部嵌套结构
7.1.10 结构子类型化与@disable属性
7.1.11 字段布局与对齐
7.2 联合
7.3 枚举值
7.3.1 枚举类型
7.3.2 枚举特性
7.4 别名
7.5 使用模板实现参数化作用域
7.6 使用mixin模板注入代码
7.7 小结与参考
第8章 类型修饰符
8.1 immutable修饰符
8.2 immutable的书写
8.3 immutable参数和方法
8.4 immutable构造函数
8.5 immutable相关的转换
8.6 const修饰符
8.7 const与immutable进行交互
8.8 将修饰符从参数传送至结果
8.9 小结
第9章 错误处理
9.1 抛出与捕捉
9.2 类型
9.3 finally子句
9.4 nothrow函数和Throwable的特殊本质
9.5 附属异常
9.6 栈展开与异常安全代码
9.7 未捕捉的异常
第10章 契约编程
10.1 契约
10.2 断言
10.3 前置条件
10.4 后置条件
10.5 不变量
10.6 跳过契约检查与发行版本
10.6.1 enforce不(完全)是assert
10.6.2 assert(false)
10.7 契约:请不要用于洗涤输入
10.8 契约与继承
10.8.1 继承与in契约
10.8.2 继承与out契约
10.8.3 继承与invariant契约
10.9 接口里的契约
第11章 扩展性
11.1 包和模块
11.1.1 import声明
11.1.2 模块搜索根目录
11.1.3 名字查找
11.1.4 public import声明
11.1.5 static import声明
11.1.6 选择性导入
11.1.7 在导入里重新命名
11.1.8 module声明
11.1.9 模块摘要
11.2 安全性
11.2.1 定义行为和未定义行为
11.2.2 @safe、@trusted和@system属性
11.3 模块的构造函数与析构函数
11.3.1 模块内的执行顺序
11.3.2 跨模块的执行顺序
11.4 文档注释
11.5 与C和C 进行交互
11.6 deprecated声明
11.7 version声明
11.8 debug声明
11.9 D语言标准库
第12章 操作符重载
12.1 重载操作符
12.2 重载一元操作符
12.2.1 使用mixin加强操作符定义
12.2.2 后增值与后减值
12.2.3 重载cast操作符
12.2.4 三元操作符重载测试和if测试
12.3 重载二元操作符
12.3.1 操作符重载的平方
12.3.2 交换律
12.4 重载比较操作符
12.5 重载赋值操作符
12.6 重载索引操作符
12.7 重载分割操作符
12.8 $操作符
12.9 重载foreach
12.9.1 带有迭代原语的foreach
12.9.2 带有内部迭代的foreach
12.10 在类里定义重载操作符
12.11 完全不一样的重载:op Dispatch
12.12 小结与快速参考
第13章 并发性
13.1 并发门
13.2 数据共享简史
13.3 快瞧瞧,没有(默认)共享
13.4 启动线程
13.5 线程间的信息交换
13.6 receive的模式匹配
13.6.1 首次匹配
13.6.2 匹配所有消息
13.7 文件复制——稍有改变
13.8 线程终止
13.9 带外通信
13.10 邮箱堵塞
13.11 shared类型修饰符
13.12 shared数据操作及其效果
13.13 使用synchronized类实现基于锁的同步
13.14 synchronized类里的字段类型化
13.14.1 临时保护==无脱离
13.14.2 局部保护==尾部共享
13.14.3 强制同质的互斥量
13.14.4 不可思议:shared可被强制转换掉
13.15 死锁与synchronized语句
13.16 使用shared类进行无锁编码
13.16.1 shared类
13.16.2 几种无锁结构
13.17 小结
参考文献
d程序设计语言简介:
图书名称:D程序设计语言作者:Andrei Alexandrescu,张雪平
出版社:人民邮电出版社
ISBN:9787115314192
出版日期:2013-06-01
字数:493000
页码:330
版次:1
装帧:平装
开本:16开
下载说明:
方法一:1、下载并解压,得出pdf文件
2、如果打不开本文件,别着急,这时候请务必在3322软件站选择一款阅读器下载哦
3、安装后,再打开解压得出的pdf文件
4、以上都完成后,接下来双击进行阅读就可以啦,朋友们开启你们的阅读之旅吧。
方法二:
1、可以在手机里下载3322软件站中的阅读器和百度网盘
2、接下来直接将pdf传输到百度网盘
3、用阅读器打开即可阅读
展开更多
d程序设计语言pdf扫描清晰版下载地址
- 需先下载高速下载器:
- 专用下载:
- 其它下载: