本书为安徽省高校省级质量工程规划教材立项教材——计算机专业项目化系列教程(2017ghjc290)的组成部分;针对高职教育特点,从项目开发实际需求出发,以与企业合作开发的真实案例“职苑物业管理系统”的开发过程贯穿全书,由实际项目开发步骤合理安排知识结构,将课程内容与行业标准和岗位规范对接,教学过程与生存过程对接,每个任务和单元之后合理拓展知识,单元之后配有小结、实训和习题,以帮助读者巩固所学内容。另外学生可以通过扫描二维码在线学习操作视频。
本书共分 7 个单元,基于 Visual Studio 2015 进行开发和学习,主要介绍了 C# 基础知识,常用类,构造函数、属性、继承、多态、接口的实现方法,控制台程序设计和 WinForm 编程以及 C# 项目开发知识,以及系统安装与部署等内容。
本书适合作为高等职业院校计算机、电子信息、物联网技术应用等专业(方向)的教材,也可供从事信息技术、嵌入式系统与物联网技术开发的工程技术人员参考。
(1)以与企业合作开发的真实案例的开发过程贯穿全书,由实际项目开发步骤合理安排知识结构。
(2)重要内容通过微课视频进行展示,以方便学习者快速掌握。
C#是微软公司发布的由C和C++衍生出来的一门面向对象的编程语言。C#语言是运行于.NETFramework之上的高级程序设计语言。C#以其强大的操作能力、严谨的语法风格、创新的语言特性和便捷的面向组件编程的特点成为.NET开发的首选语言。
编者从多年从事高职高专程序设计语言教学的经验来看,学生要想学好面向对象程序设计语言,在启蒙阶段不能太难,知识点的引入要循序渐进,并且zui好是借助于自己身边的,能摸得着、看得见的并且业务逻辑不是很复杂的真实案例。
本书为安徽省高校省级质量工程规划教材立项项目——计算机专业项目化系列教程(2017ghjc290)的组成部分;本着“理论够用适度,案例引领学习”的原则,本教材所涉及的案例“职苑物业管理系统”为与企业合作开发的真实案例——职苑物业管理系统,并以此案例展开知识点的阐述。为了便于教学和学生学习,教材的编写参照C#课程教学标准和高职高专学生的特点对该案例进行了修改,并将案例按照C#知识点分解成若干单个任务引入相关章节中,全书基于Visual Studio 2015进行开发和调试。
1.本书内容
本书分三个阶段共七个单元。第一阶段介绍C#基础知识,第二阶段介绍WinForm编程,第三阶段是综合前面的知识点进行C#案例开发。每个任务分为三部分:第一部分介绍单元需要完成的任务,第二部分介绍任务涉及的基本知识点,第三部分是完成任务,有些必需而任务中没有涉及的知识则以知识拓展、拓展任务或延伸阅读的形式提供。本书七个单元的具体内容如下:
单元1为案例系统介绍,讲解了系统功能设计,初步了解项目功能。
单元2为.NET开发环境搭建,结合“职苑物业管理系统”项目讲解在C#环境下如何创建一个项目,使学生熟悉.NET开发环境,掌握.NET的基本操作。
单元3为C#语言基础,结合“职苑物业管理系统”的几个主要功能窗体引入C#基础知识的讲解,主要包括常用控件的基本属性、事件的使用,菜单的设计方法等。
单元4为面向对象程序设计基础,将“职苑物业管理系统”中的建筑物类等几个常用类引入教学中,系统讲解类的定义方法和基本应用规则,构造函数、属性、继承、多态、接口的实现方法。
单元5为系统窗体界面设计,将“职苑物业管理系统”主要的窗体引入到教学中,使用基本控件进行窗体设计,并结合面向对象的程序设计思想进行数据操作。
单元6为系统各功能模块实现,对“职苑物业管理系统”进行系统综合的讲解,引导学生将前面章节所设计的模块拼装成一个完整的项目。
单元7为系统部署与安装,讲述在C#中如何将一个项目编译打包制作成安装包。
2.教学内容学时安排建议
本书建议授课(线下)72(或64)学时+自学(线上)14学时,可根据实际情况决定是否进行混合教学。教学单元与课时安排见表1。
表1 教学单元及学时安排
单元名称 授课学时安排 自学学时
单元 1 案例系统介绍 2(1) 1
单元 2 .NET 开发环境搭建 2(1) 1
单元 3 C# 语言基础 20(18) 4
单元 4 面向对象程序设计基础 16(14) 2
单元 5 系统窗体界面设计 18(16) 3
单元 6 系统各功能模块实现 12(12) 2
单元 7 系统部署与安装 2(2) 1
合计 72(64) 14
3.实训教学建议
本书以一个完整的案例“职苑物业管理系统”贯穿始终,按照“提出任务-模仿工作现场-增加必备技能-解决实际问题-实现功能”为主体的实践教学要求,将“职苑物业管理系统”各功能模块按照任务分解,每单元实现,来加强学生实践能力训练,学习者可以按照每单元任务要求完成功能。
每个单元的结尾增加了和单元任务类似的实训,学习者通过练习加深对所学内容的理解。
对学习者而言,能有的放矢,有实际项目可做,仿佛置身实际项目开发情景,书中的重点难点标识清楚,使学习者能迅速掌握主要内容。
4.配套资源
为了配合教师更好地教学和学生更方便地学习,本书开发了丰富的数字化教学资源。可使用的教学资源见表2,提供有配套的PPT课件,并提供了完整的项目代码和教学视频供教师和学生课下学习使用。具体下载地址为:http://www.tdpress.com/51eds/,联系邮箱:TLFSQ@126.com,教材视频请扫描相关内容的二维码进行观看学习。
表2?? 课程教学资源一览表
序号 资源名称 数量 表现形式
1 授课计划 1 Word 文档,包括章节内容、重点难点、课外安排,让学习者知道如何使用资源完成学习
2 电子课件 7 PPT 文件,可供教师根据具体需要加以修改后使用
3 微课视频 11 MP4 文件,每单元的重要内容通过微课小视频进行展示,让学习者快速掌握
4 案例素材 1 .NET 程序包,完整的“职苑物业管理系统”实现
本书由安徽省高职高专专业带头人、安徽省教学名师、铜陵职业技术学院方少卿任主编,铜陵职业技术学院张涛、安徽工业职业技术学院王雪峰、铜陵职业技术学院查艳任副主编。具体编写分工如下:单元1、单元5由张涛编写;单元2、单元4由查艳编写;单元3和附录A、附录B由方少卿编写;单元6、单元7由王雪峰编写。全书由方少卿统稿并zui后定稿。
本书在编写过程中还得到了铜陵职业技术学院和安徽工业职业技术学院有关领导的大力支持,同时教材编写过程中参考了本领域的相关教材和著作,在此一并深表谢意。
由于编者水平有限,书中疏漏与不足之处在所难免,恳请广大读者提出宝贵意见和建议,以便修订时加以完善。
编 者
2019年10月
单元 1?? 案例系统介绍??..............1
任务 1?? 系统功能设计??.............................................1
任务 2?? 项目功能演示??.............................................7
知识拓展??..........................................................................12
小结..............................................................13
实训..............................................................13
习题..............................................................13
单元 2??.NET 开发环境搭建??..........14
任务 1?? 搭建物业管理系统开发环境??..........14
知识技能准备
一、C# 的特点??.............................................................15
二、什么是 .NET??........................................................15
三、.NET??Framework??..........................................15
四、Visual??Studio??2015(Community??
版)的运行平台和zui低配置??....................16
任务 2?? 创建 C# 应用程序项目??......................17
知识技能准备
一、Visual??Studio??2015 界面组成??..............18
二、工具箱与属性窗口??..........................................18
三、解决方案资源管理器??.....................................19
知识拓展??..........................................................................22
小结..............................................................23
实训..............................................................23
习题..............................................................23
单元 3?? C# 语言基础??..............24
任务 1?? 显示物业管理系统主菜单??...............24
知识技能准备
一、C# 程序基本结构??..............................................25
二、控制台的输入 / 输出??......................................27
任务 2?? 物业费计算??................................................30
知识技能准备
一、C# 数据类型??........................................................31
二、常量与变量??............................................................33
三、C# 数据类型转换??..............................................36
任务 3?? 模拟用户登录??..........................................40
知识技能准备
一、运算符??.....................................................................40
二、表达式??.....................................................................42
任务 4?? 选择菜单操作??..........................................46
知识技能准备
一、程序的三种基本结构??.....................................46
二、选择结构??................................................................47
任务 5?? 浏览住户信息??..........................................53
知识技能准备
一、数组????.........................................................................54
二、结构体??......................................................................57
三、循环结构??.................................................................58
四、break 语句??...........................................................64
五、continue 语句??...................................................64
任务 6?? 查询住户信息??..........................................65
知识技能准备
结构数组??............................................................................66
知识拓展??..........................................................................71
小结..............................................................73
实训..............................................................73
习题..............................................................73
单元 4??面向对象程序设计基础??........76
任务 1?? 创建建筑物类??..........................................76
知识技能准备
一、OOP 概述??...............................................................77
二、类及对象??.................................................................77
任务 2?? 创建住宅、商铺类??................................93
知识技能准备
一、类的继承??................................................................94
二、声明子类??................................................................94
三、继承的实际应用??................................................94
任务 3?? 创建物业费计算接口??.......................103
知识技能准备
一、接口的概念??........................................................104
二、接口的声明??........................................................104
三、接口的实现??........................................................105
小结............................................................108
实训............................................................108
习题............................................................109
单元 5?? 系统窗体界面设计??........111
任务 1?? 用户登录窗体设计??.............................112
知识技能准备
一、窗体介绍??..............................................................112
二、控件的概念??.........................................................115
三、Label(标签)控件??.....................................117
四、TextBox(文本框)控件??.......................118
五、Button(按钮)控件??.................................119
六、MessageBox(消息对话框)控件??....121
任务 2?? 用户管理窗体设计??.............................127
知识技能准备
一、TabControl(选项卡)控件??.................127
二、ListBox(列表框)控件??..........................129
三、CheckedListBox(复选列表框)??
控件??.........................................................................131
任务 3?? 楼盘管理窗体设计??.............................136
知识技能准备
一、RadioButton(单选按钮)??
控件??.........................................................................136
二、DataGridView 控件??...................................137
三、ContextMenuStrip(上下文??
菜单)控件??........................................................139
任务 4?? 住宅管理窗体设计.............................145
知识技能准备
一、ComboBox??( 组合框 ) 控件...................145
二、OpenFileDialog(打开文件??
对话框)控件??..................................................147
三、PictureBox(图片框)控件??................149
四、GroupBox(分组框)控件??..................149
任务 5?? 物业费管理窗体设计??.......................154
知识技能准备
一、CheckBox( 复选框 ) 控件??......................154
二、DataTimePicker(日期)??
控件??.........................................................................156
三、SaveFileDialog(保存文件??
对话框)控件??.................................................158
任务 6?? 系统主界面设计??..................................164
知识技能准备
一、WinForm 窗体分类....................................164
二、ImageList(图像列表)控件??..............167
三、MenuStrip( 菜单栏 ) 控件??......................168
文前.indd 2 2020-3-11 11:14:12
III 目录
四、ToolStrip(工具栏)控件??.....................169
五、StatusStrip(状态栏)控件??................170
六、Timer(计时器)控件??.............................170
知识拓展??.......................................................................175
小结............................................................181
实训............................................................181
习题............................................................183
单元 6??系统各功能模块实现??.........185
任务 1?? 职苑物业管理系统分析??..................185
任务 2?? 数据操作的封装??..................................190
任务 3?? 楼盘管理功能实现??.............................196
知识技能准备
一、DataGridView 控件??...................................196
二、SQL 语句??.............................................................197
任务 4?? 住宅管理功能实现.............................205
知识技能准备
一、打开文件对话框控件??
OpenFileDialog??..........................................205
二、将图片存储到数据库的方法??.................205
任务 5?? 物业费管理功能实现??.......................214
知识技能准备
时间以及日期的控件...................................214
任务 6?? 主界面设计??.............................................221
知识技能准备
一、MDI 窗体??............................................................221
二、菜单设计??..............................................................222
三、工具栏设计??.........................................................223
四、状态栏设计??........................................................224
五、ImageList 控件??..............................................225
小结............................................................230
实训............................................................231
习题............................................................232
单元 7??系统部署与安装??.............234
任务 1?? 系统部署??..................................................234
任务 2?? 系统安装??..................................................241
小结............................................................243
实训............................................................243
习题............................................................243
附录 A?? C# 语言关键字??...........244
附录 B?? C# 运算符优先级与结合性??...245
参考文献??........................246