In software development there are loads of "Best practices" or suggestions what to do and what not in order to come to a better result.
For most of the cases you will be better of by just folowing these suggestions and for the rest it's very handy to understand why these suggestions exist.