封面
版权信息
前言
第1章 开启C#之旅
1.1 软件开发概述
1.2 代码构建的重要性
1.3 认识C#编程语言
1.4 构建C#开发环境
代码 1-1:C#程序基本结构
代码 1-2:控制台输出(<Hello>\Program.cs)
代码 1-3:窗体的启动(<HelloForm>\Program.cs)
代码 1-4:退出按钮(<HelloForm>\Form1.cs)
1.5 高质量代码准则:可阅读
1.6 高质量代码准则:用实践证明一切
代码 1-5:性能测试模板(<SpeedTestTemplate>\Program.cs)
1.7 高质量代码准则:好心情带来高质量
1.8 准备你的开发工具箱
第2章 处理数据
2.1 C#数据处理基础
代码 2-1:定义变量(<VariableDemo>\Program.cs)
代码 2-2:定义常量(<ConstantDemo>\Program.cs)
2.2 整数
代码 2-3:整数除法运算应用错误演示(<DivisionDemo1>\Program.cs)
代码 2-4:浮点数除法(<DivisionDemo2>\Program.cs)
代码 2-5:整数溢出(<OverflowDemo>\Program.cs)
代码 2-6:检查溢出(<checkedDemo>\Program.cs)
代码 2-7:++运算(<PlusPlusDemo>\Program.cs)
代码 2-8:整数移位运算(<ShifeDemo>\Program.cs)
2.3 浮点数与decimal类型
代码 2-9:计算两点间距离(<MathDemo>\Program.cs)
代码 2-10:Equals()方法比较数值(<EqualsDemo>\Program.cs)
代码 2-11:Round()方法获取指定小数位(<RoundDemo>\Program.cs)
代码 2-12:整数与浮点数运算速度测试(<SpeedTest>\Program.cs)
2.4 布尔类型
代码 2-13:布尔数据运算(<boolDemo>\Program.cs)
2.5 字符
代码 2-14:字符及其编码的转换(<charDemo>\Program.cs)
2.6 字符串
代码 2-15:转义字符(<stringDemo1>\Program.cs)
代码 2-16:逐字字符串(<stringDemo2>\Program.cs)
代码 2-17:字符串连接(<stringDemo3>\Program.cs)
(1)字母大小写转换
(2)去除空白字符
(3)替换
- APP免费
(4)比较
- APP免费
代码 2-18:字符串比较(<stringDemo4>\Program.cs)
- APP免费
代码 2-19:Equals()方法比较字符串(<stringDemo5>\Program.cs)
- APP免费
(5)截取字符串
- APP免费
代码 2-20:截取字符串(<stringDemo6>\Program.cs)
- APP免费
(6)其他操作
- APP免费
代码 2-21:字符与字符串运算测试(<singleCharTest>\Program.cs)
- APP免费
代码 2-22:使用StringBuilder类(<StringBuilderDemo>\Program.cs)
- APP免费
2.7 日期与时间的处理
- APP免费
代码 2-23:日期计算(<DateTimeDemo1>\Program.cs)
- APP免费
代码 2-24:获取农历年份(<ChineseCalendarDemo>\Program.cs)
- APP免费
代码 2-25:获取农历月份与日期(<ChineseCalendarDemo1>\Program.cs)
- APP免费
2.8 数据类型的转换
- APP免费
代码 2-26:数据类型显式转换(<TypeConversionDemo>\Program.cs)
- APP免费
代码 2-27:TryParse()方法转换数据类型(<TryParseDemo>\Program.cs)
- APP免费
代码 2-28:Convert类转换数据类型(<ConvertDemo>\Program.cs)
- APP免费
2.9 object类型
- APP免费
代码 2-29:装箱操作(<boxingDemo>\Program.cs)
- APP免费
代码 2-30:整数与object类型运算速度测试(<objectTest>\Program.cs)
- APP免费
2.10 C#运算符
- APP免费
第3章 控制程序流程
- APP免费
3.1 if语句
- APP免费
代码 3-1:if语句应用(<ifDemo1>\Program.cs)
- APP免费
代码 3-2:if-else语句应用(<ifDemo2>\Program.cs)
- APP免费
代码 3-3:if语句的复杂条件判断(<ifDemo3>\Program.cs)
- APP免费
代码 3-4:if语句的嵌套(<ifDemo4>\Program.cs)
- APP免费
代码 3-5:猜数字小游戏(<NumericGame>\Form1.cs)
- APP免费
3.2 switch语句
- APP免费
代码 3-6:判断月份中的天数(<switchDemo1>\Program.cs)
- APP免费
代码 3-7:switch语句处理笑脸移动(<MoveSmile>\Form1.cs)
- APP免费
3.3 for语句
- APP免费
代码 3-8:for语句计算累加(<forDemo1>\Program.cs)
- APP免费
代码 3-9:for语句计算偶数累加(1)(<forDemo2>\Program.cs)
- APP免费
代码 3-10:for语句计算偶数累加(2)(<forDemo3>\Program.cs)
- APP免费
3.4 while语句
- APP免费
代码 3-11:while语句计算累加(<whileDemo1>\Program.cs)
- APP免费
3.5 do语句
- APP免费
代码 3-12:do-while语句计算累加(<doDemo1>\Program.cs)
- APP免费
3.6 foreach语句
- APP免费
代码 3-13:foreach语句遍历窗体控件(<foreachDemo1>\Form1.cs)
- APP免费
3.7 break语句
- APP免费
3.8 continue语句
- APP免费
代码 3-14:continue语句应用(<continueDemo>\Program.cs)
- APP免费
3.9 goto语句与标签
- APP免费
代码 3-15:goto语句模拟循环结构(<gotoDemo1>\Program.cs)
- APP免费
第4章 处理异常
- APP免费
4.1 C#中的异常处理
- APP免费
代码 4-1:try-catch语句应用(<tryDemo1>\Program.cs)
- APP免费
代码 4-2:处理具体类型的异常(<tryDemo2>\Program.cs)
- APP免费
代码 4-3:finally语句应用(<tryDemo3>\Program.cs)
- APP免费
代码 4-4:throw语句应用(<throwDemo>\Program.cs)
- APP免费
代码 4-5:捕捉throw语句抛出的异常(<throwDemo1>\Program.cs)
- APP免费
4.2 高质量代码准则:处理异常智能化、模式化
- APP免费
4.3 在Visual C#中调试代码
- APP免费
代码 4-6:添加测试用代码(<TestingDemo>\Program.cs)
- APP免费
第5章 数组
- APP免费
5.1 C#中的数组
- APP免费
代码 5-1:数组的定义及成员访问(<ArrayDemo1>\Program.cs)
- APP免费
代码 5-2:数组成员赋值与调用(<ArrayDemo2>\Program.cs)
- APP免费
代码 5-3:foreach语句访问数组成员(<ArrayDemo4>\Program.cs)
- APP免费
代码 5-4:洗牌(数组成员随机排序)(<ArrayDemo3>\Program.cs)
- APP免费
代码 5-5:二维数组应用(<ArrayDemo5>\Program.cs)
- APP免费
代码 5-6:二维数组成员调用(<ArrayDemo6>\Program.cs)
- APP免费
5.2 使用Array类
- APP免费
代码 5-7:数组成员排序(<ArraySortDemo>\Program.cs)
- APP免费
代码 5-8:数组成员反序排列(<ArrayReverseDemo>\Program.cs)
- APP免费
代码 5-9:修改数组成员数量(<ArrayResizeDemo>\Program.cs)
- APP免费
5.3 使用ArrayList类
- APP免费
代码 5-10:ArrayList类应用(<ArrayListDemo>\Program.cs)
- APP免费
5.4 使用Hashtable类
- APP免费
代码 5-11:Hashtable类应用(<HashtableDemo>\Program.cs)
- APP免费
5.5 表驱动法——完善中国农历信息的处理
- APP免费
代码 5-12:表驱动法(显示农历信息)(<CnCalendarDemo>\Program.cs)
- APP免费
第6章 结构
- APP免费
6.1 创建结构类型
- APP免费
代码 6-1:结构的定义与应用(<structDemo1>\Program.cs)
- APP免费
6.2 结构成员
- APP免费
代码 6-2:定义结构中的方法(<structDemo2>\Program.cs)
- APP免费
代码 6-3:定义结构中的属性(<structDemo3>\Program.cs)
- APP免费
6.3 结构的应用
- APP免费
第7章 枚举
- APP免费
7.1 C#中的枚举
- APP免费
代码 7-1:枚举的定义与应用(<enumDemo1>\Program.cs)
- APP免费
代码 7-2:默认的枚举成员数值(<enumDemo2>\Program.cs)
- APP免费
7.2 枚举的应用
- APP免费
第8章 类
- APP免费
8.1 创建类的作用与目的
- APP免费
8.2 C#中的类
- APP免费
代码 8-1:定义类(<classDemo1>\Program.cs)
- APP免费
代码 8-2:类的应用(<classDemo1>\Program.cs)
- APP免费
代码 8-3:类的构造函数与析构函数(<classDemo2>\Program.cs)
- APP免费
代码 8-4:CHuman类(构造函数重载)(<ContructerOverrideDemo>\CHuman.cs)
- APP免费
代码 8-5:使用不同构造函数创建对象(<ContructerOverrideDemo>\Program.cs)
- APP免费
代码 8-6:构造函数链(<ConstructorChainingDemo>\CHuman.cs)
- APP免费
8.3 类成员的可访问性
- APP免费
8.4 变量
- APP免费
8.5 属性
- APP免费
代码 8-7:属性值读取操作(<readonlyPropertyDemo>\Program.cs)
- APP免费
代码 8-8:定义类的属性(<propertyDemo>\Program.cs)
- APP免费
8.6 方法
- APP免费
代码 8-9:定义类的方法(<methodDemo1>\Program.cs)
- APP免费
代码 8-10:方法的值参数(<methodDemo2>\Program.cs)
- APP免费
代码 8-11:方法的引用参数(<methodDemo3>\Program.cs)
- APP免费
代码 8-12:方法的输出参数(<methodDemo4>\Program.cs)
- APP免费
代码 8-13:方法的参数数组(<methodDemo5>\Program.cs)
- APP免费
代码 8-14:方法的重载(<methodDemo6>\Program.cs)
- APP免费
8.7 索引器
- APP免费
代码 8-15:定义类的索引器(<indexerDemo>\CDictionary.cs)
- APP免费
代码 8-16:索引器的应用(<indexerDemo>\Program.cs)
- APP免费
8.8 静态类与静态成员
- APP免费
代码 8-17:定义类的静态成员(<staticDemo>\CTest.cs)
- APP免费
代码 8-18:静态成员的调用(<staticDemo>\Program.cs)
- APP免费
代码 8-19:定义静态类(<staticClassDemo>\CC.cs)
- APP免费
8.9 关于类的更多内容
- APP免费
8.10 高质量代码准则:创建高质量的类
- APP免费
8.11 封装中国农历信息类
- APP免费
代码 8-20:封装农历信息类(<CnCalendar>\CCalendar.cs)
- APP免费
代码 8-21:添加(<CnCalendar>\Form1.cs)
- APP免费
代码 8-22:重构农历信息类(<CnCalendar1>\CCalendar1.cs)
- APP免费
代码 8-23:测试两个版本的农历信息类(<CnCalendear1>\Program.cs)
- APP免费
第9章 类的继承
- APP免费
9.1 继承概述
- APP免费
代码 9-1:类的继承(CUnit类)(<inheritDemo1>\CUnit.cs)
- APP免费
代码 9-2:继承CUnit类(<inheritDemo1>\Units.cs)
- APP免费
代码 9-3:类的继承(子类的使用)(<inheritDemo1>\Program.cs)
- APP免费
代码 9-4:继承基类的构造函数(<inheritDemo2>\Units.cs)
- APP免费
代码 9-5:测试子类的构造函数(<inheritDemo2>\Program.cs)
- APP免费
代码 9-6:密封类(<sealedDemo>\Program.cs)
- APP免费
9.2 子类
- APP免费
代码 9-7:扩展基类成员(<inheritDemo3>\Units.cs)
- APP免费
代码 9-8:测试子类扩展成员(<inheritDemo3>\Program.cs)
- APP免费
代码 9-9:隐藏基类成员(<inheritDemo4>\Units.cs)
- APP免费
代码 9-10:区分基类与子类成员(<inheritDemo5>\Units.cs)
- APP免费
代码 9-11:测试基类与子类成员(<inheritDemo5>\Program.cs)
- APP免费
代码 9-12:重写虚方法(<overrideDemo>\Class1.cs)
- APP免费
代码 9-13:测试重写方法(<overrideDemo>\Program.cs)
- APP免费
9.3 抽象类与抽象成员
- APP免费
代码 9-14:定义抽象类(<abstractDemo1>\CUnit.cs)
- APP免费
代码 9-15:定义抽象方法(<abstractDemo2>\CUnit.cs)
- APP免费
代码 9-16:重写抽象方法(<abstractDemo2>\Units.cs)
- APP免费
9.4 继承的局限性
- APP免费
第10章 接口
- APP免费
10.1 接口的特点
- APP免费
10.2 创建接口
- APP免费
代码 10-1:定义接口类型(IUnit接口)(<interfaceDemo1>\Interfaces.cs)
- APP免费
10.3 实现接口
- APP免费
代码 10-2:实现接口类(CUnit类)(<interfaceDemo1>\CUnit.cs)
- APP免费
代码 10-3:接口测试(<interfaceDemo1>\Program.cs)
- APP免费
10.4 接口的继承
- APP免费
代码 10-4:接口的继承(<interfaceDemo2>\Program.cs)
- APP免费
10.5 实现多个接口
- APP免费
代码 10-5:实现多个接口(<interfaceDemo3>\Program.cs)
- APP免费
代码 10-6:多接口同名方法区分(<interfaceDemo4>\Program.cs)
- APP免费
代码 10-7:接口类型转换调用(<interfaceDemo5>\Program.cs)
- APP免费
第11章 委托与事件
- APP免费
11.1 访问者模式
- APP免费
11.2 委托
- APP免费
代码 11-1:委托的定义与应用(<delegateDemo1>\Program.cs)
- APP免费
11.3 事件
- APP免费
代码 11-2:按钮控件Click事件响应代码结构(<eventDemo1>\Form1.cs)
- APP免费
代码 11-3:定义NumberTextBox控件(<eventDemo2>\NumberTextBox.cs)
- APP免费
代码 11-4:添加事件响应代码(<eventDemo2>\Form1.cs)
- APP免费
11.4 多路广播委托
- APP免费
代码 11-5:多路广播委托(<MulticastDelegateDemo>\Program.cs)
- APP免费
第12章 命名空间
- APP免费
12.1 命名空间的成员
- APP免费
代码 12-1:内部类(<classDemo>\Program.cs)
- APP免费
12.2 命名空间的组织
- APP免费
12.3 引用与别名
- APP免费
代码 12-2:不同命名空间中的同名类(<usingDemo>\Class1.cs)
- APP免费
代码 12-3:命名空间别名(<usingDemo>\Program.cs)
- APP免费
代码 12-4:类的别名(<usingDemo1>\Program.cs)
- APP免费
12.4 使用Microsoft.VisualBasic命名空间
- APP免费
代码 12-5:获取操作系统与内存信息(<ComputerInfoDemo>\Program.cs)
- APP免费
代码 12-6:获取系统信息重构(<ComputerInfoDemo1>\Program.cs)
- APP免费
代码 12-7:播放波形文件(<AudioDemo>\Program.cs)
- APP免费
第13章 泛型
- APP免费
13.1 泛型方法
- APP免费
代码 13-1:定义泛型方法(<GenericDemo1>\Program.cs)
- APP免费
13.2 泛型类
- APP免费
代码 13-2:定义泛型类(<GenericDemo2>\Program.cs)
- APP免费
13.3 约束
- APP免费
第14章 运算符重载
- APP免费
14.1 在结构中重载运算符
- APP免费
代码 14-1:在结构中重载运算符(<operatorDemo1>\Program.cs)
- APP免费
14.2 在类中重载运算符
- APP免费
代码 14-2:在类中重载运算符(<operatorDemo2>\Program.cs)
- APP免费
第15章 资源同步与自动清理
- APP免费
15.1 多线程
- APP免费
代码 15-1:多线程的应用(<threadDemo>\Program.cs)
- APP免费
代码 15-2:简化线程的定义
- APP免费
15.2 易失域(volatile field)
- APP免费
代码 15-3:易失域的应用(<volatileDemo>\Program.cs)
- APP免费
15.3 lock语句
- APP免费
代码 15-4:lock语句应用(<lockDemo>\Program.cs)
- APP免费
15.4 using语句
- APP免费
代码 15-5:使用try-finally结构释放资源
- APP免费
代码 15-6:使用using语句释放资源
- APP免费
代码 15-7:实现IDisposable接口(<usingDemo>\Program.cs)
- APP免费
第16章 关于C#的其他主题
- APP免费
16.1 预处理
- APP免费
代码 16-1:根据条件编译代码(<preprocessDemo1>\Program.cs)
- APP免费
代码 16-2:发布编译错误信息(<preprocessDemo2>\Program.cs)
- APP免费
16.2 特性
- APP免费
代码 16-3:获取Windows安装目录及系统目录路径(<attributeDemo1>\CSys.cs)
- APP免费
代码 16-4:获取系统目录路径测试(<attributeDemo1>\Program.cs)
- APP免费
代码 16-5:定义特性(<attributeDemo2>\CChyAttribute.cs)
- APP免费
代码 16-6:应用特性(<attributeDemo2>\CTest.cs)
- APP免费
代码 16-7:获取特性信息(<attributeDemo2>\Program.cs)
- APP免费
16.3 不安全代码
- APP免费
代码 16-8:指针与寻址运算符(<unsafeDemo1>\Program.cs)
- APP免费
代码 16-9:sizeof运算符应用(<unsafeDemo2>\Program.cs)
- APP免费
16.4 分部类型(partial type)
- APP免费
代码 16-10:分部类型(1)(<partialDemo>\Class1.cs)
- APP免费
代码 16-11:分部类型(2)(<partialDemo>\Class2.cs)
- APP免费
代码 16-12:测试分部类型(<partialDemo>\Program.cs)
- APP免费
16.5 可空类型(nullable type)
- APP免费
代码 16-13:可空类型(<nullableDemo>\Program.cs)
- APP免费
第17章 代码的进化
- APP免费
17.1 从代码到架构
- APP免费
17.2 重构
- APP免费
17.3 设计模式
- APP免费
17.4 关注代码改进的过程
- APP免费
17.5 找寻.NET Framework中的设计模式
- APP免费
代码 17-1:foreach语句遍历窗体中的控件(<foreachDemo>\Program.cs)
- APP免费
代码 17-2:迭代器模式(实现IEnumerable接口)(<IteratorDemo>\Program.cs)
- APP免费
代码 17-3:适配器模式示例1(<AdapterDemo>\CDbY.cs)
- APP免费
代码 17-4:适配器模式示例2(<AdapterDemo>\CDbX.cs)
- APP免费
代码 17-5:适配器模式示例3(<AdapterDemo>\CDbYAdapter.cs)
- APP免费
代码 17-6:适配器模式示例4(<AdapterDemo>\CDb.cs)
- APP免费
代码 17-7:适配器模式示例5(<AdapterDemo>\Program.cs)
- APP免费
第18章 策略模式
- APP免费
18.1 虚拟战争游戏示例:使用策略模式组合作战单位
- APP免费
代码 18-1:策略模式示例(接口定义)(<StrategyDemo>\Interfaces.cs)
- APP免费
代码 18-2:策略模式示例(CUnit类)(<StrategyDemo>\CUnit.cs)
- APP免费
代码 18-3:策略模式示例(CWeapon类)(<StrategyDemo>\CWeapon.cs)
- APP免费
代码 18-4:策略模式示例(CBehavior类)(<StrategyDemo>\CBehavior.cs
- APP免费
代码 18-5:策略模式示例(行为类)(<StrategyDemo>\BehaviorAll.cs)
- APP免费
代码 18-6:策略模式示例(武器类)(<StrategyDemo>\WeaponAll.cs)
- APP免费
代码 18-7:策略模式示例(组合测试)(<StrategyDemo>\Program.cs)
- APP免费
代码 18-8:策略模式示例(CUnit类构造函数)(<StrategyDemo>\CUnit.cs)
- APP免费
18.2 应用分析
- APP免费
代码 18-9:策略模式模型(接口定义)(<StrategyPatternModel>\Interfaces.cs)
- APP免费
代码 18-10:策略模式模型(组件基类)(<StrategyPatternModel>\BaseClasses.cs)
- APP免费
代码 18-11:策略模式模型(算法族)(<StrategyPatternModel>\PartAll.cs)
- APP免费
代码 18-12:策略模式模型(组合测试)(<StrategyPatternModel>\Program.cs)
- APP免费
第19章 工厂方法模式
- APP免费
19.1 虚拟战争游戏示例:控制作战单位的创建
- APP免费
代码 19-1:工厂方法模式示例(IUnit接口)(<FactoryMethodDemo>\Interfaces.cs)
- APP免费
代码 19-2:工厂方法模式示例(CUnit类)(<FactoryMethodDemo>\CUnit.cs)
- APP免费
代码 19-3:工厂方法模式示例(EUnitType枚举)(<FactoryMethodDemo>\Enums.cs)
- APP免费
代码 19-4:工厂方法模式示例(作战单位类型)(<FactoryMethodDemo>\Units.cs)
- APP免费
代码 19-5:工厂方法模式示例(创建者基类)(<FactoryMethodDemo>\CUnitCreator.cs)
- APP免费
代码 19-6:工厂方法模式示例(陆地单位创建者类)(<FactoryMethodDemo>\UnitCreators.cs)
- APP免费
代码 19-7:工厂方法模式示例(应用测试)(<FactoryMethodDemo>\Program.cs)
- APP免费
19.2 应用分析
- APP免费
代码 19-8:工厂方法模式模型(组件接口)(<FactoryMethodPatternModel>\Interfaces.cs)
- APP免费
代码 19-9:工厂方法模式模型(组件基类)(<FactoryMethodPatternModel>\CComponent.cs)
- APP免费
代码 19-10:工厂方法模式模型(组件类型)(<FactoryMethodPatternModel>\Components.cs)
- APP免费
代码 19-11:工厂方法模式模型(组件类型枚举)(<FactoryMethodPatternModel>\Enums.cs)
- APP免费
代码 19-12:工厂方法模式模型(创建者类型)(<FactoryMethodPatternModel>\Creator.cs)
- APP免费
代码 19-13:工厂方法模式模型(应用测试)(<FactoryMethodPatternModel>\Program.cs)
- APP免费
代码 19-14:工厂方法模式模型(应用空对象)(<FactoryMethodPatternModel>\Components.cs)
- APP免费
19.3 工厂方法的应用
- APP免费
代码 19-15:工厂方法应用示例Class1类(<FactoryMethodDemo1>\Class1.cs)
- APP免费
代码 19-16:工厂方法代替构造函数(<FactoryMethodDemo1>\Class1.cs)
- APP免费
代码 19-17:工厂方法隐藏对象创建
- APP免费
第20章 抽象工厂模式
- APP免费
20.1 示例:模拟组装电脑
- APP免费
代码 20-1:抽象工厂模式示例(接口定义)(<AbstractFactoryDemo>\Interfaces.cs)
- APP免费
代码 20-2:抽象工厂模式示例(CCpu抽象类)(<AbstractFactoryDemo>\CCpu.cs)
- APP免费
代码 20-3:抽象工厂模式示例(CMemory抽象类)(<AbstractFactoryDemo>\CMemory.cs)
- APP免费
代码 20-4:抽象工厂模式示例(CPU类型)(<AbstractFactoryDemo>\CpuAll.cs)
- APP免费
代码 20-5:抽象工厂模式示例(内存类型)(<AbstractFactoryDemo>\MemoryAll.cs)
- APP免费
代码 20-6:抽象工厂模式示例(抽象工厂接口)(<AbstractFactoryDemo>\Interfaces.cs)
- APP免费
代码 20-7:抽象工厂模式示例(抽象工厂类)(<AbstractFactoryDemo>\AbstractFactoryAll.cs)
- APP免费
代码 20-8:抽象工厂模式示例(CComputer类)(<AbstractFactoryDemo>\CComputer.cs)
- APP免费
代码 20-9:抽象工厂模式示例(应用测试)(<AbstractFactoryDemo>\Program.cs)
- APP免费
20.2 应用分析
- APP免费
代码 20-10:抽象工厂模式模型(组件接口)(<AbstractFactoryPatternModel>\Interfaces.cs)
- APP免费
代码 20-11:抽象工厂模式模型(组件类)(<AbstractFactoryPatternModel>\CComponent.cs)
- APP免费
代码 20-12:抽象工厂模式模型(组件结构类型)(<AbstractFactoryPatternModel>\PartAll.cs)
- APP免费
代码 20-13:抽象工厂模式模型(抽象工厂接口)(<AbstractFactoryPatternModel>\Interfaces.cs)
- APP免费
代码 20-14:抽象工厂模式模型(抽象工厂基类)(<AbstractFactoryPatternModel>\CAbstractFactory.cs)
- APP免费
代码 20-15:抽象工厂模式模型(抽象工厂类)(<AbstractFactoryPatternModel>\AbstractFactoryAll.cs)
- APP免费
代码20-16:抽象工厂模式模型(在组件中应用抽象工厂)(<AbstractFactoryPatternModel>\CComponent.cs)
- APP免费
代码 20-17:抽象工厂模式模型(应用测试)(<AbstractFactoryPatternModel>\Program.cs)
- APP免费
第21章 生成器模式
- APP免费
21.1 示例:创建汽车配置清单
- APP免费
代码 21-1:生成器模式示例(生成器接口)(<BuilderDemo>\ICarBuilder.cs)
- APP免费
代码 21-2:生成器模式示例(生成器基类)(<BuilderDemo>\CCarBuilder.cs)
- APP免费
代码 21-3:生成器模式示例(生成器类)(<BuilderDemo>\CarBuilderAll.cs)
- APP免费
代码 21-4:生成器模式示例(汽车配置清单类)(<BuilderDemo>\CCarScheme.cs)
- APP免费
代码 21-5:生成器模式示例(应用测试)(<BuilderDemo>\Program.cs)
- APP免费
21.2 应用分析
- APP免费
代码 21-6:生成器模式模型(接口定义)(<BuilderPatternModel>\Interfaces.cs)
- APP免费
代码 21-7:生成器模式模型(组件结构类型)(<BuilderPatternModel>\PartAll.cs)
- APP免费
代码 21-8:生成器模式模型(生成器接口)(<BuilderPatternModel>\Interfaces.cs)
- APP免费
代码 21-9:生成器模式模型(生成器基类)(<BuilderPatternModel>\CBuilder.cs)
- APP免费
代码 21-10:生成器模式模型(生成器类)(<BuilderPatternModel>\BuilderAll.cs)
- APP免费
代码 21-11:生成器模式模型(组件类)(<BuilderPatternModel>\CComponent.cs)
- APP免费
代码 21-12:生成器模式模型(应用测试)(<BuilderPatternModel>\Program.cs)
- APP免费
第22章 单件模式
- APP免费
22.1 虚拟战争游戏示例:唯一的重要人物
- APP免费
代码 22-1:单件模式示例(指挥官枚举值)(<SingletonDemo>\Enums.cs)
- APP免费
代码 22-2:单件模式示例(静态成员)(<SingletonDemo>\Units.cs)
- APP免费
代码 22-3:单件模式示例(指挥官类)(<SingletonDemo>\Units.cs)
- APP免费
代码 22-4:单件模式示例(创建指挥官对象)(<SingletonDemo>\UnitCreators.cs)
- APP免费
代码 22-5:单件模式示例(应用测试)(<SingletonDemo>\Program.cs)
- APP免费
22.2 应用分析
- APP免费
代码 22-6:单件模式模型(单件类基本结构)
- APP免费
代码 22-7:多线程中的单件类(<SingletonTest>\CSingleton.cs)
- APP免费
代码 22-8:多线程中的单件(应用测试)(<SingletonTest>\Program.cs)
- APP免费
第23章 观察者模式
- APP免费
23.1 订阅邮件——现实版观察者模式
- APP免费
23.2 虚拟战争游戏示例:空降作战
- APP免费
代码 23-1:观察者模式示例(主题接口)(<ObserverDemo>\Interfaces.cs)
- APP免费
代码 23-2:观察者模式示例(主题状态枚举)(<ObserverDemo>\Enums.cs)
- APP免费
代码 23-3:观察者模式示例(观察者接口)(<ObserverDemo>\Interfaces.cs)
- APP免费
代码 23-4:观察者模式示例(士兵类)(<ObserverDemo>\Units.cs)
- APP免费
代码 23-5:观察者模式示例(运输机类)(<ObserverDemo>\Units.cs)
- APP免费
代码 23-6:观察者模式示例(应用测试)(<ObserverDemo>\Program.cs)
- APP免费
23.3 .NET Framework 4.0中的观察者
- APP免费
代码 23-7:.NET中的观察者(实现IObserver<T>接口)(<IObservableAndIObserver>\CObserver.cs)
- APP免费
代码 23-8:.NET中的观察者(实现IObservable接口)(<IObservableAndIObserver>\CObservable.cs)
- APP免费
代码 23-9:.NET中的观察者(应用测试)(<IObservableAndIObserver>\Program.cs)
- APP免费
23.4 应用分析
- APP免费
代码 23-10:观察者模式模型(接口定义)(<ObserverPatternModel>\Interfaces.cs)
- APP免费
代码 23-11:观察者模式模型(主题类)(<ObserverPatternModel>\CSubject.cs)
- APP免费
代码 23-12:观察者模式模型(观察者类)(<ObserverPatternModel>\CObserver.cs)
- APP免费
代码 23-13:观察者模式模型(应用测试)(<ObserverPatternModel>\Program.cs)
- APP免费
第24章 享元模式
- APP免费
24.1 虚拟战争游戏示例:点缀作战地图
- APP免费
代码 24-1:享元模式示例(单位枚举类型)(<FlyweightDemo>\Enums.cs)
- APP免费
代码 24-2:享元模式示例(CDebris类)(<FlyweightDemo>\Units.cs)
- APP免费
代码 24-3:享元模式示例(CBuilderUnitCreator类)(<FlyweightDemo>\UnitCreators.cs)
- APP免费
代码 24-4:享元模式示例(EDebrisType枚举)(<FlyweightDemo>\Enums.cs)
- APP免费
代码 24-5:享元模式示例(SDebris结构)(<FlyweightDemo>\Structs.cs)
- APP免费
代码 24-6:享元模式示例(CMapManager类)(<FlyweightDemo>\CMapManager.cs)
- APP免费
代码 24-7:享元模式示例(应用测试)(<FlyweightDemo>\Program.cs)
- APP免费
24.2 应用分析
- APP免费
代码 24-8:享元模式模型(CGranule类)(<FlyweightPatternModel>\CGranule.cs)
- APP免费
代码 24-9:享元模式模型(SGranule结构)(<FlyweightPatternModel>\SGranule.cs)
- APP免费
代码 24-10:享元模式模型(结构类型颗粒管理类)(<FlyweightPatternModel>\CManager1.cs)
- APP免费
代码 24-11:享元模式模型(类类型颗粒管理类)(<FlyweightPatternModel>\CManager2.cs)
- APP免费
代码 24-12:享元模式模型(应用测试)(<FlyweightPatternModel>\Program.cs)
- APP免费
第25章 组合模式
- APP免费
25.1 虚拟战争游戏示例:多武器平台
- APP免费
代码 25-1:组合模式示例(武器平台类)(<CompositeDemo>\CWeaponPlatform.cs)
- APP免费
代码 25-2:组合模式示例(CTank类)(<CompositeDemo>\Units.cs)
- APP免费
代码 25-3:组合模式示例(应用测试)(<CompositeDemo>\Program.cs)
- APP免费
25.2 应用分析
- APP免费
代码 25-4:组合模式模型(节点接口)(<CompositePatternModel>\Interfaces.cs)
- APP免费
代码 25-5:组合模式模型(节点类)(<CompositePatternModel>\CNode.cs)
- APP免费
代码 25-6:组合模式模型(应用测试)(<CompositePatternDemo>\Programs.cs)
- APP免费
第26章 装饰者模式
- APP免费
26.1 三国游戏示例:装备提高战斗力
- APP免费
代码 26-1:装饰者模式示例(单位类型枚举)(<DecoratorDemo>\Enums.cs)
- APP免费
代码 26-2:装饰者模式示例(单位接口)(<DecoratorDemo>\Interface.cs)
- APP免费
代码 26-3:装饰者模式示例(单位基类)(<DecoratorDemo>\CUnit.cs)
- APP免费
代码 26-4:装饰者模式示例(装饰者基类)(<DecoratorDemo>\CUnitDecorator.cs)
- APP免费
代码 26-5:装饰者模式示例(单位类型)(<DecoratorDemo>\Units.cs)
- APP免费
代码 26-6:装饰者模式示例(应用测试)(<DecoratorDemo>\Program.cs)
- APP免费
26.2 应用分析
- APP免费
代码 26-7:装饰者模式模型(装饰者接口)(<DecoratorPatternModel>\Interfaces.cs)
- APP免费
代码 26-8:装饰者模式模型(装饰者类)(<DecoratorPatternModel>\CDecorator.cs)
- APP免费
代码 26-9:装饰者模式模型(应用测试)(<DecoratorPatternModel>\Program.cs)
- APP免费
第27章 状态模式
- APP免费
27.1 三国游戏示例:角色被击中后
- APP免费
代码 27-1:状态模式示例(状态类型枚举)(<StateDemo>\Enums.cs)
- APP免费
代码 27-2:状态模式示例(单位接口)(<StateDemo>\Interfaces.cs)
- APP免费
代码 27-3:状态模式示例(单位基类)(<StateDemo>\CUnit.cs)
- APP免费
代码 27-4:状态模式示例(状态接口)(<StateDemo1>\Interfaces.cs)
- APP免费
代码 27-5:状态模式示例(状态基类)(<StateDemo1>\CUnitState.cs)
- APP免费
代码 27-6:状态模式示例(状态类型)(<StateDemo1>\UnitStateAll.cs)
- APP免费
代码 27-7:状态模式示例(单位接口)(<StateDemo1>\Interfaces.cs)
- APP免费
代码 27-8:状态模式示例(单位基类)(<StateDemo1>\CUnit.cs)
- APP免费
代码 27-9:状态模式示例(单位类型)(<StateDemo1>\Units.cs)
- APP免费
代码 27-10:状态模式示例(应用测试)(<StateDemo1>\Program.cs)
- APP免费
27.2 应用分析
- APP免费
代码 27-11:状态模式模型(状态接口)(<StatePatternModel>\Interfaces.cs)
- APP免费
代码 27-12:状态模式模型(状态基类)(<StatePatternModel>\CState.cs)
- APP免费
代码 27-13:状态模式模型(状态类型)(<StatePatternModel>\States.cs)
- APP免费
代码 27-14:状态模式模型(组件类)(<StatePatternModel>\CComponent.cs)
- APP免费
代码 27-15:状态模式模型(应用测试)(<StatePatternModel>\Program.cs)
- APP免费
第28章 桥接模式
- APP免费
28.1 绘图示例:绘制图形与文本
- APP免费
代码 28-1:桥接模式示例(图形信息接口)(<BridgeDemo>\Interfaces.cs)
- APP免费
代码 28-2:桥接模式示例(图形绘制接口)(<BridgeDemo>\Interfaces.cs)
- APP免费
代码 28-3:桥接模式示例(图形信息基类)(<BridgeDemo>\CShape.cs)
- APP免费
代码 28-4:桥接模式示例(图形绘制基类)(<BridgeDemo>\CShapeDraw.cs)
- APP免费
代码 28-5:桥接模式示例(图形信息类)(<BridgeDemo>\Shapes.cs)
- APP免费
代码 28-6:桥接模式示例(图形绘制类)(<BridgeDemo>\CShapeDrawGraphic.cs)
- APP免费
代码 28-7:桥接模式示例(文本绘制类)(<BridgeDemo>\CShapeDrawText.cs)
- APP免费
代码 28-8:桥接模式示例(绘制文本信息)(<BridgeDemo>\Form1.cs)
- APP免费
代码 28-9:桥接模式示例(绘制图形)(<BredgeDemo>\Form1.cs)
- APP免费
28.2 应用分析
- APP免费
代码 28-10:桥接模式模型(接口定义)(<BridgePatternModel>\Interfaces.cs)
- APP免费
代码 28-11:桥接模式模型(组件基类)(<BridgePatternModel>\CComponent.cs)
- APP免费
代码 28-12:桥接模式模型(组件类)(<BridgePatternModel>\ComponentAll.cs)
- APP免费
代码 28-13:桥接模式模型(实现者类型)(<BridgePatternModel>\ImplementorAll.cs)
- APP免费
代码 28-14:桥接模式模型(应用测试)(<BridgePatternModel>\Program.cs)
- APP免费
第29章 软件开发之路
- APP免费
29.1 C#与设计模式
- APP免费
29.2 如何使用设计模式
- APP免费
29.3 继续学习
- APP免费
(1)(界面风格)软件看起来如何?
- APP免费
(2)(交互)软件用起来如何?
- APP免费
附录A 设计模式名录
更新时间:2018-12-27 18:16:18