본문 바로가기

Clean Code : A Handbook of Agile Software Craftsmanship > 외국도서

본문 바로가기

회원메뉴

쇼핑몰 검색

회원로그인

회원가입

오늘 본 상품 1

  • Clean Code : A Handbook of Agile Software Craftsmanship
    Clean Code 62,000
Clean Code : A Handbook of Agile Software Craftsmanship > 외국도서
메인으로

Clean Code : A Handbook of Agile Software Craftsmanship 요약정보 및 구매

저자 : Robert Martin

위시리스트0
시중가격 65,000원
판매가격 62,000원
출판사 Pearson Education Limited
발행일14 Aug 2008
ISBN 9780132350884
페이지464 pages
크기 234 x 179 x 25 (mm)
언어 KOR
국가 USA
무게 708g
원산지 USA
포인트 0점
배송비결제 주문시 결제

상품의 재고가 부족하여 구매할 수 없습니다.

  • 상품 정보

    상품 상세설명


    Even bad code can function. But if code isn't clean, it can bring a development organization to its knees. Every year, countless hours and significant resources are lost because of poorly written code.

    But it doesn't have to be that way. Noted software expert Robert C. Martin presents a revolutionary paradigm with Clean Code: A Handbook of Agile Software Craftsmanship.

    Martin has teamed up with his colleagues from Object Mentor to distill their best agile practice of cleaning code "on the fly" into a book that will instill within you the values of a software craftsman and make you a better programmer-but only if you work at it. What kind of work will you be doing? You'll be reading code-lots of code. And you will be challenged to think about what's right about that code, and what's wrong with it.

    More importantly, you will be challenged to reassess your professional values and your commitment to your craft. Clean Code is divided into three parts. The first describes the principles, patterns, and practices of writing clean code.

    The second part consists of several case studies of increasing complexity. Each case study is an exercise in cleaning up code-of transforming a code base that has some problems into one that is sound and efficient. The third part is the payoff: a single chapter containing a list of heuristics and "smells" gathered while creating the case studies.

    The result is a knowledge base that describes the way we think when we write, read, and clean code. Readers will come away from this book understanding How to tell the difference between good and bad code How to write good code and how to transform bad code into good code How to create good names, good functions, good objects, and good classes How to format code for maximum readability How to implement complete error handling without obscuring code logic How to unit test and practice test-driven development This book is a must for any developer, software engineer, project manager, team lead, or systems analyst with an interest in producing better code. 

    상품 정보 고시

  • 사용후기

    Foreword xix
    Introduction xxv
    On the Cover xxix

    Chapter 1: Clean Code 1
    There Will Be Code 2
    Bad Code 3
    The Total Cost of Owning a Mess 4
    Schools of Thought 12
    We Are Authors 13
    The Boy Scout Rule 14
    Prequel and Principles 15
    Conclusion 15
    Bibliography 15

    Chapter 2: Meaningful Names 17
    Introduction 17
    Use Intention-Revealing Names 18
    Avoid Disinformation 19
    Make Meaningful Distinctions 20
    Use Pronounceable Names 21
    Use Searchable Names 22
    Avoid Encodings 23
    Avoid Mental Mapping 25
    Class Names 25
    Method Names 25
    Don't Be Cute 26
    Pick One Word per Concept 26
    Don't Pun 26
    Use Solution Domain Names 27
    Use Problem Domain Names 27
    Add Meaningful Context 27
    Don't Add Gratuitous Context 29
    Final Words 30

    Chapter 3: Functions 31
    Small! 34
    Do One Thing 35
    One Level of Abstraction per Function 36
    Switch Statements 37
    Use Descriptive Names 39
    Function Arguments 40
    Have No Side Effects 44
    Command Query Separation 45
    Prefer Exceptions to Returning Error Codes 46
    Don't Repeat Yourself 48
    Structured Programming 48
    How Do You Write Functions Like This? 49
    Conclusion 49
    SetupTeardownIncluder 50
    Bibliography 52

    Chapter 4: Comments 53
    Comments Do Not Make Up for Bad Code 55
    Explain Yourself in Code 55
    Good Comments 55
    Bad Comments 59
    Bibliography 74

    Chapter 5: Formatting 75
    The Purpose of Formatting 76
    Vertical Formatting 76
    Horizontal Formatting 85
    Team Rules 90
    Uncle Bob's Formatting Rules 90
    Chapter 6: Objects and Data Structures 93
    Data Abstraction 93
    Data/Object Anti-Symmetry 95
    The Law of Demeter 97
    Data Transfer Objects 100
    Conclusion 101
    Bibliography 101

    Chapter 7: Error Handling 103
    Use Exceptions Rather Than Return Codes 104
    Write Your Try-Catch-Finally Statement First 105
    Use Unchecked Exceptions 106
    Provide Context with Exceptions 107
    Define Exception Classes in Terms of a Caller's Needs 107
    Define the Normal Flow 109
    Don't Return Null 110
    Don't Pass Null 111
    Conclusion 112
    Bibliography 112

    Chapter 8: Boundaries 113
    Using Third-Party Code 114
    Exploring and Learning Boundaries 116
    Learning log4j 116
    Learning Tests Are Better Than Free 118
    Using Code That Does Not Yet Exist 118
    Clean Boundaries 120
    Bibliography 120

    Chapter 9: Unit Tests 121
    The Three Laws of TDD 122
    Keeping Tests Clean 123
    Clean Tests 124
    One Assert per Test 130
    F.I.R.S.T. 132
    Conclusion 133
    Bibliography 133

    Chapter 10: Classes 135
    Class Organization 136
    Classes Should Be Small! 136
    Organizing for Change 147
    Bibliography 151

    Chapter 11: Systems 153
    How Would You Build a City? 154
    Separate Constructing a System from Using It 154
    Scaling Up 157
    Java Proxies 161
    Pure Java AOP Frameworks 163
    AspectJ Aspects 166
    Test Drive the System Architecture 166
    Optimize Decision Making 167
    Use Standards Wisely, When They Add Demonstrable Value 168
    Systems Need Domain-Specific Languages 168
    Conclusion 169
    Bibliography 169

    Chapter 12: Emergence 171
    Getting Clean via Emergent Design 171
    Simple Design Rule 1: Runs All the Tests 172
    Simple Design Rules 2-4: Refactoring 172
    No Duplication 173
    Expressive 175
    Minimal Classes and Methods 176
    Conclusion 176
    Bibliography 176

    Chapter 13: Concurrency 177
    Why Concurrency? 178
    Challenges 180
    Concurrency Defense Principles 180
    Know Your Library 182
    Know Your Execution Models 183
    Beware Dependencies Between Synchronized Methods 185
    Keep Synchronized Sections Small 185
    Writing Correct Shut-Down Code Is Hard 186
    Testing Threaded Code 186
    Conclusion 190
    Bibliography 191

    Chapter 14: Successive Refinement 193
    Args Implementation 194
    Args: The Rough Draft 201
    String Arguments 214
    Conclusion 250

    Chapter 15: JUnit Internals 251
    The JUnit Framework 252
    Conclusion 265

    Chapter 16: Refactoring SerialDate 267
    First, Make It Work 268
    Then Make It Right 270
    Conclusion 284
    Bibliography 284

    Chapter 17: Smells and Heuristics 285
    Comments 286
    Environment 287
    Functions 288
    General 288
    Java 307
    Names 309
    Tests 313
    Conclusion 314
    Bibliography 315

    Appendix A: Concurrency II 317
    Client/Server Example 317
    Possible Paths of Execution 321
    Knowing Your Library 326
    Dependencies Between Methods Can Break Concurrent Code 329
    Increasing Throughput 333
    Deadlock 335
    Testing Multithreaded Code 339
    Tool Support for Testing Thread-Based Code 342
    Conclusion 342
    Tutorial: Full Code Examples 343

    Appendix B: org.jfree.date.SerialDate 349

    Appendix C: Cross References of Heuristics 409

    Epilogue 411
    Index 413
     

  • 상품문의

    등록된 상품문의

    상품문의가 없습니다.

  • 반품/교환 방법

    "마이페이지 > 주문조회 > 반품/교환신청", 1:1상담>반품/교환 또는 고객센터(031-948-8090)

    반품/교환 가능 기간

    변심, 구매착오의 경우 수령 후 10일 이내

    전자책 관련(eBook 등)은 반품이 불가합니다.

    파본 등 상품결함 시 '문제점 발견 후 30일' 이내

    반품/교환 비용

    제주도 및 도서산간 지역 발송은 추가비용 발생되며, 비용은 고객부담(제주도 추가비용 4,000원)

    변심 혹은 구매착오의 경우에만 반송료 고객 부담(왕복 배송비 고객 부담)

    * 해외 직배송도서 취소수수료 : 수입제반비용(국내 까지의 운송비, 관세사비, 보세창고료, 내륙 운송비, 통관비 등)에 따른 비용

    반품/교환 불가 사유

    해외 직배송도서는 반품이 불가합니다.

    사용, 파본, 포장개봉에 의해 상품결함 등 상품가치가 현저히 감소한 상품

    전자책 관련(eBook 등)은 반품이 불가합니다.

    소비자 피해보상

    환불지연에 따른 배상

    - 상품의 불량에 의한 반품, 교환, A/S, 환불, 품질보증 및 피해보상 등에 관한 사항은 소비자분쟁해결기준 (공정거래위원회 고시)에 준하여 처리됨

    - 대금 환불 및 환불 지연에 따른 배상금 지급 조건, 절차 등은 전자상거래 등에서의 소비자 보호에 관한 법률에 따라 처리함

관련도서