IOS CS193p – 为什么IBAction连接拖到.m文件而不是.h?

我注意到,在Stanford CS193p课程的计算器演示中,IBOutlet连接被从标签拖放到头文件。 但是,IBAction连接直接在.m文件中创build。 我尝试阅读文档并在Google上search,但无法find背后的原因。

我会争辩说,IBAction digitPressed方法也应该在头文件中声明(不应该是接口的一部分?)。

我显然是相当新的目标C(主要在Java中工作),所以我相信我缺less一些基本的东西。

谁能解释一下吗?

在类的头文件中声明事物使其成为公共接口的一部分。 这包括在视图控制器上定义的sockets和动作。

是否应该公开是一个devise问题。 一个好的原则是:只有这样。 通过ViewControllers的出口和行动,往往不需要 – 因此不应该公开。

通常发生的是,你首先对公共接口应该包含什么进行一些猜测,然后(如果你是一个整洁的开发人员),当实现成熟时再次看看,并删除任何不重要的东西。