
Visual C#基于组件的开发
《Visual C#基于组件的开发》是2003年清华大学出版社出版的图书。
图书详细信息
ISBN:9787302063254
定价:115元
印次:1-1
印刷日期:2003-4-3
图书简介
使用Visual C#可以开发出灵活的、易于维护的应用程式,这些应用程式能充分利用Microsoft最新推出的.NET Framework强大的计算和通信功能。本书首先介绍软体工程和利用UML设计组件的基本原理,然后向您展示了如何充分发挥Visual C#的快速开发能力创建功能广泛的组件,包括Web组件、Web服务和Windows服务组件、数据访问组件、企业级组件、多执行绪组件,以及基于Microsoft Web浏览器的用户界面组件等。;本书讲述了基于组件的开发技术、实用的建议和真实的示例,可以帮助您在.
目录
第Ⅰ部分概论
第1章开发过程 1
1.1组件开发 1
1.1.1常见错误 2
1.1.2项目管理风险 2
1.2开发阶段 3
1.2.1瀑布过程 4
1.2.2初始需求中的问题 5
1.2.3连续细化的过程 6
1.2.4选择组件 7
1.2.5购买第三方组件的风险 8
1.2.6微软开发过程 9
1.3分析阶段 9
1.3.1编制预算的艺术 10
1.3.2错误的方法 10
1.3.3正确的方法 11
1.3.4用例 12
1.3.5互动图 12
1.4设计阶段 13
1.4.1熟悉最终用户 13
1.4.2熟悉性能需求 14
1.4.3从哪里开始 15
1.4.4要完成什幺 15
1.4.5设计要具有可测试性 15
1.5实现阶段 16
1.5.1确保跟蹤变化 17
1.5.2编码原则 17
1.5.3测试器 23
1.6测试 23
1.6.1单元测试 24
1.6.2集成测试 24
1.6.3验证测试 24
1.6.4回归测试 25
1.6.5确定在何时发布——故障恢复率和错误反馈率 25
1.7部署阶段 26
1.8部署后的日子:维护 26
1.9小结 27
第2章组件结构 28
2.1Conway定律 28
2.2父组件与子组件 29
2.3组件的分级 31
2.3.1大片还是小片 31
2.3.2大小与複杂度 32
2.4委託 34
2.5用委託限定特性 35
2.6聚集 37
2.7深度聚集 38
2.8执行绪 40
2.9小结 41
第3章组件设计 42
3.1UML 42
3.1.1类图 42
3.1.2互动图 44
3.2设计模式 45
3.2.1创建型模式 47
3.2.2结构型模式 50
3.2.3行为模式 55
3.3不要忘记-ilities 62
3.3.1可操纵性 63
3.3.2可测试性 63
3.3.3可用性 63
3.3.4可部署性 63
3.3.5可维护性 64
3.3.6可靠性 64
3.3.7灵活性 66
3.3.8可移植性 66
3.4放鬆一下--没有完美的设计 67
3.5优秀设计的标誌 67
3.6小结 67
第4章组件分类 68
4.1如何分类组件 69
4.1.1形式方法问题 69
4.1.2分类系统 71
4.2前端组件 77
4.2.1独立应用程式 77
4.2.2分散式应用程式 77
4.2.3基于浏览器的应用程式 80
4.3中间层 81
4.3.1群集伺服器 81
4.3.2伺服器区 81
4.3.3跟蹤用户状态 82
4.3.4资料库连线池 82
4.4后端 83
4.5小结 85
第5章调试 86
5.1几个关于调试的故事 86
5.2常见的故障 87
5.3不同种类的调试器 87
5.3.1VisualStudio.NET集成调试器 88
5.3.2DbgClr 88
5.3.3CORDBG 89
5.4一般的调试技术 89
5.4.1断点 89
5.4.2运行中修改代码 95
5.4.3运行中修改数值 96
5.4.4单步执行代码 97
5.4.5测试数据 98
5.4.6栈跟蹤 99
5.4.7调试多语言代码 100
5.5检测代码 102
5.5.1使用Debug类 102
5.5.2使用Trace类 103
5.5.3断言 104
5.5.4使用Fail()方法 105
5.5.5重定向调试和跟蹤讯息 106
5.5.6条件编译 107
5.5.7条件代码属性 109
5.6调试情况的种类 110
5.7几个通用的提示 110
5.8独立应用程式 111
5.9DLL 111
5.9.1一般的问题 112
5.9.2依附于过程 113
5.9.3及时依附 115
5.9.4从过程分离 116
5.10小结 116
第6章部署 117
6.1旧方法 117
6.2新方法 118
6.3程式集 118
6.3.1什幺是程式集 118
6.3.2程式集的结构 119
6.3.3查看程式集数据 120
6.3.4私有程式集 122
6.3.5共享程式集 122
6.3.6查看全局程式集高速快取 122
6.4部署方法 124
6.5使用安装精灵 124
6.6创建基本的安装程式 126
6.6.1添加项目输出组 127
6.6.2编辑安装项目属性 128
6.6.3常用内容 130
6.6.4闪烁对话框 137
6.6.5欢迎对话框 137
6.6.6用户授权对话框 138
6.6.7用户信息对话框 138
6.6.8单选按钮对话框 140
6.6.9複选框对话框 141
6.6.10文本框对话框 142
6.6.11安装资料夹对话框 143
6.6.12自述档案对话框 143
6.6.13注册用户对话框 144
6.6.14使用条件 145
6.7预编译代码 152
6.7.1何时进行预编译 154
6.7.2何时不进行预编译 154
6.8在Internet和Intranet上部署软体 155
6.8.1使用Web页 155
6.8.2CAB档案 155
6.8.3智慧型客户端 156
6.9部署共享组件 157
6.10许可 158
6.10.1设计时许可 160
6.10.2运行时许可 161
6.10.3创建许可 161
6.10.4使用经过许可的组件 162
6.11小结 163
第Ⅱ部分前端组件
第7章Windows窗体组件 164
7.1Windows窗体 164
7.2设计ProcessViewer 166
7.3开发ProcessViewer 168
7.3.1获取进程数据 169
7.3.2进程的排序 170
7.3.3填充TreeView 171
7.3.4为TreeView项设定点阵图 172
7.3.5为选单项设定点阵图 174
7.3.6控制右边的窗格 179
7.3.7限定窗体的尺寸 180
7.3.8显示进程和模组的细目 181
7.3.9访问命令行参数 183
7.3.10使用正则表达式 184
7.3.11获取作业系统的讯息 188
7.3.12确定当前目录 189
7.3.13获取环境变数 189
7.3.14确定是否有滑鼠连线到系统中 191
7.3.15确定用户的系统是否连线到网路上 192
7.3.16获取逻辑驱动器的列表 192
7.3.17使用文本档案 192
7.4剪下、複製和贴上 195
7.5列印 196
7.6ProcessViewer的完整代码 202
7.7本地化 220
7.7.1地区的指定 221
7.7.2用程式实现改变地区 223
7.7.3资源档案的本地化 224
7.7.4窗体本地化 224
7.7.5字元串的本地化 227
7.7.6带有参数置换的短语 231
7.7.7MyLocalizedForm的代码 232
7.7.8图像的本地化 234
7.7.9使用ResEditor 234
7.7.10使用ResxGen 236
7.7.11建立本地化的图像 236
7.8小结 238
第8章使用WebBrowser组件创建前端 239
8.1微软的WebBrowser组件 239
8.2设计MyWebBrowser 242
8.3开发MyWebBrowser 243
8.4引入WebBrowserActiveX组件 243
8.4.1简单的方法 243
8.4.2困难的方法 244
8.4.3运行时可调用的包装 246
8.4.4添加工具列 247
8.4.5添加列印支持 248
8.4.6添加导航支持 249
8.4.7完整的代码 252
8.5创建自定义的Web浏览器 256
8.5.1引入并包装COM接口 258
8.5.2IOleObject和IOleClientSite 258
8.5.3使用ICustomDoc 260
8.5.4IDocHostUIHandler 260
8.5.5由通过COM接口调用的方法返回值 263
8.5.6常见的自定义 264
8.5.7IDocHostUIHandle方法详述 269
8.6完整的代码 277
8.7小结 285
第9章自定义控制项 286
9.1过去的自定义控制项 286
9.2选择正确的基类 288
9.3设计组件 288
9.3.1创建自定义控制项库 290
9.3.2更改控制项的类名 290
9.3.3更改控制项的Toolbox图示 291
9.3.4向Toolbox添加组件 293
9.3.5在稳定前向Toolbox添加组件 295
9.3.6创建测试器 296
9.3.7添加对测试器的引用 296
9.3.8使用拖放来添加自定义控制项 297
9.3.9手工添加自定义控制项 297
9.3.10运行自定义控制项的代码 298
9.4组件的开发 299
9.4.1添加滑鼠事件处理程式 300
9.4.2添加键盘事件处理程式 301
9.4.3绘製控制项 305
9.4.4使用World变换 318
9.5在档案系统中查找档案 326
9.6添加上下文选单 327
9.7支持拖放 328
9.8生成随机数 332
9.9设计时属性 332
9.9.1添加简单的属性 333
9.9.2添加属性的说明 334
9.9.3在属性视窗中禁止显示属性 334
9.9.4非公共属性与属性视窗 334
9.9.5在属性视窗中隐藏继承的属性 335
9.9.6在类别下添加属性 335
9.9.7禁止存储属性 336
9.9.8属性编辑器 336
9.9.9实现类型转换器 338
9.10MyCustomControl的完整代码 340
9.11小结 352
第10章用户控制项 353
10.1用户控制项与自定义控制项 353
10.2设计图形设计器组件 354
10.3开发组件 357
10.3.1创建用于设计器的组件 361
10.3.2由MyComponent派生专用类 364
10.3.3绘製Windows系统图示 365
10.3.4显示和管理抓取句柄 367
10.3.5用抓取句柄调整组件尺寸 374
10.3.6用橡皮圈选择项 375
10.3.7管理选择项 380
10.3.8在萤幕上移动组件 380
10.3.9设计器组件 382
10.3.10添加和删除项 388
10.4控制数据输入 389
10.4.1在键入时检验键值 389
10.4.2使用正则表达式验证 391
10.4.3使用内置的方法 392
10.4.4确认事件 394
10.5小结 395
第11章资料库前端 396
11.1建立资料库连线 397
11.2基于导航器的窗体 400
11.2.1装载记录 404
11.2.2导航记录集 407
11.2.3插入新记录 408
11.2.4删除记录 408
11.2.5向资料库提交修改 409
11.2.6取消对当前记录的编辑 409
11.2.7取消所有编辑 410
11.3Windows窗体中的数据绑定 410
11.3.1把属性同数据源绑定 411
11.3.2简单数据绑定 412
11.3.3VS.NET提示 413
11.3.4预览由数据适配器取出的行 418
11.3.5完整原始码 419
11.4基于格线的窗体 425
11.4.1定製格线 428
11.4.2数字、日期和时间格式 431
11.5管理格线中的数据 434
11.5.1装载记录 434
11.5.2向资料库提交修改 436
11.5.3回调所有的记录 438
11.5.4使用默认值对行进行预填充 439
11.6主-从窗体 445
11.6.1创建窗体 446
11.6.2窗体如何工作 449
11.6.3使用嵌套行的主-从格线 458
11.7资料库报表窗体 466
11.7.1创建简单报表 466
11.7.2创建一个更複杂的报表 473
11.8小结 481
第12章软体前端的一些技巧 482
12.1显示一个闪烁视窗 482
12.2管理用户的设定信息 484
12.2.1特定的目录 485
12.2.2套用二进制档案 486
12.2.3套用文本档案 491
12.2.4套用注册表 497
12.3管理最近使用的档案 501
12.3.1套用注册表 501
12.3.2套用捷径 506
12.3.3声明COM接口 509
12.3.4使用COM方法读写字元串 520
12.3.5COM对象ShellLink的一个包装器 520
12.3.6套用FileShortcut类管理最近使用的档案列表 527
12.4小结 529
第Ⅲ部分中间层组件
第13章Web窗体 530
13.1ASP有什幺缺陷 530
13.2ASP.NET的改进之处 531
13.3基础知识 532
13.3.1告别包含档案,使用类 533
13.3.2发布Web窗体 536
13.3.3处理Web窗体事件 539
13.3.4获取用户信息 545
13.4一个Web应用程式的例子 547
13.5设计Web应用程式 547
13.6实现Web应用程式 548
13.6.1PostBacks 556
13.6.2添加事件处理程式 557
13.7测试Web窗体 560
13.7.1使用Response对象 564
13.7.2使用重定向的方法返回全新的页面 565
13.7.3使用跟蹤状态 566
13.8管理状态 570
13.8.1使用cookies 571
13.8.2使用隐藏数据 571
13.8.3使用查询字元串 572
13.8.4使用ViewState 573
13.8.5使用对话变数 574
13.9小结 577
第14章Web控制项 578
14.1内置的Web控制项 578
14.2需要Web控制项的原因 579
14.3Web控制项工作原理 580
14.4开发一个定製的Web控制项 580
14.5设计Web控制项 581
14.6开发Web控制项 581
14.6.1定製发布 587
14.6.2依赖浏览器的发布 588
14.6.3添加定製事件 591
14.6.4添加定製属性 593
14.6.5MyWebControl控制项的完整代码 594
14.6.6移植控制项到DLL中 595
14.6.7创建测试装置 599
14.7确认用户输入 600
14.7.1指定显示出错信息的位置 603
14.7.2Text属性和ErrorMessage属性的区别 603
14.7.3RequiredFieldValidator组件 603
14.7.4CompareValidator组件 603
14.7.5RangeValidator组件 605
14.7.6CustomValidator组件 606
14.7.7ValidationSummary组件 608
14.7.8RegularExpressionValidator组件 612
14.7.9一个使用验证控制项的完整例子 613
14.7.10使用ValidationSummary组件的完整例子 617
14.8小结 620
第15章用户控制项 621
15.1什幺是用户控制项 621
15.2基础知识 622
15.3用用户控制项创建Web应用程式 625
15.4设计导航用户控制项 626
15.5开发导航 626
15.6向Web窗体添加导航 628
15.7建立图文框设定 628
15.8开发内容用户控制项 631
15.8.1添加属性 634
15.8.2添加事件处理程式 635
15.8.3回响页面请求 635
15.8.4把内容控制项添加到Web窗体中 639
15.9建立HTML网页 639
15.10把Web窗体转换为用户控制项 640
15.11测试用户控制项 641
15.12把用户控制项包装在DLL档案中 641
15.13完整的代码 642
15.14小结 651
第16章服务 652
16.1Web服务 652
16.2基础知识 654
16.2.1声明Web方法 656
16.2.2数据输入和数据输出 657
16.2.3支持强制类型转换 659
16.2.4SOAP 659
16.2.5WSDL 660
16.2.6DISCO 664
16.2.7UDDI 665
16.2.8开发Web服务 666
16.2.9测试Web服务 667
16.2.10状态维护 674
16.2.11安全性 677
16.2.12发布动态搜寻信息 677
16.2.13将Web服务传送到专用机上 678
16.3Windows服务 680
16.3.1设计服务 683
16.3.2开发服务 684
16.3.3互动式服务 692
16.3.4测试服务 693
16.3.5添加系统托盘图示 696
16.3.6添加服务控制程式 696
16.3.7安装服务 707
16.3.8自定义服务安装 710
16.3.9最后几个注意事项 712
16.4小结 713
第17章安全性 714
17.1Web应用程式的安全性 715
17.2验证 715
17.2.1基于IP位址的验证 715
17.2.2通过凭证鉴定用户 718
17.2.3其他方法 721
17.2.4利用基本验证手段保护Web应用程式 721
17.3ASP.NET的安全措施 731
17.3.1假冒 731
17.3.2窗体验证 733
17.3.3一个简单的例子 734
17.3.4将验证信息保存到资料库中 738
17.3.5护照验证 740
17.4小结 740
第Ⅳ部分后端组件
第18章ADO.NET体系结构 741
18.1什幺是后端 741
18.2ADO.NET的主要要素 743
18.2.1数据集 743
18.2.2数据适配器 744
18.2.3数据读取器 746
18.2.4数据表 747
18.2.5数据视图 747
18.2.6数据绑定 751
18.3连线到资料库 755
18.3.1打开连线和下线 757
18.3.2连线池 758
18.3.3性能最大化 758
18.3.4配置连线池 759
18.4更改资料库 760
18.4.1添加记录 760
18.4.2更新记录 761
18.4.3删除记录 762
18.4.4处理数据集问题 763
18.4.5使修改生效和对错误进行分析 765
18.5一个完整的例子 769
18.6小结 781
第19章资料库Web服务 782
19.1什幺是资料库Web服务 782
19.2设计服务 783
19.3实现服务 784
19.4为客户端提供Web方法 792
19.5测试Web服务 795
19.5.1使用InternalWebBrowser进行测试 795
19.5.2使用Windows应用程式进行测试 798
19.6异常处理 803
19.7事务处理 804
19.8测试资料库Web服务 805
19.9小结 806
第20章多执行绪组件 807
20.1执行绪的概念 807
20.1.1单元执行绪 808
20.1.2.NET执行绪与同步 809
20.1.3给父执行绪回传信息 811
20.1.4多个执行绪执行同一段代码 811
20.1.5等待多个事件中的一个 812
20.1.6执行绪和COM对象 814
20.1.7无阻塞调用 815
20.1.8执行绪池 817
20.2执行绪管理 823
20.2.1启动执行绪 823
20.2.2检查执行绪的状态 824
20.2.3执行绪的暂停与同步 825
20.2.4恢复暂停的执行绪 831
20.2.5停止执行绪 831
20.2.6异步处理 833
20.2.7同步处理 833
20.2.8跨执行绪共享资源 835
20.2.9从其他执行绪调用Windows窗体控制项 836
20.3创建多执行绪组件:StressTester 841
20.3.1设计组件 842
20.3.2实现组件 844
20.3.3调试组件 849
20.4小结 851
第21章网关服务 852
21.1什幺是网关服务 852
21.2RemotingFramework 853
21.2.1基本的Remoting组件 853
21.2.2一个简单的伺服器端对象 854
21.2.3从客户端访问远程对象 855
21.2.4将客户端连线到伺服器上 855
21.2.5远程对象的激活模式 859
21.3创建网关服务 862
21.3.1建立系统的体系结构 863
21.3.2设计网关服务 864
21.3.3实现网关服务 866
21.3.4设计服务主机应用程式 870
21.3.5实现服务主机应用程式 871
21.3.6设计服务提供者模拟器 875
21.3.7实现服务提供者模拟器 877
21.3.8测试MyGatewayService 883
21.3.9将所有部分组装起来 886
21.3.10处理远程异常 887
21.4小结 888
转载请注明出处海之美文 » Visual C#基于组件的开发