Code Simplicity Takeaways
Code Simplicity is a good book if you are wondering how to simplify a new or existing software so it is more maintainable and easier to develop. In a nutshell, only-as-needed design and incremental development are the two foundations of simplicity. Only-as-needed design By designing based on what is known now , the design can be created as simple as it needed to be. Simple design where components are broken down to its minimal requirement also tends to be simpler to extend, change, fix, or remove from a system. Simple design also eases new programmers into the system and speeds up their time to start contributing. Simple design might come from re-using existing solutions that might only fit most of the requirements rather than creating new ones that fit all requirements. When a system is using a maintained library or technology, it outsources a complex part that is not part of its purpose. However, be careful of libraries or technologies that lock the system into their environment t