类中经常容易填满各种方法,而这些方法的代码则全部堆在一个巨大的实现文件里。有时这么做是合理的,因为即便通过重构把这个类打散,效果也不会更好。在此情况下,可以通过Objective-C的“分类”机制,把类代码按逻辑划入几个分区中,这对开发与调试都有好处。
比如说,我们把个人信息建模为类。那么这个类就可能包含下面几个方法:
#import <Foundatino/Foundation.h>
@interface EOCPerson : NSObject
@property (nonatomic,copy,readonly) NSString *firstName;
@property (nonatomic,copy,readonly) NSString *lastName;
@property (nonatomic,strong,readonly) NSArray *friends;
- (id)initWithFristName:(NSString *)firstName andLastName:(NSString *)lastName;
/* Friendship methods */
- (void)addFriend:(EOCPerson *)person;
- (void)removeFriend:(EOCPerson *)person;
- (void)isFriendsWith:(EOCPerson *)person;
/* Work methods */
- (void)performDaysWork;
- (void)takeVacationFromWork;
/* Play methods */
- (void)goToTheCinema;
- (void)goToSportsGame;
@end
在实现该类时,所以方法的代码可能会写在一个大文件里。如果还向类中继续添加方法的话,那么源代码文件就会越来越大,变得难与管理。
网友评论