Object-Oriented Software Construction读书介绍
类别 | 页数 | 译者 | 网友评分 | 年代 | 出版社 |
---|---|---|---|---|---|
书籍 | 1250页 | 2020 | Prentice Hall |
定价 | 出版日期 | 最近访问 | 访问指数 |
---|---|---|---|
USD 132.65 | 2020-02-20 … | 2020-03-13 … | 65 |
Contents
Preface V
Foreword To The Second Edition Xiii
About The Accompanying Cd-Rom Xiv
On The Bibliography, Internet Sources And Exercises Xv
Contents Xvii
Part A: The Issues 1
Chapter 1: Software Quality 3
1.1 External And Internal Factors 3
1.2 A Review Of External Factors 4
1.3 About Software Maintenance 17
1.4 Key Concepts Introduced In This Chapter 19
1.5 Bibliographical Notes 19
Chapter 2: Criteria Of Object Orientation 21
2.1 On The Criteria 21
2.2 Method And Language 22
2.3 Implementation And Environment 31
2.4 Libraries 33
2.5 For More Sneak Preview 34
2.6 Bibliographical Notes And Object Resources 34
Part B: The Road To Object Orientation 37
Chapter 3: Modularity 39
3.1 Five Criteria 40
3.2 Five Rules 46
3.3 Five Principles 53
3.4 Key Concepts Introduced In This Chapter 64
3.5 Bibliographical Notes 64
Exercises 65
Chapter 4: Approaches To Reusability 67
4.1 The Goals Of Reusability 68
4.2 What Should We Reuse? 70
4.3 Repetition In Software Development 74
4.4 Non-Technical Obstacles 74
4.5 The Technical Problem 81
4.6 Five Requirements On Module Structures 83
4.7 Traditional Modular Structures 89
4.8 Overloading And Genericity 93
4.9 Key Concepts Introduced In This Chapter 98
4.10 Bibliographical Notes 99
Chapter 5: Towards Object Technology 101
5.1 The Ingredients Of Computation 101
5.2 Functional Decomposition 103
5.3 Object-Based Decomposition 114
5.4 Object-Oriented Software Construction 116
5.5 Issues 117
5.6 Key Concepts Introduced In This Chapter 119
5.7 Bibliographical Notes 119
Chapter 6: Abstract Data Types 121
6.1 Criteria 122
6.2 Implementation Variations 122
6.3 Towards An Abstract View Of Objects 126
6.4 Formalizing The Specification 129
6.5 From Abstract Data Types To Classes 142
6.6 Beyond Software 147
6.7 Supplementary Topics 148
6.8 Key Concepts Introduced In This Chapter 159
6.9 Bibliographical Notes 160
Exercises 161
Part C: Object-Oriented Techniques 163
Chapter 7: The Static Structure: Classes 165
7.1 Objects Are Not The Subject 165
7.2 Avoiding The Standard Confusion 166
7.3 The Role Of Classes 169
7.4 A Uniform Type System 171
7.5 A Simple Class 172
7.6 Basic Conventions 177
7.7 The Object-Oriented Style Of Computation 181
7.8 Selective Exports And Information Hiding 191
7.9 Putting Everything Together 194
7.10 Discussion 203
7.11 Key Concepts Introduced In This Chapter 213
7.12 Bibliographical Notes 215
Exercises 216
Chapter 8: The Run-Time Structure: Objects 217
8.1 Objects 218
8.2 Objects As A Modeling Tool 228
8.3 Manipulating Objects And References 231
8.4 Creation Procedures 236
8.5 More On References 240
8.6 Operations On References 242
8.7 Composite Objects And Expanded Types 254
8.8 Attachment: Reference And Value Semantics 261
8.9 Dealing With References: Benefits And Dangers 265
8.10 Discussion 270
8.11 Key Concepts Introduced In This Chapter 276
8.12 Bibliographical Notes 277
Exercises 277
Chapter 9: Memory Management 279
9.1 What Happens To Objects 279
9.2 The Casual Approach 291
9.3 Reclaiming Memory: The Issues 293
9.4 Programmer-Controlled Deallocation 294
9.5 The Component-Level Approach 297
9.6 Automatic Memory Management 301
9.7 Reference Counting 302
9.8 Garbage Collection 304
9.9 Practical Issues Of Garbage Collection 309
9.10 An Environment With Memory Management 312
9.11 Key Concepts Introduced In This Chapter 315
9.12 Bibliographical Notes 315
Exercises 316
Chapter 10: Genericity 317
10.1 Horizontal And Vertical Type Generalization 317
10.2 The Need For Type Parameterization 318
10.3 Generic Classes 320
10.4 Arrays 325
10.5 The Cost Of Genericity 328
10.6 Discussion: Not Done Yet 329
10.7 Key Concepts Introduced In This Chapter 329
10.8 Bibliographical Notes 330
Exercises 330
Chapter 11: Design By Contract: Building Reliable Software 331
11.1 Basic Reliability Mechanisms 332
11.2 About Software Correctness 333
11.3 Expressing A Specification 334
11.4 Introducing Assertions Into Software Texts 337
11.5 Preconditions And Postconditions 338
11.6 Contracting For Software Reliability 341
11.7 Working With Assertions 348
11.8 Class Invariants 363
11.9 When Is A Class Correct? 369
11.10 The Adt Connection 373
11.11 An Assertion Instruction 378
11.12 Loop Invariants And Variants 380
11.13 Using Assertions 389
11.14 Discussion 398
11.15 Key Concepts Introduced In This Chapter 406
11.16 Bibliographical Notes 407
Exercises 408
Postscript: The Ariane 5 Failure 410
Chapter 12: When The Contract Is Broken: Exception Handling 411
12.1 Basic Concepts Of Exception Handling 411
12.2 Handling Exceptions 414
12.3 An Exception Mechanism 419
12.4 Exception Handling Examples 422
12.5 The Task Of A Rescue Clause 427
12.6 Advanced Exception Handling 431
12.7 Discussion 435
12.8 Key Concepts Introduced In This Chapter 437
12.9 Bibliographical Notes 438
Exercises 438
Chapter 13: Supporting Mechanisms 439
13.1 Interfacing With Non-O-O Software 439
13.2 Argument Passing 444
13.3 Instructions 447
13.4 Expressions 452
13.5 Strings 456
13.6 Input And Output 457
13.7 Lexical Conventions 457
13.8 Key Concepts Introduced In This Chapter 458
Exercises 458
Chapter 14: Introduction To Inheritance 459
14.1 Polygons And Rectangles 460
14.2 Polymorphism 467
14.3 Typing For Inheritance 472
14.4 Dynamic Binding 480
14.5 Deferred Features And Classes 482
14.6 Redeclaration Techniques 491
14.7 The Meaning Of Inheritance 494
14.8 The Role Of Deferred Classes 500
14.9 Discussion 507
14.10 Key Concepts Introduced In This Chapter 516
14.11 Bibliographical Notes 517
Exercises 517
Chapter 15: Multiple Inheritance 519
15.1 Examples Of Multiple Inheritance 519
15.2 Feature Renaming 535
15.3 Flattening The Structure 541
15.4 Repeated Inheritance 543
15.5 Discussion 563
15.6 Key Concepts Introduced In This Chapter 566
15.7 Bibliographical Notes 567
Exercises 567
Chapter 16: Inheritance Techniques 569
16.1 Inheritance And Assertions 569
16.2 The Global Inheritance Structure 580
16.3 Frozen Features 583
16.4 Constrained Genericity 585
16.5 Assignment Attempt 591
16.6 Typing And Redeclaration 595
16.7 Anchored Declaration 598
16.8 Inheritance And Information Hiding 605
16.9 Key Concepts Introduced In This Chapter 609
16.10 Bibliographical Note 610
Exercises 610
Chapter 17: Typing 611
17.1 The Typing Problem 611
17.2 Static Typing: Why And How 615
17.3 Covariance And Descendant Hiding 621
17.4 First Approaches To System Validity 628
17.5 Relying On Anchored Types 630
17.6 Global Analysis 633
17.7 Beware Of Polymorphic Catcalls! 636
17.8 An Assessment 639
17.9 The Perfect Fit 640
17.10 Key Concepts Studied In This Chapter 641
17.11 Bibliographical Notes 641
Chapter 18: Global Objects And Constants 643
18.1 Constants Of Basic Types 643
18.2 Use Of Constants 645
18.3 Constants Of Class Types 646
18.4 Applications Of Once Routines 648
18.5
剧情呢,免费看分享剧情、挑选影视作品、精选好书简介分享。