Пагинация (программирование)

Материал из Циклопедии
Перейти к навигации Перейти к поиску

Пагина́ция (постраничная навигация, от англ. pagination) — разбиение массива данных на отдельные блоки, представленные на разных страницах.

Логика[править]

Определение переменных[править]

x = число элементов в массиве (известно)
n = число элементов на страницу (установлено)
p = текущая страница
t = следующая страница
u = предыдущая страница
y1 = начало отсчета элементов для вывода
y2 = конец отсчета элементов для вывода
e = количество страниц
P = страница переданная программе пользователем

Данные по умолчанию[править]

p = 1
y1 = индекс первого элемента массива (0 или 1)
y2 = индекс последнего элемента массива на первой странице
если y1 = 0 (например данные MySQL), то y2 = n-1
если y1 = 1, то y2 = n
t = 2
u = 0

Расчет данных[править]

e = ceil(x/n) - округление деления в большую сторону
если P меньше 1, то p = 1
:иначе если P больше e, то p = e
:иначе p = P
t = p+1
u = p-1
если y1 по умолчанию равен нулю, то y1 = p*n-n
если y1 по умолчанию равен 1, то y1 = p*n-(n-1)
если y1 по умолчанию равен нулю, то y2 = p*n-1
если y1 по умолчанию равен 1, то y2 = p*n

Примечания[править]

Расчет y2 не требуется для SQL-запросов с использованием LIMIT

 
Известные
деятели

Кент Бек • Гради Буч • Фред Брукс • Barry Boehm • Уорд Каннингем • Оле-Йохан Даль • Том Демарко • Эдсгер Вибе Дейкстра • Дональд Кнут • Мартин Фаулер • Чарльз Энтони Ричард Хоар • Watts Humphrey • Майкл Джексон • Ивар Якобсон • Craig Larman • James Martin • Мейер Бертран • Дэвид Парнас • Winston W. Royce • James Rumbaugh • Никлаус Вирт • Эдвард Йордан • Стив Макконнелл

Процесс

Анализ требований • Проектирование • Программирование • Тестирование • Внедрение • Сопровождение • Формальные методы • Стадии разработки

Концепции

Моделирование данных • Архитектура ПО • Функциональная спецификация • Язык моделирования • Парадигма • Методология • Технологии • Процесс разработки • Качество • Обеспечение качества • Структурный анализ)

Направления

Программирование (Аспектно-ориентированное • Объектно-ориентированное • Проблемно-ориентированное) • Онтология • Сервис-ориентированная архитектура • Оценка затрат на разработку

Модели
разработки

Agile • Cleanroom • CASE • Итеративная разработка • RUP • OpenUP • RAD • Scrum • MSF • Спиральная • Каскадная • XP • V-Model • Dual Vee Model • DSDM

Другие
модели

CMM • CMMI • Данных • Function model • IDEF • Информационная • Metamodeling • Object model • View model • UML

Прочее

Информатика • Инженерия (Компьютерная • Организационная) • История разработки ПО • Документирование • Управление (Конфигурационное • Проектами • Программами • качеством) • Эргономика • Системотехника • Обратная разработка • Версии