Design Patterns & Refactoring

Hello, world!
I'm SourceMaking. I will tell you a lot of stories about good software architecture and teach you how to create it with design patterns. I will teach you how to smell a bad code and improve it with refactoring.
We can start from the very beginning or you can pick a topic of interest below.


Design Patterns
Patterns are higher-order designs, which occur repeatedly in object-oriented design. They have been formalized, and are generally considered a good development practice.


Refactoring
Refactoring is a disciplined technique for restructuring an existing body of code, altering its internal structure without changing its external behavior.

UML
Unified Modeling Language makes it possible to describe systems with words and pictures. Especially notable use case diagrams with their stick figures or the widely used class diagrams.