Coding Philosophy
Coding Philosophy/Goals/Mindset: Achieve business and technical requirements Agility means these may change as the environment changes, or coding realities drive changes upstream We must adapt to these changes Consider those (including yourself) who will be reading/modifying the code : Extensibility How easily can new features be added? Readability Includes formatting, proper ID naming, and good quality comments--not too many Maintainability How easy will it be to make changes to this code? Scalability What about growth? For example, another server, or database may be required Efficiency Especially for larger projects, it is important to minimize resource consumption Project velocity While subordinate to the above and within the bounds of efficiency completing quickly/on-time matters There are many techniques and guidelines for achieving the above such as avoiding magic numbers (use constants) and keeping methods short and single purpose. ...