問題タブ [nscopying]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
swift - Codable と NSManagedObject を Swift で同時に実装する
私は雇用主のために取り組んでいる注文処理アプリケーションを持っています。このアプリケーションは、もともと API から注文、製品、クライアントに関するすべてのデータを動的に取得するように設計されていました。そのため、すべてのオブジェクトと、それらのオブジェクトを処理するすべての関数は、Codable に準拠した構造体を利用して、「値渡し」を想定してアプリ内でやり取りしています。
これらのオブジェクトのほとんどすべてをキャッシュする必要があります。CoreData を入力します。
1 つのオブジェクトに対して 2 つのファイル (1 つは Codable 構造体として、もう 1 つは NSManagedObject クラスとして) を作成してから、それらを別のオブジェクトに変換する方法を見つけようとするつもりはありません。したがって、両方を同じファイルに実装したいのですが、「値渡し」コードを何とか使用できるようにしています。
おそらくこれは不可能です。
編集
すべてのデータ構造をゼロから再構築するよりも少し簡単なものを探しています。Codable 構造体を NSManagedObject クラスと互換性を持たせるには、いくつかの変更を行う必要があることを理解しています。何百ものプロパティがあるため、すべてのプロパティを手動で入力する必要があるカスタム初期化子を作成することは避けたいと思います。
objective-c - NSMutableDictionary コンテンツ オブジェクトは NSCopying プロトコルに準拠しています
私はobjective-c、macOSを使用しています。
このように宣言されたオプション辞書があります
ここで、辞書を含むオブジェクトを、オプションを含めて copyWithZone でコピーする必要があります。
辞書で「コピー」を呼び出すことができます。しかし、ディクショナリに追加されたすべてのオブジェクト (基本的にはあらゆる種類のオブジェクトである可能性があります) が NSCopying プロトコルに準拠していることを確認するにはどうすればよいでしょうか?
何かのようなもの
プロパティ宣言に何かを追加できますか (まだわかりません)、または NSDictionary をサブクラス化する必要がありますか (これはおそらく避けたいと思います)
よろしく
パット