编辑推荐
1.将现代编程方法应用到C语言的嵌入式开发中 2.内容涉及集成开发环境、设计模式、极限编程、测试驱动开、重构、持续集成,介绍了 a.精选的几种适合C嵌入式开发的设计模式 b.如何自己编写代码实现Mock测试。 c.教科书中的重构方法行不通时如何对C应用程序进行重构。 d.如何将JAVA开发中常用的CI服务器Jenkins应用于C应用程序的开发 3.提高开发质量、减轻工作负担,适合嵌入式开发者阅读
内容简介
本书主要讲解如何将集成开发环境、设计模式、极限编程、测试驱动开发、重构、持续集成这些现代编程方法应用到C语言的嵌入式开发中去。即将服务器站点中的通用设计方法、工具的使用方法、开发方式等逐一“翻译”成为可以在C语言嵌入式开发过程中使用的方法。
作者简介
花井志生(作者),入职时使用C/C++开发嵌入式设备(POS)应用程序。大约十年前开始接触服务器站点开发。现在主要使用Java开发Web应用程序,从故障检修到系统设计、开发均有涉猎。 杨文轩(译者),华中科技大学硕士。2007年入职方正国际软件。先后参与过京瓷MFP、丸善MBIS系统开发,并且主导过讲谈社拼版系统、讲谈社广告系统的开发。擅长Web2.0开发,有丰富的对日开发经验。
目录
第1章 概要 1
1.1 现在C依然很热门 1
1.2 使用C进行嵌入式开发的特点 3
1.3 本书的目标 5
1.3.1 C与集成开发环境 5
1.3.2 C与设计模式 6
1.3.3 C与极限编程 7
1.3.4 C与现代开发方式 9
1.4 总结 11
第2章 搭建开发环境 13
2.1 概要 13
2.2 获取Linux 13
2.3 在Windows PC上搭建环境 14
2.4 安装Linux 20
2.4.1 准备工作 20
2.4.2 制作安装介质 21
2.4.3 安装Xubuntu 24
2.5 安装Eclipse 29
2.5.1 安装Java 29
2.5.2 安装Eclipse 30
2.5.3 安装其他工具 33
2.6 Eclipse的基本操作 34
2.6.1 Hello, World 34
2.6.2 视图 38
2.6.3 工程、工作区和透视图 38
2.7 Eclipse的功能 41
2.7.1 可视化调试 41
2.7.2 导航器 48
2.7.3 代码补全 51
2.7.4 宏展开 53
2.7.5 本地代码历史 54
2.7.6 TODO注释 55
2.7.7 与外部编辑器协作 56
2.8 总结 58
第3章 C语言与面向对象 59
3.1 概要 59
3.2 C的模块化与面向对象 59
3.2.1 C与模块化 60
3.2.2 使用结构体将数据结构与代码块分离 62
3.2.3 使用C进行面向对象编程 66
3.2.4 面向对象与多态性 75
3.2.5 继承 76
3.2.6 封装 79
3.2.7 虚函数表 80
3.2.8 非虚函数 82
3.3 总结 84
第4章 C语言与设计模式 85
4.1 状态模式 85
4.1.1 状态迁移图 85
4.1.2 状态迁移表 89
4.1.3 面向对象的状态模式 90
4.1.4 多个状态集合相互关联的情况 93
4.1.5 状态模式与内存管理 94
4.2 模板方法模式 95
4.2.1 返回非int值 99
4.2.2 处理其他资源 100
4.2.3 上下文 107
4.3 观察者模式 114
4.4 职责链模式 125
4.5 访问者模式 128
4.6 总结 134
第5章 C语言与重构 135
5.1 概要 135
5.2 测试驱动开发 136
5.3 TDD入门 137
5.3.1 设置Eclipse 137
5.3.2 初次测试驱动开发 142
5.3.3 测试静态函数 147
5.4 重构 150
5.4.1 对外接口 150
5.4.2 重构与投资 150
5.5 TDD实践篇 151
5.5.1 怪兽方法 152
5.5.2 C语言的Mock测试 162
5.5.3 完成重构 182
5.5.4 获取代码覆盖率 186
5.6 总结 188
第6章 持续集成与部署 191
6.1 概要 191
6.2 持续集成的前提 192
6.2.1 软件配置管理工具 192
6.2.2 构建工具 192
6.2.3 Bug跟踪系统(BTS) 193
6.3 引入CI服务器 193
6.4 CI入门 196
6.4.1 本次CI的自动化目标 196
6.4.2 Scons构建脚本 197
6.4.3 gcovr的安装 199
6.4.4 构建 200
6.4.5 提交至SCM 202
6.4.6 创建Jenkins任务 203
6.5 内存Bug大作战 214
6.5.1 安装 214
6.5.2 运行Valgrind 214
6.5.3 Valgrind可以检测出的错误 215
6.5.4 Valgrind中检测出的内存错误的特点与对策 220
6.5.5 在Jenkins中使用Valgrind 221
6.6 CI实践篇 228
6.6.1 Microchip工具 229
6.6.2 构建内容 230
6.6.3 分割构建文件 234
6.6.4 独立构建服务器 240
6.6.5 设置自动构建计划 247
6.7 总结 249
附录A 示例代码 251
A.1 注意事项 251
A.2 添加C99标准 251
A.3 在Eclipse中导入示例代码 252
A.3.1 解压示例代码压缩文件 252
A.3.2 Eclipse中新建空白工程 252
前言/序言
C现代编程 集成开发环境 设计模式 极限编程 测试驱动开发 重构 持续集成 电子书 下载 mobi epub pdf txt