
《C++项目开发全程实录》以图书管理系统、商品销售系统、吃豆子游戏、餐饮管理系统、客房管理系统、工资管理系统、人事考勤管理系统、快乐五子棋、文档管理系统和商品采购管理系统10个实际项目开发程序为案例,从软件工程的角度出发,按照项目的开发顺序,系统、全面地介绍了程序开发流程。从开发背景、需求分析、系统功能分析、数据库分析、数据库建模到系统开发,每一过程都作了详细的介绍。
本书及光盘特色还有:12套项目开发完整案例,项目开发案例的同步视频和其源程序。登录网站还可获取各类资源库(模块库、题库、素材库)等项目案例常用资源,网站还提供技术论坛支持等。
本书案例涉及的行业广泛,实用性非常强。通过本书的学习,读者可以了解各个行业的特点,能够针对某一行业进行软件开发,也可以通过光盘中提供的案例源代码和数据库进行二次开发,以减少开发系统所需要的时间。
编辑推荐
《软件项目开发全程实录》丛书是一套以展现项目开发完整过程为主,同时配备完整教学视频和源程序的软件开发“案例类”图书。该丛书第一版自2008年出版以来,受到广大读者,尤其是高校师生和求职人员的热烈欢迎,2011年进行了改版,截至目前,该丛书已经累计销售近16万册,成为近年来最畅销的编程案例类丛书之一。应读者朋友的要求,我们根据最新的市场变化并结合广大读者的建议,编写了该丛书的第3版。本书的特点有:
10套完整项目开发案例,项目开发全程展现
14个项目开发案例涵盖了常用的不同类别的应用系统,每个案例都从需及的行业广泛,实用性非常强。通过本书的学习,读者可以了解各个行业的特点,能够针对某一行业进行软件开发,也可以通过光盘中提供的案例源代码和数据库进行二次开发,以减少开发系统所需要的时间。
东敬洁、李浩然、苗春义、刘清怀、张世辉、张领等,在此一并感谢!
在编写本书的过程中,我们本着科学、严谨的态度,力求精益求精,但错误、疏漏之处在所难免,敬请广大读者批评指正。
感谢您购买本书,希望本书能成为您的良师益友, 目录
第1章图书管理系统(Visual C++ 6.0实现) 1
视频讲解:42分钟
1.1开发背景 2
1.2需求分析 2
1.3系统设计 2
1.3.1系统目标 2
1.3.2系统功能结构 2
1.3.3系统预览 3
1.4公共类设计 4
1.5主窗体模块设计 8
1.5.1主窗体模块概述 8
1.5.2主窗体模块技术分析 8
1.5.3主窗体模块实现过程 9
1.6添加新书模块设计 11
1.6.1添加新书模块概述 11
1.6.2添加新书模块技术分析 12
1.6.3添加新书模块实现过程 12
1.7浏览全部模块设计 13
1.7.1浏览全部模块概述 13
1.7.2浏览全部模块技术分析 13
1.7.3浏览全部模块实现过程 13
1.8删除图书模块设计 15
1.8.1删除图书模块概述 15
1.8.2删除图书模块技术分析 16
1.8.3删除图书模块实现过程 16
1.9项目文件清单 16
1.10本章总结 17
第2章商品销售系统(Visual C++ 6.0实现) 18
视频讲解:5分钟
2.1开发背景 19
2.2需求分析 19
2.3系统设计 19
2.3.1系统目标 19
2.3.2系统功能结构 19
2.3.3系统预览 19
2.4公共类设计 20
2.5主窗体模块设计 21
2.5.1主窗体模块概述 21
2.5.2主窗体模块技术分析 21
2.5.3主窗体模块实现过程 22
2.6购进/卖出商品模块设计 25
2.6.1购进/卖出商品模块概述 25
2.6.2购进/卖出商品模块技术分析 25
2.6.3购进/卖出商品模块实现过程 25
2.7添加新品模块设计 26
2.7.1添加新品模块概述 26
2.7.2添加新品模块技术分析 26
2.7.3添加新品模块实现过程 27
2.8查看商品信息模块设计 27
2.8.1查看商品信息模块概述 27
2.8.2查看商品信息模块技术分析 28
2.8.3查看商品信息模块实现过程 29
2.9查看采购与销售记录模块设计 34
2.9.1查看采购与销售记录模块概述 34
2.9.2查看采购与销售记录模块技术分析 35
2.9.3查看采购与销售记录模块实现过程 35
2.10项目文件清单 39
2.11本章总结 39
第3章吃豆子游戏(Visual Studio 2010实现) 40
视频讲解:6分钟
3.1开发背景 41
3.2需求分析 41
3.3系统设计 41
3.3.1系统目标 41
3.3.2系统预览 41
3.4技术准备 41
3.4.1建立Windows窗口应用程序 42
3.4.2_tWinMain函数 43
3.4.3Windows消息循环 46
3.4.4常用绘图GDI 49
3.5制作PacMan 52
3.5.1PacMan程序框架初步分析 52
3.5.2碰撞检测的实现 53
3.5.3地图类的设计 58
3.5.4数据更新 60
3.5.5绘图 68
3.5.6客户端设计 73
3.6项目文件清单 80
3.7本章总结 80
第4章餐饮管理系统(Visual C++ 6.0+Microsoft Access 2003实现) 81
视频讲解:1小时2分钟
4.1开发背景 82
4.2需求分析 82
4.3系统设计 82
4.3.1系统目标 82
4.3.2系统功能结构 82
4.3.3系统预览 83
4.3.4业务流程图 84
4.3.5数据库设计 84
4.4公共类设计 87
4.5主窗体设计 89
4.6注册模块设计 91
4.6.1注册模块概述 91
4.6.2注册模块技术分析 91
4.6.3注册模块实现过程 92
4.7登录模块设计 93
4.7.1登录模块概述 93
4.7.2登录模块技术分析 94
4.7.3登录模块实现过程 94
4.8开台模块设计 96
4.8.1开台模块概述 96
4.8.2开台模块技术分析 96
4.8.3开台模块实现过程 96
4.9点菜模块设计 99
4.9.1点菜模块概述 99
4.9.2点菜模块技术分析 99
4.9.3点菜模块实现过程 100
4.9.4单元测试 107
4.10结账模块设计 107
4.10.1结账模块概述 107
4.10.2结账模块技术分析 108
4.10.3结账模块实现过程 108
4.10.4单元测试 113
4.11数据库维护模块设计 114
4.11.1数据库维护模块概述 114
4.11.2数据库维护模块技术分析 114
4.11.3数据库维护模块实现过程 114
4.11.4单元测试 117
4.12打包发行 117
4.12.1选择合适的打包工具 117
4.12.2InstallShield打包方案 118
4.12.3设置工程文件 120
4.12.4程序发布 121
4.13开发问题解析 122
4.14项目文件清单 124
4.15本章总结 124
第5章客房管理系统(Visual C++ 6.0+SQL Server 2008实现) 125
视频讲解:30分钟
5.1开发背景 126
5.2需求分析 126
5.3系统设计 126
5.3.1系统目标 126
5.3.2系统功能结构 127
5.3.3系统预览 127
5.3.4数据库设计 128
5.4主窗体设计 129
5.4.1主窗体概述 129
5.4.2主窗体实现过程 130
5.5登录模块设计 134
5.5.1登录模块概述 134
5.5.2登录模块技术分析 134
5.5.3登录模块设计过程 134
5.6客房预订模块设计 138
5.6.1客房预订模块概述 138
5.6.2客房预订模块技术分析 138
5.6.3客房预订模块实现过程 138
5.7追加押金模块设计 142
5.7.1追加押金模块概述 142
5.7.2追加押金模块技术分析 142
5.7.3追加押金模块实现过程 142
5.8调房登记模块设计 145
5.8.1调房登记模块概述 145
5.8.2调房登记模块技术分析 145
5.8.3调房登记模块实现过程 146
5.9客房销售报表模块设计 149
5.9.1客房销售报表模块概述 149
5.9.2客房销售报表模块技术分析 149
5.9.3客房销售报表模块实现过程 150
5.10项目文件清单 155
5.11本章总结 156
第6章工资管理系统(Visual C++ 6.0+SQL Server 2008实现) 157
视频讲解:45分钟
6.1开发背景 158
6.2需求分析 158
6.2.1系统需求分析 158
6.2.2可行性分析 158
6.3系统设计 159
6.3.1项目规划 159
6.3.2系统功能图 159
6.3.3设计目标 159
6.3.4系统预览 160
6.3.5数据库设计 161
6.4公共类设计 162
6.5主窗体设计 169
6.6登录模块设计 170
6.6.1登录模块概述 170
6.6.2登录模块技术分析 171
6.6.3登录模块实现过程 171
6.7员工录入模块设计 172
6.7.1员工录入模块概述 172
6.7.2员工录入模块技术分析 173
6.7.3员工录入模块实现过程 173
6.7.4单元测试 175
6.8总体查询模块设计 176
6.8.1总体查询模块概述 176
6.8.2总体查询模块技术分析 176
6.8.3总体查询模块实现过程 176
6.8.4单元测试 182
6.9员工工资添加模块设计 183
6.9.1员工工资添加模块概述 183
6.9.2员工工资添加模块技术分析 183
6.9.3员工工资添加模块实现过程 183
6.10用户管理模块设计 187
6.10.1用户管理模块概述 187
6.10.2用户管理模块实现过程 187
6.11开发问题解析 190
6.11.1如何添加ADO Data等控件 190
6.11.2DataGrid控件的应用 191
6.12项目文件清单 191
6.13本章总结 192
第7章人事考勤管理系统(Visual C++ 6.0+SQL Server 2008实现) 193
视频讲解:1小时32分钟
7.1开发背景 194
7.2需求分析 194
7.3系统设计 194
7.3.1系统目标 194
7.3.2系统功能结构 195
7.3.3系统预览 195
7.3.4业务流程图 195
7.3.5数据库设计 196
7.4公共模块设计 198
7.5主窗体设计 203
7.6用户登录模块设计 205
7.6.1用户登录模块概述 205
7.6.2用户登录模块技术分析 206
7.6.3用户登录模块实现过程 206
7.7用户管理模块设计 207
7.7.1用户管理模块概述 207
7.7.2用户管理模块技术分析 208
7.7.3用户管理模块实现过程 208
7.7.4单元测试 210
7.8部门管理模块设计 211
7.8.1部门管理模块概述 211
7.8.2部门管理模块技术分析 211
7.8.3部门管理模块实现过程 212
7.9人员信息管理模块设计 215
7.9.1人员信息管理模块概述 215
7.9.2人员信息管理模块技术分析 215
7.9.3人员信息管理模块实现过程 216
7.10考勤管理模块设计 221
7.10.1考勤管理模块概述 221
7.10.2考勤管理模块技术分析 222
7.10.3考勤管理模块实现过程 223
7.11考勤汇总查询模块设计 228
7.11.1考勤汇总查询模块概述 228
7.11.2考勤汇总查询模块技术分析 228
7.11.3考勤汇总查询模块实现过程 229
7.12开发技巧与难点分析 232
7.12.1调用动态链接库设计界面 232
7.12.2主窗口的界面显示 233
7.13本章总结 233
第8章快乐五子棋(Visual C++ 6.0+Socket套接字实现) 234
视频讲解:1小时22分钟
8.1开发背景 235
8.2需求分析 235
8.3系统设计 235
8.3.1系统功能结构 235
8.3.2系统预览 236
8.3.3程序运行环境 236
8.4关键技术分析与实现 237
8.4.1使用TCP进行网络通信 237
8.4.2定义网络通信协议 238
8.4.3实现动态调整棋盘大小 240
8.4.4在棋盘中绘制棋子 241
8.4.5五子棋赢棋判断 244
8.4.6设计游戏悔棋功能 247
8.4.7设计游戏回放功能 251
8.4.8对方网络状态测试 254
8.5服务器端主窗体设计 256
8.5.1服务器端主窗体概述 256
8.5.2服务器端主窗体实现过程 257
8.6棋盘窗体模块设计 259
8.6.1棋盘窗体模块概述 259
8.6.2棋盘窗体模块界面布局 259
8.6.3棋盘窗体模块实现过程 259
8.7游戏控制窗体模块设计 277
8.7.1游戏控制窗体模块概述 277
8.7.2游戏控制窗体模块界面布局 278
8.7.3游戏控制窗体模块实现过程 278
8.8对方信息窗体模块设计 280
8.8.1对方信息窗体模块概述 280
8.8.2对方信息窗体模块界面布局 280
8.8.3对方信息窗体模块实现过程 281
8.9客户端主窗体模块设计 282
8.9.1客户端主窗体模块概述 282
8.9.2客户端主窗体模块实现过程 283
8.10项目文件清单 285
8.11本章总结 286
第9章文档管理系统 (Visual C++ 6.0+SQL Server 2008实现) 287
视频讲解:55分钟
9.1开发背景 288
9.2需求分析 288
9.3系统设计 288
9.3.1系统目标 288
9.3.2系统功能结构 288
9.3.3系统预览 289
9.3.4业务流程图 289
9.3.5数据库设计 290
9.4技术准备 291
9.4.1添加ADO连接类 291
9.4.2添加数据库表的类 293
9.5主窗体设计 298
9.5.1主窗体模块概述 298
9.5.2主窗体模块实现过程 299
9.6登录管理模块设计 303
9.6.1登录管理模块概述 303
9.6.2登录管理模块技术分析 304
9.6.3登录管理模块实现过程 304
9.7单位档案模块设计 306
9.7.1单位档案模块概述 306
9.7.2单位档案模块技术分析 307
9.7.3单位档案模块实现过程 307
9.8文档类别模块设计 313
9.8.1文档类别模块概述 313
9.8.2文档类别模块实现过程 313
9.9文档管理模块设计 316
9.9.1文档管理模块概述 316
9.9.2文档管理模块技术分析 316
9.9.3文档管理模块实现过程 316
9.10口令修改模块设计 324
9.10.1口令修改模块概述 324
9.10.2口令修改模块实现过程 324
9.11开发问题解析 326
9.11.1怎样将数据表中的数据添加到ListControl控件中 326
9.11.2怎样取得文件的完整路径 327
9.12项目文件清单 327
9.13本章总结 327
第10章商品采购管理系统(Visual C++ 6.0+SQL Server 2008实现) 328
视频讲解:15分钟
10.1开发背景 329
10.2需求分析 329
10.3系统设计 329
10.3.1系统目标 329
10.3.2系统功能结构 329
10.3.3系统预览 329
10.3.4数据库设计 330
10.4数据库封装类说明 332
10.4.1数据库封装类概述 332
10.4.2数据库封装类步骤 332
10.4.3数据库封装类实现过程 333
10.5主窗体设计 339
10.5.1主窗体概述 339
10.5.2主窗体实现过程 339
10.6采购管理模块设计 342
10.6.1采购申请模块概述 342
10.6.2采购申请模块技术分析 342
10.6.3采购申请模块实现过程 342
10.6.4单元测试 348
10.7项目文件清单 350
10.8本章总结 350
序言
编写目的与背景
众所周知,当前社会需求和高校课程设置严重脱节,一方面企业找不到可迅速上手的人才,另一方面大学生就业难。如果有一些面向工作应用的案例参考书,让大学生得以参考,并能亲手去做,势必能缓解这种矛盾。本书就是这样一本书:项目开发案例型的、面向工作应用的软件开发类图书。编写本书的首要目的就是架起让学生从学校走向社会的桥梁。
其次,本书以完成小型项目为目的,让学生切身感受到软件开发给工作带来实实在在的用处和方便,并非只是枯燥的语法和陌生的术语,从而激发学生学习软件的兴趣,让学生变被动学习为自主自发学习。
第三,本书的项目开发案例过程完整,不但适合在学习软件开发时作为小型项目开发的参考书,而且可以作为毕业设计的案例参考书。
第四,丛书第1版于2008年6月出版,于2011年1月改版,因为编写细腻,配备全程视频备受读者瞩目,丛书累计销售16万册,成为近年来最受欢迎的软件开发项目案例类丛书之一。
在以上背景下,我们根据读者朋友的反馈,与时俱进,对丛书进行了改版。
本书特点
视频讲解
对于初学者来说,视频讲解是最好的导师,它能够引导初学者快速入门,使初学者感受到编程的快乐和成就感,增强进一步学习的信心。鉴于此,本书为每一个案例都配备了视频讲解,初学者可以通过视频讲解实现案例中的功能。
典型案例
本书案例均从实际应用角度出发,应用了当前流行的技术,涉及的知识广泛,读者可以从每个案例中积累丰富的实战经验。
代码注释
为了便于读者阅读程序代码,书中的代码均提供了详细的注释,并且整齐地纵向排列,可使读者快速领略作者意图。
? 代码贴士
案例类书籍通常会包含大量的程序代码,冗长的代码往往令初学者望而生畏。为了方便读者阅读和理解代码,本书避免了连续大篇幅的代码,将其分割为多个部分,并对重要的变量、方法和知识点设计了独具特色的代码贴士。
? 知识扩展
为了增加读者的编程经验和技巧,书中每个案例都标记有注意、技巧等提示信息,并且在每章中都提供有一项专题技术。
本书约定
由于篇幅有限,本书每章并不能逐一介绍案例中的各模块。作者选择了基础和典型的模块进行介绍,对于功能重复的模块,由于技术、设计思路和实现过程基本雷同,因此没有在书中体现。读者在学习过程中若有相关疑问,请登录本书官方网站。本书中涉及的功能模块在光盘中都附带有视频录像,方便读者学习。
适合读者
本书适合作为计算机相关专业的大学生、软件开发相关求职者和爱好者的毕业设计和项目开发的参考书。
本书服务
为了给读者提供更为方便快捷的服务,读者可以登录本书官方网站:www.rjkflm.com,或者加入QQ:6751066进行交流。
本书作者
本书由明日科技软件开发团队组织编写,主要由刘志铭、随光宇执笔,如下人员也参与了本书的编写工作,他们是:顾彦玲、李贺、杨丽、王小科、王国辉、张鑫、杨丽、赛奎春、高春艳、陈英、宋禹蒙、刘佳、辛洪郁、刘莉莉、陈丹丹、王雨竹、李伟、张金辉、李慧、刘欣、李继业、潘凯华、赵永发、寇长梅、赵会东、王敬洁、李浩然、苗春义、刘清怀、张世辉、张领等,在此一并感谢!
在编写本书的过程中,我们本着科学、严谨的态度,力求精益求精,但错误、疏漏之处在所难免,敬请广大读者批评指正。
感谢您购买本书,希望本书能成为您的良师益友,成为您步入编程高手之路的踏脚石。
宝剑锋从磨砺出,梅花香自苦寒来。祝读书快乐!
编者
| ISBN | |
|---|---|
| 出版社 | 清华大学出版社 |
| 作者 | 刘志铭 |
| 尺寸 | 16 |