Ссылку на репозиторий вам уже привели.
Вообще стоит почитать оригинальную книгу. Хотя и на википедии информации предостаточно в сжатом виде.
Если без лишней воды, можно еще послушать
лекции Сергея Немчинского (там помимо GoF рассказывается в принципе про основы ООП, GRASP и т.д. Что вобщем-то логично ибо без основ понять почему так а не иначе сложно и все сведется к простому заучиванию. и еще несколько лекций по рефакторингу).
Ну и еще рекомендую почитать/посмотреть дяду Боба и подчерпнуть там чего о SOLID.