できるだけIDまたはNSSomeObject *を使用する方が良いでしょうか?私はコンパイラが明示的になっているかどうかをよりよく確認できることを知っていますが、どちらがより良い方法であるか不思議でした。(id)対Objective-C/Cocoaの(NSSomeObject *)?
例えば:
- (IBAction)someButton:(id)sender
対
- (IBAction)someButton:(NSButton *)sender.
それらのいずれかに何らかのメリットがありますか?
宣言をNSButton *のままにしておくと、別の型のオブジェクトインスタンスを渡そうとするとコンパイラが警告しますが、Objective-Cメソッドは遅延バインドされているため、適切なセレクタ(メソッド)実行時に –
実際にIBActionの引数としてselfを渡す必要はありません。これは単なる通常の引数です。ちょっと、ほとんどの場合、あなたは単に送信者としてnilを渡すことができます。 – Chuck
、またはメソッドを ' - (IBAction)someButton'と宣言します。これは大抵の場合大丈夫です。 –