本书内容架构.
关于本书架构(参考图1)经过仔细的沙盘推演与严谨弹性的内容规划,总算规划出能够满足读者学习Visual C# 2008程序设计的“面向对象程序设计”、“窗口应用程序设计”和“数据库应用程序设计”这三大类,将此三大类再细分出16章的真经,此程序设计的武功秘籍可谓“章章精髓、页页精彩”。希望通过本书介绍来满足一般程序设计者对新技术的需求,以及大专院校教授C#面向对象程序设计相关课程所需的知识,第1章到第10章后提供的习题可供读者自行测验以巩固自己所学的知识;而习题部分的程序实作演练,更可以强化自我面对未来信息工作时的实践能力,让你的就业之路更为平顺。
图1 本书架构图
从第1章到第10章为面向对象程序设计基础章节,通过经典的程序范例,图文并茂地说明核心程序设计的概念,让你学习C#语言事半功倍,协助你打好扎实深厚的C#基础功力。第11章到第14章主要介绍常见的窗口应用程序设计所需了解的控件用法与范例程序;然后介绍鼠标与键盘的事件处理方式,让你轻松设计所需的窗口应用程序。第15章和第16章针对数据库应用程序设计提供全方位的联机访问技巧,让你轻松从数据库中存取所需信息,并且说明如何通过新技术LINQ的应用和加载,让你轻松对各种数据源进行处理。
各章节内容说明如下:
第1章:新一代集成开发环境Visual Studio 2008的介绍
本章重点在于了解什么是.NET、.NET Framework 3.5和C#,并且对于Visual C# 2008的演变过程进行翔实完整的介绍;然后说明Visual Studio 2008最令人惊叹的新技术,让你明白如何运用Visual C# 2008的特色,以及其新增与重要的功能;最后,针对Visual C# 2008与Visual Basic 2008的差异进行分析比较。
第2章:Windows Form集成开发环境(IDE)介绍
本章主要针对Visual C# 2008所提供的集成开发环境(IDE)与其操作技巧进行说明。首先,讲解Visual C# 2008项目架构和常用图示,并说明环境界面的功能操作方式;然后,讲解项目开发操作技巧,如代码变更追踪功能、将dll文件加入项目参考等;最后,说明最佳环境设定方式和除错方式,让你在最佳的环境设定中快速完成开发,并由除错技巧来减少程序错误的发生,进而提高开发程序的效率。
第3章:Visual C# 2008数据类型
本章主要介绍用于.NET Framework上的通用类型系统以了解“实数类型”与“参考类型”的主要成员,并说明实数类型与参考类型之间转换所涉及的Boxing与Unboxing是如何运作的,而值类型之间的“隐含转换”和“明确转换”也有说明;然后,介绍了变量与常量、运算符的种类与用法,包含is和as运算符的用法及新功能var隐含类型的用法;最后,在数据类型方面介绍enum、struct、Nullable等,并针对类型之间的3种转换方式进行说明,通过上述主题介绍了数据类型的核心概念。
第4章:Visual C# 2008的程序流程控制
本章主要介绍结构化程序设计的3种主要形式(顺序、选择、循环),说明程序如何通过结构化程序设计流程来加以控制,并且了解“顺序”、“选择”、“循环”的使用方式与时机;然后,学习程序块的终止、继续和跳离的语法使用方式,使你完全掌控程序执行流程,让程序的运作全听命于你所下达的指令(语法)。
第5章:字符(Char)与字符串(String)
本章主要介绍字符和字符串的声明方式与其常用的“属性”和“方法”;然后,说明在信息系统开发过程中经常使用到的字符串格式化技巧,通过全方位的范例示范,让你轻松完成设定所要输出的“文字”和“数值”的格式;最后,讲解StringBuilder类常用的属性和方法,让你在字符串的管理操作上更加得心应手。
第6章:数组与集合类型
本章主要介绍数组和集合的使用方式。数组方面包括一维数组、二维数组、三维数组、不规则数组和隐含类型数组的声明方式,并且通过实际程序范例说明常用的数组属性和方法;还介绍了什么是集合及集合类的三大类;最后,讲解常见的System.Collections所属的类:ArrayList、Hashtable、SortedList、Queue和Stack等,让你充分掌握各种集合类型与其核心价值。
第7章:方法与参数(Method & Parameter)
本章主要介绍方法与参数的使用方式,包含方法的调用与声明、访问修饰词的有效存取范围。在“方法参数”方面主要介绍传递基本数据类型参数、对象参数、数组参数、ref参数和out参数等;然后,针对“构造函数”和“析构函数”说明如何初始化对象与释放资源,并且说明using陈述句使用技巧;最后,讲解程序设计必学技巧的“递归”程序编写要诀。
第8章:异常处理(Exception handling)要诀
.本章主要介绍如何在Visual C# 2008开发环境中通过“异常处理机制”来捕捉程序的错误(Bugs),除了讲解系统默认异常类型的使用方式之外,也让你了解“专属的异常类型”。
第9章:面向对象程序设计(OOP)
本章主要介绍如何通过面向对象程序设计的方式建立易用的窗口应用程序,主要探讨对象包含类型、对象、命名空间、继承性、多类、重载、复制、封装、抽象化、界面、抽象类和密封类等,让你成为面向对象程序设计高手,更进一步协助你开发架构完善的面向对象应用程序。
第10章:文件处理(File processing)
本章主要介绍通过System.IO命名空间来对文件或目录进行存取,包括文件读取、文件写入、文件删除、变更文件名、文件移动、文件复制、文件访问时间相关信息、建立目录、删除目录、移动目录、列出目录所有文件和列出目录所有子目录等;对于项目中的三大文件:源文件、配置文件和应用程序配置文件的使用和存取都有详细说明。
第11章:常用控件与MessageBox类介绍
本章主要介绍Visual C# 2008的一般控件,通过讲解每个控件的特性及使用时机,并且解说其常用的属性、方法与事件,并搭配生活化的范例程序,让你可以快速了解控件的基本操作与应用;另外,还讲解窗口应用程序的沟通大使MessageBox类,让你适时显示相关消息与用户进行互动,帮助你开发出更为完善的窗口应用程序。
第12章:其他控件分类介绍
本章主要是介绍Visual C# 2008的菜单与工具栏(Menus & Toolbars)控件、数据(Data)控件、组件(Components)控件、对话框(Dialogs)控件、其他特殊控件(MicrosoftReportViewer、ElementHost和PrintForm)等,通过讲解每个控件的特性及使用时机,并且解说其常用的属性、方法、与事件,并搭配高实用性的经典范例程序,让你可以快速了解这些控件的使用方法。
第13章:WPF应用程序控件与XAML语法
本章主要介绍WPF应用程序的开发和XAML语法介绍,WPF应用程序与Windows Form应用程序设计上十分相似,非常容易上手;另外,WPF应用程序设计比Windows Form应用程序更有弹性,除了提供更丰富的用户接口(UI)设计之外,在UI部分更容易进行修改或功能扩充,并且事件处理方式也更灵活。通过本章讲解WPF控件的常用属性、方法与事件,并搭配范例程序操作,让你可以轻松完成WPF应用程序的开发。
第14章:窗口事件的控制方式
本章主要介绍事件的概念与使用方法,并且通过经典范例程序来让你了解如何利用“鼠标事件”及“键盘事件”增加应用程序的互动效果;最后通过讲解“委托”(Delegate)的概念和使用方式,让你获得另一种方法和事件的间接调用技巧,使委托这个超级遥控器功能发挥到淋漓尽致。..
第15章:ADO.NET 3.5组件介绍
本章主要介绍ADO.NET架构与新一代ADO.NET 3.5提供的重要功能,包括LINQ、ADO.NET Entity Framework、多重数据结果集(MARS)、大量复制操作(Bulk Copy Operations)、快照隔离(Snapshot Isolation)等;然后,介绍导入System.Data命名空间以使用ADO.NET组件;还介绍ADO.NET的两大类:.NET Framework Data Provider与DataSet对象;最后,介绍Visual C# 2008与数据库Microsoft Access 2007和SQL Server 2005/ 2008的数据库管理联机方式,当你阅读完本章之后对于数据库存取和联机方式的全方位运用更能得心应手。
第16章:语言集成查询(LINQ)
本章主要介绍LINQ架构,以及LINQ的标准查询方式;然后,讲解LINQ to ADO.NET(LINQ to SQL和LINQ to DataSet);最后,介绍LINQ to Objects和LINQ to XML,让你对于各种LINQ技术的应用方式能够运用自如。
光盘内容说明
光盘内容包含附录电子书、教学文件、程序范例和数据库,光盘根目录架构如图2所示。
图2 光盘目录示意图
教学文件
包含基础知识的教学视频,帮助读者更清楚地了解各种工具的使用方法,如表1所示。表1 基础知识的教学视频
章 节 教学文件名称 内 容
CH00 Console.EXE 控制台应用程序开发方式
CH00 WindowsForm.EXE 窗口应用程序开发方式
CH00 WpfApplication.EXE WPF应用程序开发方式
CH02 StepInto\StepInto.EXE 逐步执行(Step Into)的程序代码侦错技巧
CH02 StepOut\StepOut.EXE 不进入(Step Over)的程序代码侦错技巧
CH02 StepOver\StepOver.EXE 跳离函数(Step Out)的程序代码侦错技巧
CH02 WindowsFormDemo\WindowsFormDemo.EXE 设计一个简单的窗口应用程序
附录电子书
附录电子书目录是存放本书中所有附录内容的电子PDF文件。
电子文件名 附录 内容
VC#2008-App-A.pdf 附录 A Visual Studio 2008 Professional安装指引
VC#2008-App-B.pdf 附录 B SQL Server 2005 安装指引与SP2更新
VC#2008-App-C.pdf 附录 C ASCII字符表(ASCII Character code table)
VC#2008-App-D.pdf 附录 D Visual C# 2008 Express免费版本安装指引
VC#2008-App-E.pdf 附录 E Visual C# 2008窗口应用程序配置与安装
数据库
此文件夹存放本书所使用到的所有数据库文件(包含习题部分),主要分为两部分:Access数据库和SQL Server数据库。
程序范例
存放各章节所有精心设计的经典程序范例,排序方式依据章节的顺序排列,搭配书中的“文件说明”介绍,读者应很容易找到对应的程序范例。
备注(Note):
要执行本光盘大部分范例程序,必须确定系统已经安装Windows Installer 3.1、Microsoft .NET
Framework 3.5和SQL Server 2005 Express Edition(SP2)以上版本,才能确保Visual C# 2008应用程序能顺利运行。而Visual C# 2008应用程序开发,本书以Visual Studio 2008 Professional软件为主。注意:范例程序中的所有文件要解除“只读”属性才能运行,否则进行存取时可能会有问题。
标准操作环境
为了让应用程序能顺利执行,在执行本书光盘包含的范例程序时,请读者先检查操作环境是否与笔者所述的标准操作环境一致,因为不一致的操作环境可能会出现问题,若真的遇到问题笔者也无法立即为你解答,所以最好的解决方式就是将你的运行环境与本书范例的运行环境设为一致。光盘内的范例程序适用于Windows XP和Windows Vista操作系统,相关系统及软件如下所示。
Windows XP操作系统:
Windows XP Professional Service Pack 2
Visual Studio 2008 Professional
SQL Server 2005 Service Pack 2
Windows Installer 3.1
Microsoft .NET Framework 3.5
SQL Server 2005 Express Edition(SP2)
Microsoft Office Access 2007
Windows Vista操作系统:
Visual Studio 2008 Professional
Windows Installer 3.1
Microsoft .NET Framework 3.5
SQL Server 2005 Express Edition(SP2)
Microsoft Office Access 2007
快速入门秘籍指引
阅读本书建议
若你只想学习或教授面向对象程序设计课程,建议阅读本书第1章到第10章的内容,它能帮助你奠定C#深厚的基础功力。
若你已经具备C#程序开发基础功力,希望能学习窗口应用程序设计,建议阅读第11章到第14章。
若你已经具备C#窗口应用程序设计基础功力,希望能学习数据库应用程序设计,建议阅读第15章和第16章。
若你已经是Visual C#的老手,那么可选择性地阅读第1章、第13章和第16章等介绍新技术的章节,让你快速掌握新版本的重要技术概念。
若你是新手入门,那么别怀疑从第1章阅读到第16章肯定是最佳策略。
本书程序测试建议
测试程序之前先确定已经安装Windows Installer 3.1、Microsoft .NET Framework 3.5和SQL Server 2005 Express Edition (SP2)以上版本。
打开本书C#范例程序,最好先用系统管理员身份打开Visual Studio 2008 Professional,然后再指定打开范例文件,减少因权限不足而造成无法访问的错误。
范例程序中的所有文件记得要解除“只读”属性,以减少存取可能产生的错误。
窗口应用程序和WPF应用程序开发技巧
当你在阅读第1章到第10章时,请先执行光盘内的“教学文件CH00\WindowsForm
.EXE”,以了解如何设计C#窗口应用程序。
当你在阅读第13章 WPF应用程控件与XAML语法时,请先执行光盘内的“教学文件\CH00\WpfApplication.EXE”,以了解如何拖曳控件与执行WPF应用程序。...