Book description
Good software design is simple and easy to understand. Unfortunately, the average computer program today is so complex that no one could possibly comprehend how all the code works. This concise guide helps you understand the fundamentals of good design through scientific laws—principles you can apply to any programming language or project from here to eternity.
Whether you’re a junior programmer, senior software engineer, or non-technical manager, you’ll learn how to create a sound plan for your software project, and make better decisions about the pattern and structure of your system.
- Discover why good software design has become the missing science
- Understand the ultimate purpose of software and the goals of good design
- Determine the value of your design now and in the future
- Examine real-world examples that demonstrate how a system changes over time
- Create designs that allow for the most change in the environment with the least change in the software
- Make easier changes in the future by keeping your code simpler now
- Gain better knowledge of your software’s behavior with more accurate tests
Table of contents
- Code Simplicity
- SPECIAL OFFER: Upgrade this ebook with O’Reilly
- Preface
- 1. Introduction
- 2. The Purpose of Software
- 3. The Future
- 4. Change
- 5. Defects and Design
- 6. Simplicity
- 7. Complexity
- 8. Testing
- A. The Laws of Software Design
- B. Facts, Laws, Rules, and Definitions
- About the Author
- SPECIAL OFFER: Upgrade this ebook with O’Reilly
- Copyright
Product information
- Title: Code Simplicity
- Author(s):
- Release date: March 2012
- Publisher(s): O'Reilly Media, Inc.
- ISBN: 9781449334697
You might also like
book
Modern Software Engineering: Doing What Works to Build Better Software Faster
Improve Your Creativity, Effectiveness, and Ultimately, Your Code In Modern Software Engineering, continuous delivery pioneer David …
audiobook
Speak with Confidence
In Speak with Confidence: Overcome Self-Doubt, Communicate Clearly, and Inspire Your Audience, keynote speaker, author, and …
audiobook
Algorithms
Digital technology runs on algorithms, sets of instructions that describe how to do something efficiently. Application …
video
Full Stack Web Development Mastery Course - Novice to Expert
Full stack development refers to the development of both frontend (client-side) and backend (server-side) portions of …