- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
.net面向组件编程技术
PAGE \* MERGEFORMAT 99
前言... xi
第1章:面向组件编程简介 1
基本术语... 2
面向组件和面向对象编程的比较.. 3
面向组件编程的原则.. 6
.NET对于组件原则的遵循... 11
.NET组件开发... 13
第2章:.NET面向组件的编程要素 15
语言独立性:公共语言运行时... 15
打包和部署:程序集... 21
二进制兼容性... 42
第3章:基于接口编程 46
接口和实现分离... 46
使用接口... 52
接口和泛型... 64
设计和分解接口... 73
Visual Studio 2005中的接口... 77
第4章:生命周期管理 82
托管堆... 82
传统内存释放模式... 83
.NET垃圾回收... 84
对象终结... 86
确定性终结... 90
第5章:版本控制 102
程序集版本号... 102
程序集部署模型... 105
程序集强名称... 107
Visual Studio 2005和版本划分... 117
自定义版本策略... 119
CLR版本划分... 125
第6章:事件 129
基于委托的事件... 130
使用.NET事件... 136
第7章:异步调用 155
异步机制的必备条件... 156
委托的老调重弹... 157
异步调用编程模型... 159
异步错误处理... 172
异步事件... 173
异步调用缺陷... 178
同步和异步处理... 182
第8章:多线程和并发管理 184
线程和多线程... 184
组件和线程... 185
使用线程... 186
同步线程... 201
自动同步... 202
手动同步... 212
WorkerThread包装类... 243
同步委托... 249
使用.NET多线程服务... 252
第9章:序列化和持久化 280
自动序列化... 281
序列化格式器... 285
序列化事件... 291
序列化和流... 301
自定义序列化... 304
序列化和类层次结构... 311
第10章:远程处理 319
应用程序域... 320
远程对象类型... 330
引用封送激活模式... 334
.NET Remoting架构... 342
构建分布式应用程序... 348
租赁和赞助... 382
.NET与位置透明... 397
第11章:上下文与拦截 399
.NET组件服务... 399
.NET上下文... 402
自定义组件服务... 410
第12章:安全 434
.NET安全架构... 435
配置权限... 449
编程式安全... 472
Visual Studio 2005与安全... 494
基于主体的安全... 498
其他安全问题... 505
附录A:基于接口的Web服务 511
附录B:统一Windows Forms和ASP.NET安全 520
附录C:反射和属性 544
附录D:泛型 557
附录E:C#编码标准 572
索引 589
我很荣幸能够在职业生涯中经历了几代Microsoft组件技术的变迁。20世纪90年代中期我开发过DLL,提供导出函数以供使用,并通过MFC扩展DLL来公开类。我亲身体验过管理之间存在互操作的一组应用程序(由156个DLL构成,而且要作为一个单元来部署)是多么复杂,也经历过由于这些DLL使用序数而带来的版本控制和维护问题。我帮助设计了类似COM的方案来解决那些问题,并依然记得当我第一次听说COM和我使用命令行工具生成第一个GUID的情形。
在ATL远未问世之前我就学会了如何编写类工厂和IDL接口程序,我还在RPC被DCOM替代之前,就使用过RPC。我使用COM设计过基于组件的应用程序,并且体会过与不熟悉必要的COM知识的开发人员分享设计思路有多难。我使用过MTS编写程序,并且在此过程中学会了一些权宜之计。当用COM+来架构大规模企业框架时,我惊叹COM+所展现出的优雅和实用。
随着面向组件技术的不断发展与演进,我对面向组件技术的理解与认识也不断深入。我经常自问:使用组件的基本原则是什么?它们与传统面向对象编程的区别何在?我努力从以往所犯的错误中学习新的东西,提取平时遇到的和自己领悟到的各种好的想法和技术,并推而广之。我相信自己已经界定出一些面向组件设计中的核心原则,这些原则超越了今天可用的所有技术,并且从长远来看,它们能够构造出更易于复用、扩展和维护的组件。
随着.NET框架的出现,Windows开发人员终于拥有了一种卓越的技术,能够简化基于组件的应用程序的开发和部署工作。.NET是微软公司呕心沥血之作,在我看来它很好地改善了以往的相关技术尤其是COM的不足之处。它融合并加强了已
文档评论(0)