A class extension is the best place if you do not want to publicly publish this publication. Your .h should be neat and clean and should contain only those methods or properties that are publicly available (available to other programmers). This way you will not confuse your teammate without having unnecessary ivars and slowing down methods in the .h file
It's all about managing code and reducing confusion, otherwise there are no private methods / properties in Objective-C
Also, if you check any apple sample, they will follow the same pattern. e.g. LoadingStatus.m has code
#import "LoadingStatus.h" @interface LoadingStatus () @property (nonatomic, strong) UIActivityIndicatorView *progress; @property (nonatomic, strong) UILabel *loadingLabel; @end
source share