Conclusion on Patterns
Pattern was a very interesting subject to learn. I did OOP before but did not know that there are other ways of developing software like pattern oriented development. It was fun learning so many patterns, sometimes confusing. But with group discussions, class works and sometimes having to present our classwork in front of the class was very interesting. Now i know what pattern is and where it stands in the software development world.
At the beginning we all started with the general Christopher Alexander's building construction idea and then moved on to learn how it was adopted in the software world and why.
Several different patterns brought several advantages that can be used to address particular problems like avoiding class explosion, undesirable inheritance, hard coding each and every object, non extensibility. All these problems were addressed with a particular pattern and the good thing is sometimes patterns tend to look very similar and therefore understanding was not difficult at all as the differences became clear during lectures.
We finished with anti-patterns, which was also a very interesting topic. Now i understand the role of anti-pattern as well. We had to do a lot of reading but it was fun.
To summarise these are the 23 GoF patterns

Source of table: Design Patterns CD, Elements of Reusable Object-Oriented Software, By Erich Gamma et al. , Addison Wesley Longman, Inc.
So this is it, we completed patterns, a Very Big Thank You to Dr. SRI who made every effort to complete the course and answer all our questions, ask us so many questions and gave us so much trouble by making us argue with each other in the class so that we understand each and every topic.
And I thank all those who commented on my blog and good luck to everyone.