NSCoding Protocol Reference

最終更新:

匿名ユーザー

- view
だれでも歓迎! 編集

トップ> リファレンス > データ管理:ファイル管理 > NSCoding プロトコルリファレンス

NSCoding プロトコルリファレンス 翻訳元


このページの最終更新:2010-02-10
ADCの最終更新:2009-11-17


準拠しているクラス 様々なCocoaのクラス
フレームワーク /System/Library/Frameworks/Foundation.framework
使用可能な環境 Mac OS X v10.0以降
コンパニオンガイド Archives and Serializations Programming Guide for Cocoa
宣言ファイル NSObject.h
サンプルコード iSpend
QTQuartzPlayer
SourceView
Squiggles
With and Without Bindings

概観(Overview)


 NSCodingプロトコルではインスタンスオブジェクトのエンコードとデコードをできるようにする為にクラスが実装する必要のある二つのメソッドを宣言しています。この機能はアーカイブ化(オブジェクトや構造体がディスクにストアされる場所)とディストリビューション(オブジェクトが異なるアドレス空間でコピーされる場所)の基礎を提供しています。
 オブジェクト指向の設計方針を保つ為に、エンコードまたはデコードされたオブジェクトはそのインスタンス変数のエンコーディングとデコーディングをする責任があります。コーダはオブジェクトにencodeWithCoder:メソッドやinitWithCoder:メソッドを呼び出すことによってエンコード、デコードするよう伝えます。encodeWithCoder:メソッドは与えられたコーダにインスタンス変数をエンコードするよう指示します。このメソッドは一つのオブジェクトで何度でも呼び出すことができます。initWithCoder:メソッドは与えられたコーダからオブジェクト自身を初期化するよう指示します。そのため、このメソッドは他の初期化メソッドに取って代わり、一つのオブジェクトに一度ずつしか呼び出されません。コーディングすべきオブジェクトは全てNSCodingプロトコルに準拠し、これらのメソッドを実装しなくてはなりません。
 コーダがサポートしている、アーカイブ化可能な型について熟考することが重要です。Mac OS X v10.2以降では、キー値アーカイブ化が推奨されています。詳細はArchives and Serializations Programming Guide for Cocoa?を参照してください。

このクラスでできること(Tasks)


コーダでの初期化(Initializing with a Coder)

    - initWithCoder: required method

コーダでのエンコーディング(Encoding with a Coder)


インスタンスメソッド


encodeWithCoder:

与えられたアーカイバを使ってエンコードします。
 - (void)encodeWithCoder:(NSCoder *)encoder
パラメータ
  • encoder
    • アーカイバオブジェクト。
使用可能な環境
  • Mac OS X v10.0以降
宣言ファイル
  • NSObject.h

initWithCoder:

与えられたアンアーカイバのデータから初期化されたオブジェクトを返します。
 - (id)initWithCoder:(NSCoder *)decoder
パラメータ
  • decoder
    • アンアーカイバオブジェクト
戻り値
  • decoderのデータで初期化されたself
使用可能な環境
  • Mac OS X v10.0以降
サンプルコード
宣言ファイル
  • NSObject.h



+ タグ編集
  • タグ:
  • Cocoa
  • リファレンス
  • Data Management
  • File Management
  • 完成

このサイトはreCAPTCHAによって保護されており、Googleの プライバシーポリシー利用規約 が適用されます。

目安箱バナー