Good software development results in simple code. Unfortunately, much of the code existing in the world today is far too complex. This concise guide helps you understand the fundamentals of good software development through universal 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.
- Learn what differentiates great programmers from poor programmers
- Understand the ultimate purpose of software and the goals of good software design
- Determine the correctness of your decisions now and in the future
- Examine real-world examples that demonstrate how a system changes over time
- Learn to 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
- Understand why to write tests and what tests to write