design patterns in javascript

3 4 5 6 7