前言C++语言程序设计项目实践
企业的软件项目开发一般分为问题的定义及规划、需求分析、软件设计、程序编码、软件测试5个阶段。很多学校把软件项目开发的5个阶段分解成多门独立的课程,导致学生在实践过程中不能系统地了解项目开发流程,没有形成完整的项目文档。另外,一个大型项目需要各类角色的参与和协作。本书以“个人通讯录”项目为案例,让学生以项目角色扮演的形式参与进来,从而认识自己的职责范围,发挥各自特长,同时基于CMMI 2级简化模型的软件过程管理实践,开发出“高内聚低耦合”的项目,与一线企业接轨。
本书使用Visual Studio进行MFC(Microsoft Foundation Classes,微软基础类库)项目开发,该工具是开发C++语言类项目使用的重要工具,而C++程序设计语言是计算机相关专业学生应掌握的一门语言。通过对Visual Studio开发平台和C++程序设计语言的学习,学生可以了解Visual Studio平台的开发环境,了解MFC的程序架构、事件驱动和用户程序界面设计方法,为成为一名优秀的软件程序员打下必要的基础。
本书具有以下特点。
(1) 以项目为中心。 以“个人通讯录”(ContactList)项目开发过程为主线,按照CMMI 2级简化模型逐步展开,以完成此项目的开发为终结。
(2) 先练后学。 在项目开发过程中先按照规定的步骤完成代码的编写和运行,然后对新知识进行讲解,让学生每节课都有成就感。
(3) 与主教材和主课程紧密结合。 本书不系统讲解语法知识,只注明所需语法知识在主教材和主课程中的位置,让学生自行学习或复习。
(4) 课程设计。 要求学生完成一个比ContactList难度略高的软件项目的开发。4~6名学生为一组,分配项目经理、软件工程师、测试工程师、UI设计师等角色,项目分成需求分析、概要设计、编码、测试和答辩5个环节执行。
(5) 应用程序界面。设计均采用商业化的风格,在课堂教学和课程设计实践中就开始培养学生编写商业化项目的思路与方法。
本书主要由南宁学院高博软件学院的黄匀、何文河编写,清华大学郑莉教授、高博软件学院的彭振云和唐昭琳参加了部分编写和审校工作,并在本书的编写中给予了许多建议,在此谨致谢意。在本书的编写过程中参考了目前国内比较优秀的有关MFC程序设计方面的书籍,在此谨向有关作者表示感谢。另外,本书建议安排64个学时,其中40个学时用于讲授本书和完成课堂练习,24个学时用于课程设计。
由于作者水平有限,书中难免会有疏漏和错误之处,恳请读者批评指正。
作者
2018年5月