NSCoding
E820430
NSCoding is an Objective-C protocol in Apple’s frameworks that defines methods for encoding and decoding objects so they can be serialized and later reconstructed.
Statements (47)
| Predicate | Object |
|---|---|
| instanceOf |
Objective-C protocol
ⓘ
serialization protocol ⓘ |
| availableOnPlatform |
iOS
NERFINISHED
ⓘ
iPadOS NERFINISHED ⓘ macOS NERFINISHED ⓘ tvOS NERFINISHED ⓘ watchOS NERFINISHED ⓘ |
| backwardCompatibility | supports older archive formats ⓘ |
| belongsToFrameworkFamily | Foundation framework NERFINISHED ⓘ |
| decodingAbstraction | NSCoder ⓘ |
| definedInLanguage | Objective-C NERFINISHED ⓘ |
| designPattern | coder pattern ⓘ |
| documentationURL | https://developer.apple.com/documentation/foundation/nscoding ⓘ |
| encodingAbstraction | NSCoder ⓘ |
| forwardCompatibility | can ignore unknown keys when decoding ⓘ |
| frameworkVendor | Apple Inc. NERFINISHED ⓘ |
| methodRequirement |
-encodeWithCoder:
ⓘ
-initWithCoder: ⓘ |
| partOfEcosystem |
Cocoa
NERFINISHED
ⓘ
Cocoa Touch NERFINISHED ⓘ |
| primaryPurpose |
object deserialization
ⓘ
object serialization ⓘ |
| recommendedUsage | use NSSecureCoding when possible ⓘ |
| relatedTo |
NSCoder
NERFINISHED
ⓘ
NSKeyedArchiver NERFINISHED ⓘ NSKeyedUnarchiver NERFINISHED ⓘ NSSecureCoding NERFINISHED ⓘ |
| requiresConformance | NSObject subclasses (typical) ⓘ |
| requiresImplementationDetail |
decode and initialize object state in -initWithCoder:
ⓘ
encode all properties needed to reconstruct the object ⓘ |
| securityCharacteristic | not secure against object substitution attacks ⓘ |
| serializationFormat |
keyed archiving
ⓘ
unkeyed archiving (legacy) ⓘ |
| supersededBy | NSSecureCoding (for secure archives) ⓘ |
| supportsOperation |
decoding objects
ⓘ
encoding objects ⓘ |
| typicalUseCase |
document-based app data
ⓘ
interface state restoration ⓘ model object persistence ⓘ user preferences archiving ⓘ |
| usedFor |
archiving objects
ⓘ
backward-compatible data storage ⓘ interprocess data transfer ⓘ persisting object graphs ⓘ saving application state ⓘ unarchiving objects ⓘ |
| usedInLanguage | Swift NERFINISHED ⓘ |
Referenced by (2)
Full triples — surface form annotated when it differs from this entity's canonical label.