Clean Code, Robert Martin, 2009

Clean Code, Robert Martin, 2009.

   The mission of this series is to improve the state of the art of software craftsmanship. The books in this series are technical, pragmatic, and substantial. The authors are highly experienced craftsmen and professionals dedicated to writing about what actually works in practice, as opposed to what might work in theory. You will read about what the author has done, not what he thinks you should do. If the book is about programming, there will be lots of code. If the book is about managing, there will be lots of case studies from real projects.

Clean Code, Robert Martin, 2009


There Will Be Code.
One might argue that a book about code is somehow behind the times—that code is no longer the issue; that we should be concerned about models and requirements instead. Indeed some have suggested that we are close to the end of code. That soon all code will be generated instead of written. That programmers simply won't be needed because business people will generate programs from specifications.

Nonsense! We will never be rid of code, because code represents the details of the requirements. At some level those details cannot be ignored or abstracted; they have to be specified. And specifying requirements in such detail that a machine can execute them is programming. Such a specification is code.

I expect that the level of abstraction of our languages w ill continue to increase. I also expect that the number of domain-specific languages will continue to grow. This will be a good thing. But it will not eliminate code. Indeed, all the specifications written in these higher level and domain-specific language will be code! It will still need to be rigorous, accurate, and so formal and detailed that a machine can understand and execute it.

CONTENTS.
Foreword.
Introduction.
On the Cover.
Chapter 1: Clean Code.
There Will Be Code.
Bad Code.
The Total Cost of Owning a Mess.
The Grand Redesign in the Sky.
Attitude.
The Primal Conundrum.
The Art of Clean Code?.
What Is Clean Code?.
Schools of Thought.
We Are Authors.
The Boy Scout Rule.
Prequel and Principles.
Conclusion.
Bibliography.
Chapter 2: Meaningful Names.
Introduction.
Use Intention-Revealing Names.
Avoid Disinformation.
Make Meaningful Distinctions.
Use Pronounceable Names.
Use Searchable Names.
Avoid Encodings.
Hungarian Notation.
Member Prefixes.
Interfaces and Implementations.
Avoid Mental Mapping.
Class Names.
Method Names.
Don’t Be Cute.
Pick One Word per Concept.
Don’t Pun.
Use Solution Domain Names.
Use Problem Domain Names.
Add Meaningful Context.
Don’t Add Gratuitous Context.
Final Words.
Chapter 3: Functions.
Small!.
Blocks and Indenting.
Do One Thing.
Sections within Functions.
One Level of Abstraction per Function.
Reading Code from Top to Bottom: The Stepdown Rule.
Switch Statements.
Use Descriptive Names.
Function Arguments.
Common Monadic Forms.
Flag Arguments.
Dyadic Functions.
Triads.
Argument Objects.
Argument Lists.
Verbs and Keywords.
Have No Side Effects.
Output Arguments.
Command Query Separation.
Prefer Exceptions to Returning Error Codes.
Extract Try/Catch Blocks.
Error Handling Is One Thing.
The Error.java Dependency Magnet.
Don’t Repeat Yourself.
Structured Programming.
How Do You Write Functions Like This?.
Conclusion.
SetupTeardownIncluder.
Bibliography.
Chapter 4: Comments.
Comments Do Not Make Up for Bad Code.
Explain Yourself in Code.
Good Comments.
Legal Comments.
Informative Comments.
Explanation of Intent.
Clarification.
Warning of Consequences.
TODO Comments.
Amplification.
Javadocs in Public APIs.
Bad Comments.
Mumbling.
Redundant Comments.
Misleading Comments.
Mandated Comments.
Journal Comments.
Noise Comments.
Scary Noise.
Don’t Use a Comment When You Can Use a Function or a Variable.
Position Markers.
Closing Brace Comments.
Attributions and Bylines.
Commented-Out Code.
HTML Comments.
Nonlocal Information.
Too Much Information.
Inobvious Connection.
Function Headers.
Javadocs in Nonpublic Code.
Example.
Bibliography.
Chapter 5: Formatting.
The Purpose of Formatting.
Vertical Formatting.
The Newspaper Metaphor.
Vertical Openness Between Concepts.
Vertical Density.
Vertical Distance.
Vertical Ordering.
Horizontal Formatting.
Horizontal Openness and Density.
Horizontal Alignment.
Indentation.
Dummy Scopes.
Team Rules.
Uncle Bob’s Formatting Rules.
Chapter 6: Objects and Data Structures.
Data Abstraction.
Data/Object Anti-Symmetry.
The Law of Demeter.
Train Wrecks.
Hybrids.
Hiding Structure.
Data Transfer Objects.
Active Record.
Conclusion.
Bibliography.
No Preemption.
Circular Wait.
Breaking Mutual Exclusion.
Breaking Lock & Wait.
Breaking Preemption.
Breaking Circular Wait.
Testing Multithreaded Code.
Tool Support for Testing Thread-Based Code.
Conclusion.
Tutorial: Full Code Examples.
Client/Server Nonthreaded.
Client/Server Using Threads.
Appendix B: org.jfree.date.SerialDate.
Appendix C: Cross References of Heuristics.
Epilogue.
Index.



Бесплатно скачать электронную книгу в удобном формате, смотреть и читать:
Скачать книгу Clean Code, Robert Martin, 2009 - fileskachat.com, быстрое и бесплатное скачивание.

Скачать pdf
Ниже можно купить эту книгу по лучшей цене со скидкой с доставкой по всей России.Купить эту книгу



Скачать - pdf - Яндекс.Диск.
Дата публикации:





Хештеги: :: ::


Следующие учебники и книги:
Предыдущие статьи: