Template method
Factory method
EX4-2
Singleton
EX5-1
EX5-2