ビューとロジックを分離した