Мне нужно загрузить около 500 записей статических данных для отображения. Я хотел бы знать, как лучше всего хранить/извлекать данные с помощью xml-файла, массива, sqllite, используя основные данные с точки зрения простоты и производительности.iPhone App: лучшие практики для хранения/извлечения статических данных
ответ
зависит от цели.
Если вы загружаете из xml в формате plist в массив, словарь, набор и т. Д., Тогда вы должны прочитать все это в памяти в одном большом куске. Если записи относительно малы и просты, то есть нет отношений и нет пользовательских поведений, тогда xml будет самым простым решением.
Если память является проблемой и/или данные сложны, тогда основные данные - это путь. Это не только упрощает управление памятью, но и взаимодействие с остальной частью приложения, в особенности с пользовательским интерфейсом.
Как сказал TechZen - это зависит от того, ищете ли вы простоту кодирования или эффективность/скорость.
XML - довольно стандартный способ - но, естественно, вам нужно будет настроить парсер для него, и любое изменение будет означать обновление парсера. И скорость/эффективность кажутся каждый раз, когда вы сначала загрузите файл в память и начнете его обрабатывать, поэтому это не очень быстрое или эффективное решение, но его довольно просто реализовать.
Самый простой способ кодирования - написать и прочитать массив с writeToFile
и contentsOfFile
. Но массивы и словари все равно хранятся в виде XML-файлов, поэтому вы сохраняете себя, записывая парсер, но все равно не получите многого с точки зрения скорости и производительности.
SQLite/CoreData отлично подходит для скорости и памяти и хорошо работает с остальной частью приложения - но это слишком много, если все, что вы храните, является базовыми данными, потому что на него приходится больше всего накладных расходов на разработку 3-х вариантов IMHO.
- 1. PHP Замена статических методов Entities, лучшие практики
- 2. Лучшие практики для управляемых приложений SalesForce App?
- 3. Лучшие практики SQLite на iPhone
- 4. Лучшие практики для статических страниц в приложении rails
- 5. Почему лучшие практики различаются для статических классов в ООП?
- 6. Лучшие практики CoreData
- 7. Google App Engine и лучшие практики Git
- 8. Firebase хранения данных лучшие практики
- 9. LiquiBase: лучшие практики для организации
- 10. Лучшие практики в данных синхронизируемых
- 11. лучшие практики для приложений баз данных
- 12. Gulpfile.js смотреть лучшие практики
- 13. Facebook Canvas App & Standalone Web App Лучшие практики
- 14. Список SharePoint Лучшие практики
- 15. Хруст изображения, лучшие практики?
- 16. Лучшие практики для повышения надежности
- 17. Лучшие практики для инъекций DLL?
- 18. Лучшие практики для HTML/CSS
- 19. Лучшие практики для исключений Python?
- 20. Android - лучшие практики для разрешения
- 21. Разрешения для Android - лучшие практики
- 22. Лучшие практики для Python UnicodeDecodeError
- 23. Лучшие практики для сохранения NSDocument
- 24. лучшие практики для спокойного webservice
- 25. Лучшие практики для Entity Framework?
- 26. CFReadStreamHasBytesAvailable опрос - лучшие практики
- 27. DTOs: лучшие практики
- 28. Лучшие практики JQuery
- 29. Лучшие практики для синглтонов и уведомлений на iPhone
- 30. Что такое лучшие практики для веб-разработки IPhone