2010-08-04 2 views
2

Мне нужно загрузить около 500 записей статических данных для отображения. Я хотел бы знать, как лучше всего хранить/извлекать данные с помощью xml-файла, массива, sqllite, используя основные данные с точки зрения простоты и производительности.iPhone App: лучшие практики для хранения/извлечения статических данных

ответ

2

зависит от цели.

Если вы загружаете из xml в формате plist в массив, словарь, набор и т. Д., Тогда вы должны прочитать все это в памяти в одном большом куске. Если записи относительно малы и просты, то есть нет отношений и нет пользовательских поведений, тогда xml будет самым простым решением.

Если память является проблемой и/или данные сложны, тогда основные данные - это путь. Это не только упрощает управление памятью, но и взаимодействие с остальной частью приложения, в особенности с пользовательским интерфейсом.

0

Как сказал TechZen - это зависит от того, ищете ли вы простоту кодирования или эффективность/скорость.

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

Самый простой способ кодирования - написать и прочитать массив с writeToFile и contentsOfFile. Но массивы и словари все равно хранятся в виде XML-файлов, поэтому вы сохраняете себя, записывая парсер, но все равно не получите многого с точки зрения скорости и производительности.

SQLite/CoreData отлично подходит для скорости и памяти и хорошо работает с остальной частью приложения - но это слишком много, если все, что вы храните, является базовыми данными, потому что на него приходится больше всего накладных расходов на разработку 3-х вариантов IMHO.

Смежные вопросы