Про паттерны и что почитать на эту тему
Сами паттерны - это общие способы для решения типовых задач в разработке на уровне кода.
Все их, конечно, помнить наизусть не надо, каждый день встречаемся с ними: с одними - чаще, с другими - реже.
Бывают архитектурные (MVC, MVVM и т.д.), некоторые идиомы (общие способы решения, присущие какому-то языку) и популярные 3 категории паттернов проектирования: поведенческие, структурные и порождающие - о них далее.
Если кто не погружался или хочет освежить знания в этой теме, то welcome, вот список полезных ресурсов:
1) https://refactoring.guru - сайт с понятным объяснением паттернов с примерами (на псевдокоде и ряде популярных языков). Также, есть материал по рефакторингу кода. Очень рекомендую.
2) Книга серии Head First по паттернам проектирования - это тоже максимально интерактивное и приятное чтиво с объяснениями на пальцах.
3) Книга GOF и банда четырех - классика жанра, но более сухое изложение.