Объявить свойства в .h интерфейсе или в расширении .m файла?
В Objective-C лучше всего:
Объявите объекты, такие как кнопки в .h, а затем синтезируйте в .m
.h
@interface SomeViewController : UIViewController
@property (strong, nonatomic) UIButton *someButton;
@end
.m
@implementation SomeViewController
@synthesize someButton = _someButton;
@end
или объявить их как ивары в .m
@interface SomeViewController ()
@property (strong, nonatomic) UIButton *someButton;
@end
Я заметил, что во многих кодах Apple, в частности, в примере кода Breadcrumbs, многие их свойства объявлены в интерфейсе. Есть ли разница между ними? Я также заметил, что когда свойства объявлены в@interface
они автоматически синтезируются с префиксом подчеркивания, что делаетsomeButton = _someButton
синтез бесполезен.