Проектирование и рефакторинг

Реорганизация кода