1日30分英語

習慣化するために

P45-60 Prototype

  • パターンで使うProtocolでは

Mark.h

@Protocol Mark <NSObject>
...
- (id) copy;
...
@end

で、実際のMarkProtocolを採用するクラス(Vertex)は

Vertex.h

#import "Mark.h"

@interface Vertex : NSObject <Mark, NSCopying>
...
- (id) copyWithZone:(NSZone *)zone;
...
@end

とする。
VertexをPrototypeパターンのクラスとして使える。

  • Shallow Copying vs. Deep copying
    • コピーしたオブジェクトの参照先が同じなのがShallow, 参照先も複製して違う場所に置くのがDeep。

Pro Objective-C Design Patterns for iOS

Pro Objective-C Design Patterns for iOS