上海地区专业的网上书店
一次性购物满100元即可享受VIP会员价格优惠
网站地图 |登录/注册 |购物车 |会员中心 |帮助中心 |友情链接
首页 | 新书上市 | 畅销推荐 | 礼品图书 | 分类浏览 | 出版社专区 | 图书热评 | 求购登记 | 顾客留言 | 图书拾零
 
   图书搜索: 高级搜索

.NET设计规范

.NET设计规范
新书城图书编号:142477
图书ISBN:7111202031
出版时间:2007-1-1
出版社:机械工业出版社
作者:Krzysztof Cwalina/Brad Abrams
市场价格:¥56
普通会员:¥44.8    80
VIP会员:¥42   75
购买商品 收藏商品  
【图书分类】
计算机图书>>程序语言>>ASP/PHP/.NET/XML
【图书简介】
本书为框架设计人员和相关专业人员设计成功的框架以及可重用的软件提供了非常实用的指导。本书主要讨论框架的设计,虽然针对的是.NET平台,但其中的许多规范对其他平台的框架设计同样具有借鉴意义。书中汇集的规范体现了微软众多开发人员的经验和智慧,已经成为微软开发下一代重量级产品的设计规范。 随书光盘中包括本书内容的视频演示、API规范样例等。
【图书评论】
发表新的评论   
浏览.NET设计规范全部评论>>   
【图书目录】
Figures vii
Tables viif
Foreword ix
Preface xi
Acknowledgments xvii
About theAuthors xix
About the Annotators xxi
1 Introduction 1
1.1 Qualities of a Well—Designed Frfimework 3
1.1.1 Well-Designed Frameworks Are Simple 3
1.1.2 Well-Designed Frameworks Are Expensive to Design 3
1.1.3 Well—DesignedFrameworksAreFullofTrade—offs 4
1.1.4 Well—DesignedFrameworks Borrowfrom thePast 5
1.1.5 Well—Designed FrameworksAre Desiged to Evolve 5
1.1.6 Well—Designed FrameworksAreIntegrated 5
1.1.7 Well-DesignedFrameworksAreConsistent 6
2 Framework Design Fundamentals 7
2.1 Progressive Frameworks 9
2.2 Fundamental Principles of Framework Design 12
2.2.1 The Principle of Scenario—Driven Design 13
2.2.2 The Principle of Low Barrier to Entry 19
2.2.3 The Principle of Self-Documenting Object Models 23
2.2.4ThePrincipleo/LayeredArchitecture 29
2.3 Summary 31
Naming Guidelines 33
3.1 Capitalization Conventions 34
3.1.1 Capitalization Rules for Identifiers 34
3.1.2 Capitalizing Acronyms 36
3.1.3,CapitalizingCompound WordsandCommon Terms 39
3.1.4 Case Sensitivity 41
3.2 General Naming Conventions 41
3.2.1 Word Choice 42
3.2.2 Using Abbreviations and Acronyms 43
3.2.3 Avoiding Language-SpecificNames 44
3.2.4 NamingNew VersionsofExistingAPIs 46
3.3 Names of Assemblies and DLLs 48
3.4 Names of Namespaces 49
3.4.1 Namespaces and Type Name Conflicts 51
3.5 Names of Classes,Structs,and Interfaces 54
3.5.1 Names ofGeneric TypeParameters 56
3.5.2NamesofCommon types 57
3.513NamingEnumerations 59
3.6 Names ofType Members 60
3.6.1 NamesofMethods 6D
3.6.2 Names ofProperties 61
3.6.3Name ofEvents 63
3.6.4 Naming Fields 64
3.7 Naming Parameters 64
3.8 Naming Resources 65
3.9 Summary 66
4 Type Design Guidelines 67
4·1 Types and Namespaces 69
4.1.1 Standard Subnamespace Names 73
4.2 Choosing Between Class and Struct 74
4.3 Choosing Between Class and Interface 77
4.4 Abstract Class Design 83
4.5 Static Class Design 85
4.6 Interface Design 86
4.7 Struct Design 89
4.8 EnumDesign 91
4.8.1 Designing Flag Enums 97
4.8.2Adding Values toEnums 100
4.9 Nested Types 101
4.10 Summary 104
5 Member Design 05
5.1 General Member Design Guidelines 105
5.1.1 Member Overloading 105
5.1.2 Implementing Interface Members Explicitly 111
5.1.3 Choosing Between Properties and Methods 115
5.2 Property Design 120
5.2.1 IndexedPropertyDesign 122
5.2.2 Property Change Notification Events 124
513 Constructor Design 125
5.3.1 Type Constructor Guidelines 131
5.4 Event Design 132
5.4.1 Custom Event Handler Design 138
5.5 FieldDesign 139
5.6 Operator Overloads 141
5.6.1 Overloading Operafor 146
5.6.2 Conversion Operators 146
5.7 Parameter Design 148
5.7.1 Choosing Between Enum and Boolean Parameters 150
5.7.2 ValidatingArguments 152
5.7.3 Parameter Passing 55
5.7.4 Members with Variable Number of Parameters 157
5.7.5 Pointer Parameters 161
5.8 Summary 162
6 Designing for ExtensibiUty 163
6.1 Extensibility Mechanisms 163
6.1.1 Unsealed Classes 164
6.1.2 Protected Members 165
6.1.3 Events and Callbacks 166
6.1.4 Virtual Members 168
6.1.5 Abstractions(Abstract Types and Interfaces)170
6.2 BaseClasses 172
6.3 Sealing 174
6.4 Summary 177
7 Exceptions 179
7.1 Exception Throwing 183
7.2 ChoosingtheRightTypeofExceptiontoThrow 189
7.2.1 ErrorMessage Design 189
7.2.2 ExceptionHandling 19I
7.2.3 WrappingExceptions 195
7.3 Using Standard Exception Types 197
7.3.1 Exceptionand SystemException 197
7.3.2 ApplicationException 197
7.3.3 InvalidOperationException 198
7.3.4 ArgumentException,ArgumentNullException,and ArgumentOutOfRangeExceptioa 198
7.3.5 NuliReferenceException.Index Out Of Range Exception and AccessViolationException 199
7.3.6 StackOverfl owExcepti on 200
7.3.7 Out Of Memory Exception 200
7.3.8 ComException,SEHException,and other CLRExceptions 201
7.3.9 ExecutionEngineException 201
7.4 Designing Custom Exceptions 202
7.5 Exceptions and Performance 203
7.5.1 Tester-Doer Pattern 203
7.5.2 Try-Parse Pattern 204
7.6 Summary 205
8 Usage Guidelines 207
8.1 Arrays 207
8.2 Attributes 209
8.3 Collections 211
8.3.1 Collection Parameters 213
8.3.2 Collection Properties and Return Values 214
8.3.3 Choosing Between Arrays and Collections 218
8.3.4 Implementing Custom Collections 219
8.4 ICloneable 221
8.5 IComparableand Igquatable 222
8.6 IDisposable 223
Object 224
8.7.1 Object.Equals 224
8.7.2 Object.GetHashCode 225
8.7.3 Object.ToString 227
8.8 Uri 228
8.8.1 System.UriImplementationGuidelines 229
8.9 System.Xml Usage 230
8.10 Equafity Operators 231
8.10.1 EqualityOperators on ValueTypes 232
8.10.2 Equality Operators on Reference Types 232
9 Com mon Design Patterns 235
9.1 Aggregate Components 235
9.1.1 Component-Oriented Design 237
9.1.2 Factored Types 240
9.1.3 Aggregate Component Guidelines 240
9.2 The Async Pattern 243
9.2.1 Asvnc Pattern Basic Implementation Example 247
9.3 Dispose Paitem 248
9.3.1 Basic Dispose Pattern 251
9.3.2 Finalizable Types 256
9.4 Factories 260
9.5 Optional Feature Pattem 264
9.6 Template Method 267
9.7 Timeouts 269
9.8 And in the End…271
A CIi}Cod ing Style Conventions 273
A.1 General Style Conventions 274
A.1.1 Brace Usage 274
A.1.2 space Usage 275
A.1.3IndentUsage 276
A.2 Naming Conventions 277
A.3 Comments 277
A.4 File Organization 278
B Using FxCop to Enforce the Design Guidelines 28l
B.1 What Is FxCop? 281
B.2 The Evolution of FxCop 282
B.3 How Does It Work? 283
B.4 FxCop Guideline Coverage 284
B.4.1 FxCop Rules for the Naming Guidelines 284
B.4.2 FxCop Rules for the type Design Guidelines 293
B.4.3 FxCop Rules for Member Design 296
B.4.4 FxCap Rules for Designingfor Extensibility 302
B.4.5 FxCop Rules for Exceptions 363
B.4.6 FxCop Rules for Usage Guidelines 305
B.4.7 FxCop Rules for Design Patterns 309
C Sample API Specification 311
Glossary 319
Suggested Reading List 323
Index 327
| 会员登陆
| 最近的浏览历史
清除浏览历史>>
| 相关图书
.NET性能优化
企业级应用开发 使用VS.NET、UML和MSF
ASP.NET项目开发实践 (1CD)
深入浅出ASP程序设计与开发 (1CD)
.NET本质论 第1卷:公共语言运行库
Microsoft.NTE Compact Framewor
ASP网站开发四“酷”全书——新闻、论坛、电子商城、博客
ASP.net网站开发四酷全书——新闻、论坛、电子商城、博客
ASP+SQL Server动态网站开发从基础到实践 (1C
应用框架的设计与实现——.NET平台
工作时间 保密安全 订单查询及修改 支付方式 投诉 购物流程
联系我们 售后服务 配送问题 积分与优惠 建议 交易条款
·电话:021-66822880    ·邮箱:    ·客服时间( 周一 至 周六 9:00-18:00 )
Copyright © 新书城 2006-2008 , All Rights Reserved   沪ICP备06028173号