Nota: Traducido de la versión original en Inglés.
Hace unos días, un usuario de Enterprise App me preguntó si la carga diferida (lazy loading) es mejor (particularmente en una aplicación de negocios) que la paginación. Mi respuesta: ¡Totalmente! La paginación es una solución antigua, denominada web 1.0. En esa época, el AJAX no era posible en absoluto.
No es muy útil tener un montón de enlaces 1, 2, 3, 4, 5, 6, …, 100. La carga diferida al estilo Vaadin no solo es más fácil de usar sino también de entender para el usuario final. Si un usuario ve una barra de desplazamiento, entenderá que desplazar esa cosa hará que las filas, bueno… se desplacen. No hay necesidad de más explicaciones al respecto (¿hay alguna explicación que hacer?). Es probable que la paginación cause que algunos usuarios novatos se pierdan, al menos la primera vez que usen el software.
A veces, es necesario desplazarse por todo el conjunto de datos y la paginación podría hacer que esa tarea sea un dolor de cabeza. Creo que la paginación está bien si tenemos, digamos, siete páginas como máximo ( gracias Miller). Si el número de páginas es incierto en el momento del diseño o desarrollo, definitivamente intentaría un enfoque diferente. Sin embargo, si los dispositivos cliente objetivo lo permiten, optaría por la carga diferida.
No sé por qué diablos usé la paginación durante tanto tiempo. Creo que simplemente me acostumbré a usar la paginación en cada tabla con datos que creaba. DisplayTag podría ser culpable, pero incluso DisplayTag se puede configurar para usar un nuevo y atractivo mecanismo de carga diferida.
Algunos de ustedes podrían argumentar “Google usa paginación”. Debo admitir que hay situaciones en las que la paginación tiene mucho sentido. No puedo imaginar una página casi infinita con todos los resultados de una búsqueda en Google. Además, me siento muy cómodo leyendo libros en línea en una interfaz de usuario paginada. Pero hay mucho debate al respecto. Incluso Google mismo prefiere ver todos los resultados de búsqueda.
Otra cosa genial, especialmente pero no exclusivamente, sobre la carga diferida cuando se usa en tablas, es que es una buena manera de hacer que tus aplicaciones web parezcan más modernas, más web 2.0. Solo observa cómo Facebook, Twitter y otros pesos pesados usan la carga diferida para mostrar sus datos. Adelante, moderniza tus aplicaciones web usando algo de carga diferida.