Était-ce utile?

La solution

Autres conseils

Dans Objective-C toutes les méthodes sont semblables aux méthodes de virtual de C.

Dans Objective-C Modèle Motif méthode est utilisée lorsque vous avez un squelette d'un algorithme, mais il peut être mis en œuvre de différentes façons. méthode de modèle définit les étapes pour exécuter un algorithme et il peut fournir l'implémentation par défaut qui pourrait être commune pour tout ou partie des sous-classes.

Prenons un exemple, mais d'abord Regardez l'image

 @interface Worker : NSObject

- (void) doDailyRoutine;
- (void) doWork; // Abstract
- (void) comeBackHome; 
- (void) getsomeSleep;
@end

@implementation Worker

- (void) doDailyRoutine {
  [self doWork];
  [self comeBackHome];
  [self getsomeSleep];
  }

 - (void) doWork { [self doesNotRecognizeSelector:_cmd]; }
 - (void) comeBackHome { [self doesNotRecognizeSelector:_cmd]; }
 - (void) getsomeSleep { [self doesNotRecognizeSelector:_cmd]; }
 // [self doesNotRecognizeSelector:_cmd] it will force to call the subclass          Implementation
@end

@interface Plumber : Worker
@end

@implementation Plumber

- (void) doWork { NSLog(@“Plumber Work"); }

@end
@interface Electrician : Worker

@end

@implementation Electrician

- (void) doWork { NSLog(@“Electrician Work"); }

@end
@interface Cleaner : Worker

@end

@implementation Cleaner

- (void) doWork { NSLog(@“Cleaner Work"); }

@end
  

Dans cet exemple DoWork () est une fonction abstraite qui devrait être mis en œuvre par toutes les sous-classes et ce modèle est largement utilisé dans les frameworks Cocoa.

Hope il vous aidera à comprendre le « modèle méthode Pattern ».

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top