delegate とは何か(3)
ViewController.m だけで記述できるけれども delegate を使ったほうがよいと書きました。
それはなぜでしょう。
理解を促進するために、ViewController.m に記述するとどうなるか試してみます。
- (void) touchesBegan:(NSSet*) touches withEvent:(UIEvent*) event
{
UITouch* touch = [touches anyObject];
if ( [touch.displayNumber isEqual: @"1"] )
{
some codes...
}
else if ( [touch.displayNumber isEqual: @"2"] )
{
some codes...
}
else if ... 以下続く...
}
以上のようになります。
画面上にある丸であればまだよいのですが、丸は削除したり追加したりできるので、あらかじめ記述できないものも出てきます。
そのような理由により、書きようがないので delegate を使うということになります。
この説明は明快だと思います。
これとは別の視点で、ViewController.m に書かない方がよいとの判断もあります。
続く。