Software Principles

DRY - Don’t repeat yourself

Keep you code DRY means reducing duplicate code by using abstraction. The opposite of DRY code is WET, which means “Write everything twice”.

Sources

https://deviq.com/don-t-repeat-yourself/

YAGNI - You aren’t gonna need it

Only implement things you actually need and not things you might need in the future. This helps with staying on track with completing tasks that are necessariy, instead of going down a rabbit hole trying to implement things you won’t even need.

Sources

https://deviq.com/yagni/

KISS - Keep it simple stupid

Make sure the programs you create are kept as simple as possible without any unnecessary complications.

Sources

https://en.wikipedia.org/wiki/KISS_principle

SoC - Separation of Concerns

Separate a program into different modules that concerns themselves of only one thing. A program which follows SoC is considered a modular program. Separate business logic from data transportation logic, etc.

Sources

https://en.wikipedia.org/wiki/Separation_of_concerns

SOLID

An acronym of five principles to follow in Object-Oriented Programming to create clean and maintainable code.

SR - Single Responsibity

A class or module should only be responsible for one thing. Do not overstuff a class or module with functionality that should be placed into a separate module.

Sources

https://deviq.com/single-responsibility-principle/