For me the best way to learn design patterns were:
1) Do small changes in big codebase (you can do contributions in github)
2) Get code reviewed by more experienced people
In that case you will start to realize that having some specific design patterns make not only your life but all other developer's easier.
In that case you will start to realize that having some specific design patterns make not only your life but all other developer's easier.