Size: a a a

Clojure — русскоговорящее сообщество

2019 December 20

IG

Ivan Grishaev in Clojure — русскоговорящее сообщество
если бы твиттер отдал 1М твитов на рендер браузеру, комп бы взлетел
источник

DF

Damir Farazetdinov in Clojure — русскоговорящее сообщество
Damir Farazetdinov
разработчики авито не стали ломать голову и запилили пагинацию.
разработчики vk не стали ломать голову и запилили пагинацию.
разработчики twitter не стали ломать голову и запилили пагинацию.
разработчики X не стали ломать голову и запилили пагинацию.
а на самом деле мне кажется нет разумного кейса, когда юзеру была бы нужна возможность сформировать такую ссылку на avito, в которой есть инфа типа limit 100,10. Ну вот для чего?
чтобы положить эту ссылку в избранное и через год её оттуда вытащить. Да она потеряет актуальность на следующие же сутки.
То же с твитами и сообщениями на стене вконтакте.

Обычно нужны просто «первые сколько-то записей». Ну и потом подгружать оставшиеся. Т.е. нужна ленивая коллекция, а на сколько я понимаю, d/pull - вполне себе ленив.
источник

KR

Kostyantin Randomname in Clojure — русскоговорящее сообщество
Ivan Grishaev
если бы твиттер отдал 1М твитов на рендер браузеру, комп бы взлетел
почему мне захотелось потестить
источник

TP

Tim Plotnikov in Clojure — русскоговорящее сообщество
Damir Farazetdinov
а на самом деле мне кажется нет разумного кейса, когда юзеру была бы нужна возможность сформировать такую ссылку на avito, в которой есть инфа типа limit 100,10. Ну вот для чего?
чтобы положить эту ссылку в избранное и через год её оттуда вытащить. Да она потеряет актуальность на следующие же сутки.
То же с твитами и сообщениями на стене вконтакте.

Обычно нужны просто «первые сколько-то записей». Ну и потом подгружать оставшиеся. Т.е. нужна ленивая коллекция, а на сколько я понимаю, d/pull - вполне себе ленив.
А чем пагинация не ленивая коллекция?
источник

DF

Damir Farazetdinov in Clojure — русскоговорящее сообщество
тем, что каждая страница - это новый запрос. и как datomic’у передать опции limit 100, 10 никто не знает.
потом говорится, что он проблемный.
и вообще, что «есть проблема»
да нет её - проблемы. мы её сами себе придумываем.
источник

DF

Damir Farazetdinov in Clojure — русскоговорящее сообщество
а потом боремся
источник

IG

Ivan Grishaev in Clojure — русскоговорящее сообщество
> есть инфа типа limit 100,10.
юзер не может задать лимит, он указан на сервере. Например, чанками по 50 или 100
источник

DF

Damir Farazetdinov in Clojure — русскоговорящее сообщество
юзер выбрал на страничке опцию «Показывать по 10» и за время пребывания на страничке нажал Next page 10 раз. Так он сделал инфу limit 100, 10.
источник

IG

Ivan Grishaev in Clojure — русскоговорящее сообщество
так он сделал limit 10 offset 90
источник

DF

Damir Farazetdinov in Clojure — русскоговорящее сообщество
ок. извини. всё время ошибаюсь на единицу.
источник

DF

Damir Farazetdinov in Clojure — русскоговорящее сообщество
в задаче про забор и 10 столбиков
источник

TP

Tim Plotnikov in Clojure — русскоговорящее сообщество
Давайте определим что такое Пагинация.
По мне пагинация == возможность запрашивать данные отдельными порциями. Для этого нужно менеджить «текущую позицию» так сказать, точку, которую мы используем когда говорим «дай мне данные вот от сих и до сих».
А как менеджент этой позиции реализован - дело десятое. limit/offset или linked list, вообще пофиг)
источник

TP

Tim Plotnikov in Clojure — русскоговорящее сообщество
А вы говорите «Пагинация это лень разработчиков», что звучит совсем уж нелепо
источник

TP

Tim Plotnikov in Clojure — русскоговорящее сообщество
К слову, я сам limit/offset вообще не использовал почти никогда)
Я написал всего штуки 3 бэкенда для пет-проджектов (сам я мобильщик) и везде делал limit/after
источник

TP

Tim Plotnikov in Clojure — русскоговорящее сообщество
По мне так в сто раз удобнее)
источник

TP

Tim Plotnikov in Clojure — русскоговорящее сообщество
И думаю в датомик такое заедет на ура, если там есть возможность написать where createdAt > ?
источник

DF

Damir Farazetdinov in Clojure — русскоговорящее сообщество
Tim Plotnikov
К слову, я сам limit/offset вообще не использовал почти никогда)
Я написал всего штуки 3 бэкенда для пет-проджектов (сам я мобильщик) и везде делал limit/after
Да, так все делают
источник

TP

Tim Plotnikov in Clojure — русскоговорящее сообщество
Damir Farazetdinov
Да, так все делают
Приятно знать что я не совсем дурак 😂
источник

DF

Damir Farazetdinov in Clojure — русскоговорящее сообщество
Давайте определимся с целью. Либо мы хотим просто поболтать, либо мы хотим предложить когнитекту RFC.
источник

TP

Tim Plotnikov in Clojure — русскоговорящее сообщество
Ахах, не, я просто хотел разобраться с рефами) Но видимо для этого надо реализовать задачу, так без пол-литра не заходит пока)
источник