Приложение на основе документов с Core Data против простого приложения Core Data? - PullRequest
9 голосов
/ 31 октября 2009

Я пытаюсь понять ключевые различия между этими двумя типами шаблонов приложений Core Data.

Насколько я понимаю, с помощью приложения для работы с основными данными на основе документов вы получаете доступ к экземплярам NSDocument и множеству поведений на основе документов бесплатно (диалоги сохранения, отмена и т. Д.).

Предполагая, что я хочу создать приложение, которое больше основано на "Проекте" и не обязательно ориентировано на создание отдельных сохраняемых документов, следует ли мне по-прежнему использовать Базовые данные с документами?

Если говорить более конкретно, я пытаюсь создать простое приложение CMS с использованием основных данных, которое выводит HTML-страницы структурированным образом. Идея приложения была бы сфокусирована на «сайтах», которые на самом деле являются проектами, а не отдельными документами. Проекты содержат консолидированную модель для различных сообщений, страниц, содержимого боковой панели и любого содержимого, которое может понадобиться для перехода на веб-сайт. Но приложение не сохраняет отдельные страницы как документы в традиционном смысле. Мне нужна единая модель всех данных проекта и я предоставляю функциональные возможности экспорта, в которых вся модель приложения будет выражаться в виде набора HTML-документов в указанной папке проекта.

Это и учебное упражнение, и то, что я хочу попробовать для себя.

Какие-нибудь советы по конкретной документации читать? В частности, информация о приложениях какао на основе "Project", а также полезные образцы и учебные пособия.

Возможно, что модель данных CMS может храниться в одном документе Core Data, но это не обязательно кажется правильным с архитектурной точки зрения.

Ответы [ 2 ]

4 голосов
/ 31 октября 2009

Я вижу разницу в том, что приложение на основе документов позволяет пользователю хранить несколько наборов информации отдельно.

Лучший пример с точки зрения функциональности - это iTunes. Apple не позволяет иметь несколько библиотек, это все или ничего, одна «база данных» для всего приложения.

Простое приложение на основе документов будет что-то вроде TextEdit.

Я не думаю, что то, что вы предлагаете, слишком отличается от одного приложения, основанного на документе, - вам просто нужно помнить, что создаваемые вами веб-страницы являются ВЫХОДНЫМИ, а не частью проекта. Точно так же, как вы не думаете, что печатный вывод из TextEdit является частью документа. Или объектные / исполняемые файлы в XCode , являющиеся частью проекта.

4 голосов
/ 31 октября 2009

Проект может быть документом, и документ не обязательно должен быть одним файлом. Прочитайте документацию, связанную с NSDocument, и решите, предлагает ли она какие-либо функции, которые могут вас заинтересовать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...