دسترسی نامحدود
برای کاربرانی که ثبت نام کرده اند
برای ارتباط با ما می توانید از طریق شماره موبایل زیر از طریق تماس و پیامک با ما در ارتباط باشید
در صورت عدم پاسخ گویی از طریق پیامک با پشتیبان در ارتباط باشید
برای کاربرانی که ثبت نام کرده اند
درصورت عدم همخوانی توضیحات با کتاب
از ساعت 7 صبح تا 10 شب
دسته بندی: برنامه نويسي ویرایش: نویسندگان: Scott L. Bain سری: ISBN (شابک) : 0321509366, 9780321509369 ناشر: AW سال نشر: 2008 تعداد صفحات: 441 زبان: English فرمت فایل : PDF (درصورت درخواست کاربر به PDF، EPUB یا AZW3 تبدیل می شود) حجم فایل: 6 مگابایت
در صورت تبدیل فایل کتاب Emergent Design [software development] به فرمت های PDF، EPUB، AZW3، MOBI و یا DJVU می توانید به پشتیبان اطلاع دهید تا فایل مورد نظر را تبدیل نمایند.
توجه داشته باشید کتاب طراحی اضطراری [توسعه نرم افزار] نسخه زبان اصلی می باشد و کتاب ترجمه شده به فارسی نمی باشد. وبسایت اینترنشنال لایبرری ارائه دهنده کتاب های زبان اصلی می باشد و هیچ گونه کتاب ترجمه شده یا نوشته شده به فارسی را ارائه نمی دهد.
یک رویکرد فوقالعاده معاصر، کاملاً واقعگرایانه و کاملاً عملی را نسبت به چرخه عمر توسعه نرمافزار بیان میکند.
Spells out an ultra-contemporary, completely realistic, and thoroughly actionable approach toward the software development lifecycle.
Cover......Page 1
Contents......Page 8
Series Foreword......Page 18
Preface......Page 24
Acknowledgments......Page 30
About the Author......Page 32
How Long Have Human Beings Been Making Software?......Page 34
What Sort of Activity Is Software Development?......Page 35
What Is Missing?......Page 39
Who Is Responsible?......Page 41
Uniqueness......Page 42
Patterns and Professionalism in Software Development......Page 44
Andrea's Closet......Page 45
Off to the Moon......Page 51
Different Forces, Different Design......Page 55
And There Are More Contextual Forces......Page 56
The Costs and Benefits......Page 57
The Value of Patterns......Page 59
Summary......Page 60
Chapter 3 The Nature of Software Development......Page 62
We Fail Too Much......Page 63
Definitions of Success......Page 64
The Standish Group......Page 65
Doing the Wrong Things......Page 67
Doing the Things Wrong......Page 68
One Reason: The Civil Engineering Analogy......Page 71
Giving Up Hope......Page 74
Ignoring Your Mother......Page 75
We Swim in an Ocean of Change......Page 76
Accept Change......Page 77
Embrace Change......Page 78
Capitalize on Change......Page 79
A Better Analogy: Evolving Systems......Page 82
Summary......Page 85
Chapter 4 Evolution in Code: Stage 1......Page 88
The Origins of Object Orientations and Patterns......Page 89
An Example: Simple Conditionals and the Proxy Pattern......Page 91
The Next Step: Either This or That......Page 95
Why Bother?......Page 98
One Among Many......Page 99
Summary......Page 100
Chapter 5 Using and Discovering Patterns......Page 102
Design from Context: More Carpentry from Scott......Page 103
Patterns Help Give Us a Language for Discussing Design......Page 112
Patterns in This Book......Page 113
Summary......Page 114
Elements of the Profession......Page 116
A Visual Representation......Page 118
Summary......Page 119
Chapter 7 Paying Attention to Qualities and Pathologies......Page 122
Cohesion......Page 124
Method Cohesion......Page 125
Cohesion of Perspective Level......Page 127
Class Cohesion......Page 129
How Cohesive Is Cohesive Enough?......Page 131
Intentional Coupling Versus Accidental Coupling......Page 132
Types of Coupling......Page 134
Redundancy......Page 139
Redundancy and Coupling......Page 143
Testability......Page 145
Pathologies......Page 147
Indicators of Weak Cohesion......Page 148
Indicators of Accidental or Illogical Coupling......Page 149
Indicators of Redundancy......Page 151
Summary......Page 152
Chapter 8 Paying Attention to Principles and Wisdom......Page 154
Fowler's Perspectives......Page 155
Another Kind of Perspective......Page 156
A Separate Perspective: Creation......Page 158
Considering Construction Details Last......Page 160
The Open-Closed Principle......Page 162
Open-Closed at the Class Level......Page 164
Open-Closed at the Method Level......Page 165
The Dependency Inversion Principle......Page 166
Advice from the Gang of Four......Page 168
Designing to the Interface of a Method......Page 169
Designing to the Interface of a Class......Page 171
GoF: Favor Object Aggregation Over Class Inheritance......Page 172
GoF: Consider What Should Be Variable in Your Design and Encapsulate the Concept That Varies......Page 176
Summary......Page 179
Chapter 9 Paying Attention to Practices......Page 180
Consistent Coding Style......Page 181
Comments......Page 182
Naming Classes, Methods, and Variables......Page 184
Virtues of Coding Standards......Page 185
Programming by Intention......Page 186
Are They Really All Private?......Page 187
Encapsulating the Constructor......Page 188
Making the Decision......Page 192
Commonality-Variability Analysis......Page 194
Practices and Freedom......Page 199
Summary......Page 200
Economies of Testing......Page 202
Unit Testing......Page 204
Up-Front Testing......Page 206
JUnit Framework......Page 208
JUnit Basics......Page 209
JUnit Examples......Page 211
Rule.java: Code First, Then Test......Page 212
RuleContainer.java: Test First, Then Code......Page 220
Eliminating Redundancy: @Before and @After......Page 229
Automating Tests in Batches......Page 232
Exceptions and Unit Testing......Page 233
Mock Objects......Page 237
MockObject Frameworks......Page 239
Faking It......Page 242
Dependency Injection and the Endo-Testing Technique......Page 243
Endo-Testing......Page 244
Summary......Page 245
Chapter 11 Paying Attention to Disciplines: Refactoring......Page 246
Refactoring Bad Code......Page 248
Refactoring Good Code......Page 249
Structural Changes Versus Functional Changes......Page 251
Refactoring Helps You Choose Your Battles......Page 252
Avoiding Refactoring: Prefactoring......Page 253
The Mechanics of Refactoring......Page 254
Refactoring Legacy Code......Page 264
Summary......Page 266
What Makes Development Test-Driven?......Page 268
Test-Driven Versus Test-First......Page 269
Designing from the Perspective of the Unit Test......Page 270
Testing and Cohesion......Page 271
Testing and Redundancy......Page 273
The Strategy Pattern......Page 274
Turtles All the Way Down......Page 275
Mock Object/Mock Turtles......Page 276
Mock Objects......Page 277
Testing the Decorator Pattern......Page 281
Summary......Page 286
Making Decisions in an Evolving Design......Page 288
Christopher Alexander and Forces......Page 289
The Signal Processor Example......Page 290
The PKZip Example......Page 295
Testing and Forces......Page 298
More Choices, More Forces......Page 299
Summary......Page 304
The Problem Domain: The MWave Corporation......Page 306
The Teams......Page 308
The Simplest Thing That Could Possibly Work......Page 310
A New Requirement: Complex Machines......Page 314
Oh, By the Way......Page 316
More Good News......Page 318
Summary: What a Long, Strange Trip It Has Been......Page 320
Chapter 15 A Conclusion: 2020......Page 322
Appendix A: Evolutionary Paths......Page 324
Encapsulated Constructor to Singleton......Page 325
Programming-by-Intention to Encapsulated Constructor to Strategy (Varying on an Issue Extrinsic to the Client)......Page 326
Programming-by-Intention to Encapsulated Constructor to Strategy (Varying on an Issue Intrinsic to the Client)......Page 327
Programming-by-Intention to Encapsulated Constructor to Chain of Responsibility (Varying on an Issue Extrinsic to the Client)......Page 328
Programming-by-Intention to Encapsulated Constructor to Chain of Responsibility (Varying on an Issue Intrinsic to the Client)......Page 329
Encapsulated Construction to Strategy to Singleton (Object Factory) to Adapter/Façade......Page 330
Encapsulated Constructor to Proxy to Decorator with Singleton (Object Factory)......Page 332
Appendix B: Overview of Patterns Used in the Examples......Page 334
Contextual Forces......Page 336
Implementation Forces......Page 338
Consequent Forces......Page 342
Contextual Forces......Page 343
Implementation Forces......Page 345
Consequent Forces......Page 347
Contextual Forces......Page 348
Implementation Forces......Page 349
Consequent Forces......Page 353
Contextual Forces......Page 354
Implementation Forces......Page 355
Consequent Forces......Page 359
Chain of Responsibility: The Poker Example......Page 360
Contextual Forces......Page 362
Implementation Forces......Page 365
Consequent Forces......Page 369
Contextual Forces......Page 370
Implementation Forces......Page 372
Consequent Forces......Page 378
Contextual Forces......Page 379
Implementation Forces......Page 381
Consequent Forces......Page 389
Contextual Forces......Page 391
Implementation Forces......Page 393
Consequent Forces......Page 395
Contextual Forces......Page 397
Implementation Forces......Page 398
Consequent Forces......Page 403
Contextual Forces......Page 404
Implementation Forces......Page 406
Consequent Forces......Page 409
Contextual Forces......Page 410
Implementation Forces......Page 412
Consequent Forces......Page 416
My View......Page 418
An Alternate View......Page 422
Bibliography......Page 426
A......Page 428
C......Page 429
E......Page 432
F......Page 433
H......Page 434
L......Page 435
M......Page 436
P......Page 437
R......Page 439
S......Page 440
T......Page 442
W......Page 443
Y–Z......Page 444