Software Design
What is design?¶
- Design of software is [[source code]] itself
-
[[Architecture]] is the shape which code takes
-
The [[source code]] specifies how software works
- Final product is a running program
Building Software¶
- Big design upfront is very expensive in [[software development]]
- No guarantee that we take into account all the possible [[requirements]]
- Requirements tent to change very quickly
- Keep the design as clean as you can
There can be multiple Design smells, you can deal with them using SOLID Principles.