Agile Java: Crafting Code with Test-Driven Development (TM): Crafting Code with Test-Driven Development

دانلود کتاب Agile Java: Crafting Code with Test-Driven Development (TM): Crafting Code with Test-Driven Development

59000 تومان موجود

کتاب Agile Java: Crafting Code with Test-Driven Development (TM): Crafting Code with Test-Driven Development نسخه زبان اصلی

دانلود کتاب Agile Java: Crafting Code with Test-Driven Development (TM): Crafting Code with Test-Driven Development بعد از پرداخت مقدور خواهد بود
توضیحات کتاب در بخش جزئیات آمده است و می توانید موارد را مشاهده فرمایید


این کتاب نسخه اصلی می باشد و به زبان فارسی نیست.


امتیاز شما به این کتاب (حداقل 1 و حداکثر 5):

امتیاز کاربران به این کتاب:        تعداد رای دهنده ها: 7


توضیحاتی در مورد کتاب Agile Java: Crafting Code with Test-Driven Development (TM): Crafting Code with Test-Driven Development

نام کتاب : Agile Java: Crafting Code with Test-Driven Development (TM): Crafting Code with Test-Driven Development
عنوان ترجمه شده به فارسی : Agile Java: Crafting Code with Test-Driven Development (TM): Crafting Code with Test-Driven Development
سری : Robert C. Martin Series
نویسندگان : ,
ناشر : Prentice Hall
سال نشر : 2005
تعداد صفحات : 780
ISBN (شابک) : 2004114916 , 9780131482395
زبان کتاب : English
فرمت کتاب : pdf
حجم کتاب : 5 مگابایت



بعد از تکمیل فرایند پرداخت لینک دانلود کتاب ارائه خواهد شد. درصورت ثبت نام و ورود به حساب کاربری خود قادر خواهید بود لیست کتاب های خریداری شده را مشاهده فرمایید.


فهرست مطالب :


