updates

Great Lesson
1. Why we need object oriented programming
2. How to Design it: with some idioms