Clean Code
www.oreilly.com Getting Clean via Emergent Design Simple Design Rule 1: Runs All the Tests Simple Design Rules 2-4: Refactoring No Duplication Expressive Minimal Classes and Methods 英語 Getting Clean via Emergent Design Kent Beckによる4つ…
www.oreilly.com Boundaries Using Third-Party Code Exploring and Learning Boundaries Learning Log4j Learning Tests Are Better Than Free Using Code That Does Not Yet Exist Clean Boundaries 英語 Boundaries 全てのコードを自分たちの支配下に置け…
www.oreilly.com Error Handling Use Exception Rather Than Return Codes Write Your Try-Catch-Finally Statement First Use Unchecked Exceptions Provide Context With Exception Define Exception Classes in Terms of a Caller's Needs Define the Nor…
www.oreilly.com Objects and Data Structure Data Abstraction Data/Obect Anti-Symmetry The Law of Demeter Train Wrecks Hybrids Hiding Structure Data Transfer Objects Active Record Conclusion 英語 Objects and Data Structure 脳死getter/setter…
www.oreilly.com Unit Tests The Three Laws of TDD Keeping Tests Clean Tests Enable the -ilities Clean Tests Domain-Specific Testing Language A Dual Standard One Assert per Test Single Concept per Test F.I.R.S.T. 英語 Unit Tests 昔は「単体テ…
www.oreilly.com Formatting The Purpose of Formatting Vertical Formatting The Newspaper Metaphor Vertical Openness Between Concepts Vertical Density Vertical Distance Variable Declarations Instance Variables Dependent Functions Conceptual A…
www.oreilly.com Meaningful Names (by Tim Ottinger) Introduction Use Intention-Revealing Names Avoid Disinformation Make Meaningful Distinctions Use Pronounceable Names Use Searchable Names Avoid Encodings Hungarian Notation Member Prefixes…
www.oreilly.com Clean Code プログラミング言語の抽象化がいくら進んでいっても、最低限必要な詳細度は残る コードは無くならない コードこそ仕様 Bad Code 本書は「良いコードというのが重要である」というはかない仮定にもとづき… (Implementation Patter…
www.oreilly.com 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 Pu…
www.oreilly.com Functions Small! Block 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…