Cover......Page 1
Contents......Page 10
About the Author......Page 20
Foreword......Page 22
Acknowledgments......Page 24
Introduction......Page 26
Who Is This Book For?......Page 28
What This Book Is Not......Page 29
How to Use This Book......Page 30
Conventions Used in This Book......Page 31
What Is “Agile?”......Page 34
What Is Java?......Page 36
What Is an Object?......Page 38
What Are Classes?......Page 39
Why UML?......Page 41
What Is Inheritance?......Page 42
Why Test-Driven Development?......Page 43
Software You’ll Need......Page 46
Does It Work?......Page 51
Executing Hello World......Page 52
Still Stuck?......Page 53
Testing......Page 56
Design......Page 57
A Simple Test......Page 58
JUnit......Page 60
Adding a Test......Page 62
Creating a Student......Page 64
Creating the Student Class......Page 65
Constructors......Page 66
Local Variables......Page 67
Returning a Value from a Method......Page 69
Assertions......Page 71
Instance Variables......Page 74
Summarizing the Test......Page 77
Refactoring......Page 78
this......Page 80
private......Page 82
Naming Conventions......Page 84
Whitespace......Page 86
Exercises......Page 87
CourseSession......Page 88
int......Page 90
Initialization......Page 93
Default Constructors......Page 94
Suites......Page 95
The SDK and java.util.ArrayList......Page 96
Adding Objects......Page 98
Incremental Refactoring......Page 100
Objects in Memory......Page 101
Packages and the import Statement......Page 103
The Default Package and the package Statement......Page 104
The setup Method......Page 106
More Refactoring......Page 108
Class Constants......Page 109
Overload Constructors......Page 111
Deprecation Warnings......Page 116
Refactoring......Page 117
Creating Dates with Calendar......Page 120
Comments......Page 121
Javadoc Comments......Page 122
Exercises......Page 125
Characters and Strings......Page 128
Strings......Page 131
StringBuilder......Page 132
System Properties......Page 134
Looping Through All Students......Page 135
Single-Responsibility Principle......Page 137
Refactoring......Page 140
System.out......Page 143
Using System.out......Page 144
Refactoring......Page 145
Package Structure......Page 146
Access Modifiers......Page 147
Using Ant......Page 153
Exercises......Page 156
Class Methods......Page 158
Class Variables......Page 162
Operating on Class Variables with Class Methods......Page 163
Static Import......Page 166
Incrementing......Page 169
Factory Methods......Page 170
Static Dangers......Page 172
Using Statics: Various Notes......Page 173
Jeff’s Rule of Statics......Page 174
Booleans......Page 175
Tests as Documentation......Page 179
More on Initialization......Page 182
Exceptions......Page 183
Revisiting Primitive-Type Field Initialization......Page 184
Exercises......Page 185
Sorting: Preparation......Page 188
Sorting: Collections.sort......Page 189
CourseReportTest......Page 190
Interfaces......Page 191
Why Interfaces......Page 193
Implementing Comparable......Page 194
Sorting on Department and Number......Page 196
The if Statement......Page 197
Floating-Point Numbers......Page 198
Testing Grades......Page 200
Refactoring......Page 203
Enums......Page 204
Polymorphism......Page 206
Using Interface References......Page 212
Exercises......Page 214
The switch Statement......Page 220
Case Labels Are Just Labels......Page 221
Maps......Page 224
Inheritance......Page 226
Abstract Classes......Page 229
Extending Methods......Page 231
Refactoring......Page 232
Enhancing the Grade Enum......Page 234
Summer Course Sessions......Page 235
Calling Superclass Constructors......Page 236
Refactoring......Page 240
More on Constructors......Page 243
The Principle of Subcontracting......Page 245
Exercises......Page 253
Lesson 7: Legacy Elements......Page 256
Breaking Up a Student’s Name......Page 257
The while Loop......Page 259
Comparing Java Loops......Page 265
Refactoring......Page 266
Looping Control Statements......Page 267
The Ternary Operator......Page 270
Legacy Collections......Page 271
Iterators......Page 272
Iterators and the for-each Loop......Page 274
Casting......Page 275
Wrapper Classes......Page 277
Arrays......Page 280
Refactoring......Page 289
Exercises......Page 291
Lesson 8: Exceptions and Logging......Page 294
Exceptions......Page 295
Dealing With Exceptions......Page 297
Checked Exceptions......Page 298
Exception Hierarchy......Page 300
Creating Your Own Exception Type......Page 301
Checked Exceptions vs. Unchecked Exceptions......Page 303
Messages......Page 304
Catching Multiple Exceptions......Page 305
Rethrowing Exceptions......Page 307
The finally Block......Page 310
Refactoring......Page 312
Logging......Page 315
Logging in Java......Page 316
Testing Logging......Page 319
Logging to Files......Page 323
Testing Philosophy for Logging......Page 325
Logging Levels......Page 327
Logging Hierarchies......Page 329
Exercises......Page 330
Logical Operators......Page 336
Hash Tables......Page 338
Courses......Page 340
Refactoring Session......Page 342
Equality......Page 348
The Contract for Equality......Page 351
Apples and Oranges......Page 352
Collections and Equality......Page 354
Hash Tables......Page 355
Collisions......Page 357
An Ideal Hash Algorithm......Page 358
A Final Note on hashCode......Page 360
More on Using HashMaps......Page 362
Additional Hash Tables and Set Implementations......Page 366
toString......Page 368
Strings and Equality......Page 370
Exercises......Page 371
Lesson 10: Mathematics......Page 374
BigDecimal......Page 375
More on Primitive Numerics......Page 378
Integer Math......Page 379
Numeric Casting......Page 380
Expression Evaluation Order......Page 381
NaN......Page 382
Infinity......Page 383
Numeric Overflow......Page 384
Bit Manipulation......Page 385
Java.lang.Math......Page 393
Numeric Wrapper Classes......Page 395
Random Numbers......Page 396
Exercises......Page 400
Organization......Page 404
Character Streams......Page 405
Writing to a File......Page 410
Java.io.File......Page 413
Byte Streams and Conversion......Page 414
A Student User Interface......Page 415
Testing the Application......Page 418
Data Streams......Page 420
CourseCatalog......Page 421
Object Streams......Page 424
Random Access Files......Page 432
The Student Directory......Page 433
sis.db.DataFileTest......Page 435
Static Nested Classes and Inner Classes......Page 437
sis.db.DataFile......Page 438
sis.db.KeyFileTest......Page 441
sis.db.KeyFile......Page 443
sis.util.IOUtilTest......Page 444
sis.util.IOUtil......Page 445
sis.util.TestUtil......Page 446
Exercises......Page 447
Mock Objects Revisited......Page 450
The Jim Bob ACH Interface......Page 452
The Mock Class......Page 454
The Account Class Implementation......Page 456
Anonymous Inner Classes......Page 458
Adapters......Page 460
Accessing Variables from the Enclosing Class......Page 462
Tradeoffs......Page 464
Reflection......Page 465
Using JUnit Code......Page 466
The Class Class......Page 467
Building the Suite......Page 469
Class Modifiers......Page 471
Dynamic Proxy......Page 473
A Secure Account Class......Page 474
Building the Secure Account Solution......Page 476
The SecureProxy Class......Page 481
Exercises......Page 484
Lesson 13: Mulithreading......Page 486
Search Server......Page 487
The Search Class......Page 488
Less Dependent Testing......Page 491
The Server......Page 495
Waiting in the Test......Page 497
Creating and Running Threads......Page 498
Cooperative and Preemptive Multitasking......Page 502
Synchronization......Page 503
Creating Threads with Runnable......Page 505
Synchronized......Page 506
Synchronized Collections......Page 507
BlockingQueue......Page 508
Stopping Threads......Page 510
Wait/Notify......Page 511
Additional Notes on wait and notify......Page 516
Locks and Conditions......Page 517
Thread Priorities......Page 519
ThreadLocal......Page 520
The Timer Class......Page 524
Thread Miscellany......Page 526
Exercises......Page 531
Parameterized Types......Page 534
Collection Framework......Page 535
Creating Parameterized Types......Page 536
Erasure......Page 539
Upper Bounds......Page 541
Wildcards......Page 543
Implications of Using Wildcards......Page 545
Wildcard Capture......Page 547
Super......Page 548
Additional Bounds......Page 550
Raw Types......Page 551
Checked Collections......Page 553
Arrays......Page 555
Additional Limitations......Page 556
Final Notes......Page 557
Exercises......Page 558
Assertions......Page 560
Annotations......Page 562
Building a Testing Tool......Page 563
TestRunnerTest......Page 564
TestRunner......Page 565
The @TestMethod Annotation......Page 568
Retention......Page 570
Annotation Targets......Page 571
Modifying TestRunner......Page 573
Single-Value Annotations......Page 575
A TestRunner User Interface Class......Page 577
Array Parameters......Page 578
Multiple Parameter Annotations......Page 580
Default Values......Page 582
Additional Return Types and Complex Annotation Types......Page 583
Package Annotations......Page 584
Additional Notes on Annotations......Page 586
Exercises......Page 587
Additional Lesson I: Swing, Part 1......Page 590
Swing......Page 591
Getting Started......Page 592
Swing Application Design......Page 596
Panels......Page 597
Refactoring......Page 601
More Widgets......Page 605
Refactoring......Page 608
Button Clicks and ActionListeners......Page 611
List Models......Page 613
The Application......Page 616
Layout......Page 619
GridBagLayout......Page 627
Moving Forward......Page 631
Additional Lesson II: Swing, Part 2......Page 632
Miscellaneous Aesthetics......Page 633
Feel......Page 637
Tables......Page 660
Feedback......Page 665
Responsiveness......Page 672
Remaining Tasks......Page 675
Final Notes......Page 676
JARs......Page 678
Regular Expressions......Page 681
Cloning and Covariance......Page 687
JDBC......Page 689
Internationalization......Page 698
Call by Reference versus Call by Value......Page 706
Java Periphery......Page 708
What Else Is There?......Page 718
A......Page 726
C......Page 727
D......Page 729
F......Page 730
I......Page 731
M......Page 732
N......Page 733
P......Page 734
R......Page 735
S......Page 736
U......Page 738
W......Page 739
Appendix B: Java Operator Precedence Rules......Page 740
IDEA......Page 742
The Hello Project......Page 743
Running Tests......Page 749
Taking Advantage of IDEA......Page 754
Agile Java References......Page 758
A......Page 760
B......Page 761
C......Page 762
D......Page 764
F......Page 765
H......Page 766
I......Page 767
J......Page 768
L......Page 769
M......Page 770
O......Page 771
P......Page 772
R......Page 773
S......Page 774
T......Page 775
V......Page 776
Z......Page 777




پست ها تصادفی