大分前にAndroidで一度作ったActivityに全てを記述した電卓アプリを、Model, View, Controllerの3つのクラスに分解したことがありました。ActivityがControllerです。
その時はこれで良いと思ったのですが、考えて見ればActivityは本質的にControllerとViewを兼ねた感じになっており、MVCもModelを分けるのは当然だがControllerとViewは分けない流儀もあるらしいので、そのようにクラス分けを変更してみました。
つまり独立したViewクラスに入れたUI画面を書き換えるメソッドをActivityに合体させたのです。
やってみてやはりこの方が自然で良いと思います。以前のように無理やりに分けた感がなくなりました。
その時はこれで良いと思ったのですが、考えて見ればActivityは本質的にControllerとViewを兼ねた感じになっており、MVCもModelを分けるのは当然だがControllerとViewは分けない流儀もあるらしいので、そのようにクラス分けを変更してみました。
つまり独立したViewクラスに入れたUI画面を書き換えるメソッドをActivityに合体させたのです。
やってみてやはりこの方が自然で良いと思います。以前のように無理やりに分けた感がなくなりました。