Comments 12
Я в таких случаях пишу «пишу» программу для десктопа, которая позволяет заполнять и менять файлы моего iPhone приложения. Делается это без единой строчки кода:
1. Создаем новый проект и выбираем галочки «Create document-based application», «Use Core Data for storage»
2. Копируем туда нашу Core Data Model
3. Открываем .xib документа и бросаем на окно контрол Core Data Entity (возможно несколько, зависит от задачи)
4. Галочками отмечаем, какие свойства объектов хотим изменять.
5. Компилим и запускаем
Куда более проще и более удобный способ, for free получаем поиск по всем данным. На Core Data + Cocoa Bindings можно писать куда более сложные программы практически без кода, но об этом долго рассказывать.
1. Создаем новый проект и выбираем галочки «Create document-based application», «Use Core Data for storage»
2. Копируем туда нашу Core Data Model
3. Открываем .xib документа и бросаем на окно контрол Core Data Entity (возможно несколько, зависит от задачи)
4. Галочками отмечаем, какие свойства объектов хотим изменять.
5. Компилим и запускаем
Куда более проще и более удобный способ, for free получаем поиск по всем данным. На Core Data + Cocoa Bindings можно писать куда более сложные программы практически без кода, но об этом долго рассказывать.
спасибо за комментарий
описанный вами способ эффективно можно использовать лишь при небольшом количестве данных — не будете ведь забивать руками тысячи сущностей.
хотя посмотреть в этом направлении стоит — если сделать десктоп приложение с загрузкой данных из внешнего источника. но тут я не уверен какой вариант будет быстрее написать:) нужно будет смотреть по задаче.
описанный вами способ эффективно можно использовать лишь при небольшом количестве данных — не будете ведь забивать руками тысячи сущностей.
хотя посмотреть в этом направлении стоит — если сделать десктоп приложение с загрузкой данных из внешнего источника. но тут я не уверен какой вариант будет быстрее написать:) нужно будет смотреть по задаче.
Ну если данные кто-то уже затащил в XML, то естественно лучше уже их парсить, а не забивать руками. Но я не понял откуда они появились у Вас в XML и почему уж тогда сразу не в формате Core Data.
простой пример: веб-сервис
В таком случае конечно же подходит, но тогда статья больше относится к тому как пропарсить XML. В реальных условиях предзаполнение базы это как раз таки набивание ее ручками на стороне заказчика.
про то как парсить XML тут буквально полслова:) если уже есть какое-то хранилище данных, где есть вся необходимая приложению информация, то лучше потратить час-полтора времени и автоматизировать процесс, чем нагружать клиента дополнительной работой. зависит, конечно, от клиента, но наши клиенты, как правило, предпочитают заплатить за дополнительную работу по автоматизации, а не тратить свое время на рутинную работу.
а чем плохо, если я в ресурсы приложения сразу положу sqlite db с данными которые есть на desktop-е?
зачем мне лишний xml?
зачем мне лишний xml?
ничем, xml нужен только на этапе заполнения базы. вообще, xml-файл здесь дан просто для примера источника данных. главное: заполнить базу с нужной схемой из вашего изначального хранилища данных и использовать ее в приложение. а как вы ее будете заполнять — это уже дело десятое.
Спасибо огромное! Очень полезная статья. Правда я пошел более простым путем. Предварительно заполнил sqlite базу, необходимыми для первого старта данными, и разместил в ресурсах приложения. Непосредственно при первом старте, просто копирую ее в ~/Library/Application Support/AppName.
Sign up to leave a comment.
Предзаполнение базы данных Core Data