Проблемы с разбиением на страницы и сортировкой

Я могу использовать continueAfterFailure и запустить другие тесты, используя этот шаблон:

self.continueAfterFailure = NO;
@try
{
    // Perform test code here
}
@finally
{
    self.continueAfterFailure = YES;
}
9
задан Brian Tompsett - 汤莱恩 28 September 2016 в 21:17
поделиться

4 ответа

Клиентская сторона лучше остается простым: сортировка / разбивка на страницы Javascript предназначена только для очень маленьких наборов результатов - достаточно малых, чтобы пользователь не заметил снижения производительности.

На стороне сервера вы можете оптимизировать нагрузку на сервер:

Загрузка может поступать в форме частых запросов на добавление дополнительных страниц, большого количества строк / столбцов на странице и частых запросов на пересмотр. (Мы не Я даже не говорил о фильтрации)

Итак, в зависимости от ваших пользователей и фактического использования вам может потребоваться какая-то форма кеширования. Обратите внимание, это предложения на время ПОСЛЕ того, как вы узнаете, что делают ваши пользователи:

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

  • Для страниц большого размера рассмотрите возможность сохранения строк в кэше «последнего использованного» приложения (памяти), чтобы базе данных не требовалось выплевывать одни и те же огромные фрагменты данных поверх и снова.

  • Для частого обращения хороший подход - сохранить таблицу кеша в SQL только с результатами.

И всегда, всегда, всегда индексируйте базу данных соответствующим образом.


Дополнительный ответ:

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

Еще одно соображение - несколько уровней сортировки: хотите ли вы реализовать сортировку по серийному номеру, а затем по имени пользователя? Подумайте, что делает Microsoft Excel или любое другое приложение, с которым ваши пользователи знакомы. Ваши пользователи, вероятно, будут довольны тем, к чему они привыкли, в том числе возвращением на страницу 1.

тогда логин? Подумайте, что делает Microsoft Excel или любое другое приложение, с которым ваши пользователи знакомы. Ваши пользователи, вероятно, будут довольны тем, к чему они привыкли, в том числе возвращением на страницу 1.

тогда логин? Подумайте, что делает Microsoft Excel или любое другое приложение, с которым ваши пользователи знакомы. Ваши пользователи, вероятно, будут довольны тем, к чему они привыкли, в том числе возвращением на страницу 1.

4
ответ дан 4 December 2019 в 23:07
поделиться

Базы данных - настоящие звери при сортировке и выборе данных. Поэтому лучше всего, чтобы клиент сказал серверу: «Мне нужна страница X с Y строками, отсортированными по Z». Затем база данных делает свое дело, и клиент показывает результат. Для повышения производительности вы можете сделать ваш клиент кеширующим результаты, и, кроме того, вы можете сделать так, чтобы ваш код запрашивал следующую и предыдущую страницы после того, как текущая была извлечена, чтобы их можно было сразу показать по запросу.

3
ответ дан 4 December 2019 в 23:07
поделиться

Лучшим подходом было бы выполнить сортировку и разбиение на страницы на уровне базы данных и вернуть только подмножество исходных данных, которые будут отображаться только на экране. В этом сценарии нет javascript.

Если по каким-либо причинам вы не можете сортировать и постранично на уровне базы данных, вам следует сделать это с помощью сценария на стороне сервера. В этом сценарии тоже нет javascript.

И наихудшим подходом было бы выполнение сортировки и разбиения по страницам с помощью javascript, что, конечно, не рекомендуется вообще по понятным причинам.

0
ответ дан 4 December 2019 в 23:07
поделиться

Сортировка в базе данных того, что доставляется на конкретную страницу на экране. Он почти всегда будет быстрее, кэшироваться и упростить такую ​​нагрузку на браузер.

Если хотите, разрешите на стороне клиента дальнейшую подсортировку с помощью javascript и т. Д., Если данные достаточно подробны и могут извлечь из этого пользу. Вы можете сохранить выбранные функции под сортировки, чтобы они запоминались между страницами.

0
ответ дан 4 December 2019 в 23:07
поделиться
Другие вопросы по тегам:

Похожие вопросы: