Стоит ли использовать внешние файлы для хранения больших данных? - PullRequest
1 голос
/ 08 мая 2019

Я делаю приложение, которое использует много больших текстов, которые предопределены.На данный момент я храню их в файле RTF и загружаю их оттуда, чтобы отделить код от контента.Если файл rtf будет иметь около 1500-2000 строк, и он будет загружен и разделен несколько раз при запуске приложения, потребуется ли приложению очень много времени для загрузки, и я должен определить содержимое в исходном коде?

Спасибо за вашу помощь!

1 Ответ

1 голос
/ 08 мая 2019

Я определенно не склонен помещать более 2000 строк текста в сам исходный код. Отдельный файл (или база данных, или что-то еще) имеет гораздо больше смысла.

Что касается того, потребуется ли приложению много времени для его загрузки, вы должны просто сравнить его (например, поставить let start = CFAbsoluteTimeGetCurrent() до загрузки и let elapsed = CFAbsoluteTimeGetCurrent() - start после и посмотреть, сколько времени это займет.

Кстати, если iOS, убедитесь, что вы делаете это на реальном устройстве, а не на симуляторе, чтобы получить точное время. Но обычно загрузка небольшого файла, подобного этому, будет несущественной с точки зрения требуемого времени (например, оно, вероятно, все еще будет меньше, чем многие изображения).

Я только что протестировал загрузку довольно сильно размеченного RTF (каждое слово другого цвета), который был 250 КБ. Используя инициализатор NSAttributedString, который принимает URL-адрес файла, хотя он был на порядок медленнее, чем обычный текстовый файл (тот же текст, без разметки), на моем iPhone все равно потребовалось всего 70 мс. Но ясно, что вы должны сравнить свой файл.

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