6

Stanford CS193p コースの電卓デモで、IBOutlet 接続がラベルからヘッダー ファイルにドラッグされていることに気付きました。ただし、IBAction 接続は .m ファイルで直接作成されました。ドキュメントを読んでGoogleで検索しましたが、この背後にある理由を見つけることができませんでした。

IBAction digitPressed メソッドもヘッダー ファイルで宣言する必要があると私は主張します (インターフェイスの一部であるべきではありませんか?)。

私は明らかにObjective Cにかなり慣れていないため(ほとんどJavaで作業していました)、基本的なものが欠けていると確信しています。

誰でも説明できますか?

4

1 に答える 1

8

クラスのヘッダー ファイルで何かを宣言すると、それらはパブリック インターフェイスの一部になります。これには、View Controller で定義されたアウトレットとアクションが含まれます。

何かを公開する必要があるかどうかは、設計上の問題です。優れたプリンシパルは、そうでなければならない場合のみです。ViewControllers のアウトレットとアクションでは、多くの場合、公開する必要はありません (したがって公開すべきではありません)。

一般に、パブリック インターフェイスに何を含める必要があるかを前もって推測し、(きちんとした開発者であれば) 実装が成熟したらもう一度見直して、重要でないものを削除します。

于 2012-04-04T02:47:23.430 に答える