Refactoring

fist Refactoring
Refactoring2

template method pattern