I'm using the below code in my app :
@interface OMNController : NSObject
{
IBOutlet NSSearchField *filterFieldMonitor;
OMNMonitorTableView *monitorTableView;
}
@implementation OMNController
- (id) init
{
monitorTableView = [[OMNMonitorTableView alloc] init];
NSString *l_filter = [filterFieldMonitor stringValue];
[monitorTableView setFilter:l_filter];
}
....
@end
In this code 1 example, No need to use @property @synthesize and it work fine.
For the best practice, should I have to use accessor / ivar :
@interface OMNController : NSObject
{
IBOutlet NSSearchField *_filterFieldMonitor;
OMNMonitorTableView *_monitorTableView;
}
@property (readwrite, retain) OMNMonitorTableView *monitorTableView;
@property (assign) IBOutlet NSSearchField *filterFieldMonitor;;
@implementation OMNController
@synthesize monitorTableView = _monitorTableView;
@synthesize filterFieldMonitor = _filterFieldMonitor;
- (id) init
{
self.monitorTableView = [[OMNMonitorTableView alloc] init];
NSString *l_filter = [self.filterFieldMonitor stringValue];
[self.monitorTableView setFilter:l_filter];
}
....
@end
-
@interface OMNController : NSObject
{
IBOutlet NSSearchField *filterFieldMonitor;
OMNMonitorTableView *monitorTableView;
}
@property (readwrite, retain) OMNMonitorTableView *monitorTableView;
@property (assign) IBOutlet NSSearchField *filterFieldMonitor;;
@implementation OMNController
@synthesize monitorTableView;
@synthesize filterFieldMonitor;
- (id) init
{
monitorTableView = [[OMNMonitorTableView alloc] init];
NSString *l_filter = [filterFieldMonitor stringValue];
[monitorTableView setFilter:l_filter];
}
....
@end
What is the best method, Code 1 or Code 2 or Code 3?