Как понять/освоить паттерны проектирования?
Может я чайник, и программирование это не моё?
Если вы добрались до этой темы, то программирование это ваше, просто подошли к проблеме не с той стороны)
Паттерн - это шаблон, отношение классов, решающий определённую задачу.
Почитайте Паттерны проектирования .NET. Большинство популярных паттернов подробно разобраны. (Подходят и для Java)
Просто выучи и все.
На практике возможно подвернется случай применить.
Ресурс для изучения - https://metanit.com/sharp/patterns/, на нем же и хорошее введение - зачем они, почему, куда и где.
Оно пойдет проще когда есть опыт на который прочитанное сможет быть спроецировано, вроде - "а, вот тут можно было это использовать, а тут другое, блин, как же удобно можно сделать такую логику".