Из ответа @ david72
Вам необходимо выполнить следующие действия:
collectionView:viewForSupplementaryElementOfKind
. Подробнее см. здесь
.
DLL
Основное различие между OS X и Windows состоит в том, что Windows исторически пыталась сэкономить место / память, заставляя всех использовать общий код (т.е. вы устанавливаете одну DLL, и каждый может ее использовать). Apple статически компилирует (ну, не совсем, но может быть) все несистемные библиотеки в каждое приложение. Пустая трата дискового пространства / памяти, но упрощает развертывание приложений способом и устраняет проблемы с версией.
Реестр
OS X имеет реестр, это просто плоские файлы, называемые plists вместо волшебного компонента, который в основном похож на файловую систему, за исключением тех случаев, когда это не так. Подход Apple упрощает перенос настроек с одной машины на другую, тогда как подход Windows обеспечивает более быстрое сохранение в памяти и позволяет приложениям легко «наблюдать» за ключом, не снижая производительности (т. Е. одно приложение меняет ключ, а другое мгновенно об этом узнает).
В заключение
Основной докладчик полон этого, 10.6 - это в основном тот же код, что и 10.5, который был в основном тем же кодом, что и 10.4 и другие, точно так же, как Win7 - это в основном Vista, в основном Server '03 и т. Д. . В операционной системе далеко слишком много проверенного кода, чтобы выбросить его при каждом выпуске, особенно если вы действительно хотите, чтобы приложения ваших клиентов работали.
DLL - плохие варианты библиотек, так как они не могут работать сами по себе, для их использования (автоматически) вызывается дополнительный исполняемый файл оболочки, который добавляет ненужные накладные расходы и затрудняет определение какие библиотеки действительно используются. Другой менее важный недостаток - это неспособность систем по-настоящему совместно использовать библиотеку. Системы * nix избегают этого, поскольку библиотеки существуют на верхнем уровне, работающие сами по себе или в более крупной оболочке (например, kde-init), библиотеки могут совместно использоваться любыми приложениями, что означает, что требуется только одна копия каждой библиотеки, и вы можете в любой момент с легкостью убить одну библиотеку по мере необходимости.
Реестр - отличная идея, за исключением того факта, что он используется так часто, что почти все, что вы устанавливаете, будет использовать реестр, а также поврежденный реестр и сделайте вашу операционную систему практически бесполезной, пока она не будет исправлена. Этого можно избежать в системах * nix за счет наличия нескольких разных файлов для разного содержимого, ссылки на драйверы через файл конфигурации Xorg, установленные приложения будут записаны в их собственную базу данных, а ключи или идентификационные данные часто будут записаны в каталог, а не в единый универсальный файл. Это снижает вероятность серьезного сбоя и означает, что вы, вероятно, сможете отремонтировать систему в любой момент. Если Xorg становится поврежденным, вы просто перенастраиваете его, если база данных установленных приложений становится поврежденной, вы можете отремонтировать или перестроить ее, а в случае повреждения каталога индивидуальных настроек приложения вам нужно переустановить только одно приложение (и у большинства хороших коммерческих приложений должен быть способ восстановить это все равно)
Конечно, в обеих операционных системах есть средства для использования библиотек DLL (они называются dylibs или Frameworks в OS X в зависимости от того, как они упакованы) .dylib очень похожи на библиотеки DLL - они есть динамически подключаемая библиотека, и поэтому может существовать несколько их версий. С другой стороны, фреймворки - это действительно структура каталогов. Они содержат динамически подключаемые библиотеки (потенциально несколько их версий), ресурсы, заголовки, документацию и т. Д. Динамический компоновщик в OS X автоматически выбирает правильную версию библиотеки из фреймворка для каждого исполняемого файла. Система, похоже, работает лучше, чем управление DLL в Windows, что, ну, по-прежнему, довольно беспорядочно (конечно, система Windows связана с устаревшими проблемами, которые Apple удалила при переходе на OS X). По честному, У Unix есть решение этой проблемы в течение долгого времени, а также с помощью символических ссылок для связывания dylib-файлов с их правильной версией реализации, что позволяет установить несколько версий.
Не существует эквивалента реестра Windows для OS X. Это и хорошо и плохо. Хорошая сторона заключается в том, что гораздо сложнее испортить всю систему OS X с помощью ошибки реестра. OS X вместо этого хранит конфигурацию во многих отдельных файлах, обычно по одному или нескольким для каждого приложения, пользователя и т. Д. Эти файлы обычно представляют собой файлы в формате plist (XML-схемы, представляющие словари, массивы и примитивные типы). Плохая сторона состоит в том, что, сохранив это наследие Unix-y, OS X не имеет тех же инструментов сверхадминистратора, которые могут перетягивать реестр и делать всевозможные безумные вещи.
а также использование символических ссылок для связывания дилибов с их правильной версией реализации, позволяющей установить несколько версий.Не существует эквивалента реестра Windows для OS X. Это и хорошо и плохо. Хорошая сторона заключается в том, что гораздо сложнее испортить всю систему OS X с помощью ошибки реестра. OS X вместо этого хранит конфигурацию во многих отдельных файлах, обычно по одному или нескольким для каждого приложения, пользователя и т. Д. Эти файлы обычно представляют собой файлы в формате plist (XML-схемы, представляющие словари, массивы и примитивные типы). Плохая сторона состоит в том, что, сохранив это наследие Unix-y, OS X не имеет тех же инструментов сверхадминистратора, которые могут перетягивать реестр и делать всевозможные безумные вещи.
а также использование символических ссылок для связывания дилибов с их правильной версией реализации, позволяющей установить несколько версий.Не существует эквивалента реестра Windows для OS X. Это и хорошо и плохо. Хорошая сторона заключается в том, что гораздо сложнее испортить всю систему OS X с помощью ошибки реестра. OS X вместо этого хранит конфигурацию во многих отдельных файлах, обычно по одному или нескольким для каждого приложения, пользователя и т. Д. Эти файлы обычно представляют собой файлы в формате plist (XML-схемы, представляющие словари, массивы и примитивные типы). Плохая сторона состоит в том, что, сохранив это наследие Unix-y, OS X не имеет тех же инструментов сверхадминистратора, которые могут перетягивать реестр и делать всевозможные безумные вещи.
Не существует эквивалента реестра Windows для OS X. Это и хорошо и плохо. Хорошая сторона заключается в том, что гораздо сложнее испортить всю систему OS X с помощью ошибки реестра. OS X вместо этого хранит конфигурацию во многих отдельных файлах, обычно по одному или нескольким для каждого приложения, пользователя и т. Д. Эти файлы обычно представляют собой файлы в формате plist (XML-схемы, представляющие словари, массивы и примитивные типы). Плохая сторона состоит в том, что, сохранив это наследие Unix-y, OS X не имеет тех же инструментов сверхадминистратора, которые могут перетягивать реестр и делать всевозможные безумные вещи.
Не существует эквивалента реестра Windows для OS X. Это и хорошо и плохо. Хорошая сторона заключается в том, что гораздо сложнее испортить всю систему OS X с помощью ошибки реестра. OS X вместо этого хранит конфигурацию во многих отдельных файлах, обычно по одному или нескольким для каждого приложения, пользователя и т. Д. Эти файлы обычно представляют собой файлы в формате plist (XML-схемы, представляющие словари, массивы и примитивные типы). Плохая сторона состоит в том, что, сохранив это наследие Unix-y, OS X не имеет тех же инструментов сверхадминистратора, которые могут перетягивать реестр и делать всевозможные безумные вещи.
Эти файлы обычно представляют собой файлы в формате plist (XML-схемы, представляющие словари, массивы и примитивные типы). Плохая сторона состоит в том, что, сохранив это наследие Unix-y, OS X не имеет тех же инструментов сверхадминистратора, которые могут перетягивать реестр и делать всевозможные безумные вещи. Эти файлы обычно представляют собой файлы в формате plist (XML-схемы, представляющие словари, массивы и примитивные типы). Плохая сторона состоит в том, что, сохранив это наследие Unix-y, OS X не имеет тех же инструментов сверхадминистратора, которые могут перетягивать реестр и делать всевозможные безумные вещи.