Ответ 1
С двоичным атрибутом вы напрямую читаете и записываете экземпляры NSData
.
С помощью преобразуемого атрибута вы читаете и записываете экземпляры любого класса, которые могут быть преобразованы в и из NSData
. Фактическое хранилище данных совпадает с бинарным атрибутом, но Core Data использует NSValueTransformer
для преобразования в/из NSData
при необходимости.
Например, скажем, ваш управляемый объект имеет атрибут изображения, где было бы удобно читать и писать UIImage
напрямую. Кроме того, UIImage
не может быть сохранено в Core Data. Но UIImage
можно преобразовать в и из NSData
. Итак, если вы использовали преобразованный атрибут, вы могли читать и писать UIImage
, сохраняя при этом NSData
в хранилище данных.