試験を表すクラスがあり、試験を開始/リセット/一時停止できるため、メソッドは次のようになります。
- (void)startExam;
- (void)resetExam;
- (void)pauseExam;
しかし、私が知る限り、メソッド名が名詞で終わる場合、その名詞の引数が必要です。次のようになります。
- (void)startExam:(Exam *)exam;
ただし、この場合、クラスの名前は「Exam」であるため、クラスが使用されると、オブジェクトが試験であることが人々にわかるため、次のような命名方法が適しているようです。
@interface Exam : NSObject
- (void)start;
- (void)reset;
- (void)pause;
@end
だから私は次のように使用できます:
Exam *exam = [[[Exam alloc] init] autoreleased];
[exam start];
これは次のものよりも見栄えがします:
[exam startExam];
また
[exam examStart];
しかし、これは一般的すぎるように見えます.NSObject(またはスーパークラス)に将来同じ名前のメソッドが追加される可能性があるため、危険を感じます。たとえば、Javaオブジェクトにはnotify、notifyAll、waitがあり、サブクラスはこれらを上書きしないでくださいその他の目的。これはObjective Cにも当てはまりますか?
では、この場合の最適な命名規則は何ですか?
ありがとう!