Почему Apple использует файлы .plist? - PullRequest
1 голос
/ 07 ноября 2011

Почему Apple использует файлы .plist?

Windows использует файлы .ini, которые могут быть менее гибкими, но занимают меньше места по той же причине, по которой JSon занимает меньше места, чем XML.

Они могли бы даже использовать JSON для своей конфигурации, это по крайней мере так же легко проанализировать, поддерживает нужные им типы значений (dict и т. Д.) И занимает наименьшее количество места.

Ответы [ 3 ]

2 голосов
/ 07 ноября 2011

Поскольку NeXTSTEP использовал их, Apple применила и их.

Список свойств вики-страницы :

Под NeXTSTEP списки свойств были разработаны, чтобы быть удобочитаемыми и отредактировано вручную, сериализовано в ASCII в синтаксисе, похожем на язык программирования.

NeXTSTEP использовал один формат для представления списка свойств, а последующие платформы GNUstep и Mac OS X представили разные форматы.

Хотя Mac OS X также может считывать формат NeXTSTEP, Apple оставляет его в стороне в пользу двух новых собственных форматов.

В Mac OS X 10.0 NeXTSTEP формат устарел, и был введен новый формат XML, с Публичный DTD определяется Apple. Формат XML поддерживает не ASCII символы и хранение NSValue объектов (которые, в отличие от ASCII GNUstep формат списка свойств, формат списка свойств Apple ASCII не служба поддержки). Поскольку XML-файлы, однако, не являются самыми экономичными средства хранения, Mac OS X 10.2 представила новый формат, где свойство файлы списка хранятся в виде двоичных файлов. Начиная с Mac OS X 10.4, это формат по умолчанию для файлов настроек.

2 голосов
/ 08 ноября 2011

Оригинальный формат списка свойств , найденный в NeXTSTEP, очень похож на JSON, но с немного другим синтаксисом. Когда NeXTSTEP стал Mac OS X, этот формат был заменен версией XML, которую вы видите сегодня. В новом формате было несколько улучшений по сравнению со старым, о котором вы можете прочитать в этой ссылке.

Списки свойств могут содержать несколько типов данных, которые JSON (и файлы INI) не могут: Числа, указанные как действительные числа (с плавающей запятой) или целые числа, даты и двоичные данные в кодировке base64. Кроме того, JSON не был публично документирован до того момента, как Mac OS X была выпущена.

Mac OS 10.2 и новее включают двоичный формат plist, который намного более экономичен, чем XML, и файлы plist могут быть преобразованы без потерь между ними.

1 голос
/ 07 ноября 2011

Я полагаю, что это было одной из вещей, оставшихся после дней NeXTSTEP ... а почему они предпочитают его использовать, возможно, потому что они могут.; -)

...