# Беседа: beseda-20261005-1646.txt # файлов: 6; начало: 2026-10-05 16:46; конец: ~2026-10-05 17:16 ## 2026-10-05/rec_20261005_164614.m4a (старт 16:46:14) [00:00:00] У тебя будет сет-фильтр категории, потом у тебя все импут, [00:00:06] там сет-фильтер, все импут, да как бы. А потом у тебя идет [00:00:11] селепт. Фильтр, ну вот это передается фильтр, пошло [00:00:15] поехало то, что мы обсудили. Теперь вопрос. Как нам [00:00:20] сделать первичную унициализацию? Вот. Как это мы делаем? [00:00:32] Ну мы запрашиваем все карточки. Другого про что мы тогда [00:00:37] впервые опуждали, что мы сразу с картинками частись. [00:00:41] И ждем. Ну мы делаем селепт курс и ждем, или что? [00:00:47] Ну тогда ждем, а что? Ну так получается, когда у тебя [00:00:53] курс, курс каталог фильтр должен разместить пространство [00:00:57] для себя, подвесить вот эти западынушки, глобальные [00:01:01] и сделать селепт на пустой фильтр. Да. Да? Да. [00:01:06] Ну либо на тот фильтр за самом деле, который ему [00:01:11] будет передан, или он его прочитает с, на, на сквере [00:01:17] стринта. Вот на него он должен сделать. Внутри, соответственно, [00:01:21] курс каталог запрашивает данные, но если они их не [00:01:25] было, потом применяют это фильтр. Такая логика. Да. [00:01:29] Ну, давайте еще раз, у тебя главный, то есть ты наверху [00:01:32] берешь просто какой-то контейнер и создаешь курс-каталог, [00:01:38] давай мы осределимся, пусть это будет курс-каталог [00:01:40] объект, а второй будет объект, курс-провайдер и image-провайдер. [00:01:46] Пусть они будут вот так называть. Хорошо. [00:01:47] Куда будет все четко. Хорошо. Вот. Все, тогда вот у тебя, [00:01:52] то есть курс-каталог, соответственно, у тебя получает фильтр, вот, [00:01:57] какой-то мы можем, наверное, сослаться на страничку [00:02:00] с отфильтровыми фильтами, но для этого, тогда, он после [00:02:03] установки фильта должен менять курс-каталог, в якор [00:02:08] начальской. Если уж красиво делать, вы сейчас что [00:02:14] не говорите? Ну да, это говоришь, а допоминять [00:02:19] URL, там через, через, через, через решетку ставить, [00:02:23] как бы точку переноса. Ну да, по сути, ставить [00:02:27] туда фильтр. Фильта подостаёт. Более того, ты можешь [00:02:31] фильтр внутри себе не хранить, ты можешь его читать [00:02:34] всё за сверху, менять в нём то, что тебе кликнули [00:02:39] и писать его новый туда. Вот так можно делать. [00:02:44] Вот. Вот. Это, соответственно, касается инициализации. [00:02:48] Ну и обрати внимание, если вот это по-человечески [00:02:53] прописать, у тебя даже столько стрелок не будет, сколько [00:02:55] сейчас нарисовывано, и будет ещё меньше. Понимаешь, [00:02:59] да? Да. Ну вот, поэтому второе, первое, второе [00:03:05] сделать. Теперь прокрутка. Мы хотели с тобой прокрутку [00:03:12] оптимизировать с точки видения того, что не запрашивать [00:03:17] для всех картинки. Да. Да? На два экрана вперёд [00:03:21] запрашивают. Ну, она ничем не отличается. Отличается [00:03:30] только тем, что надо определить количество, определить [00:03:33] айдичники картины, к которым нам нужно запросить. [00:03:36] Всё. Я тут, знаешь, просто думаю, что вот, смотри, [00:03:42] если мы один раз карточку отрисовали, с установленным [00:03:45] на ней картинкой, ну, наверное, что нам по ней не надо повторно [00:03:50] картинку запрашивать. Нет. Даже у имыч-провайдера. [00:03:53] Нет. Даже не то, что насеет, говоря, даже у имыч-провайдера. [00:03:57] Нет. Ну, а как мы будем понимать, что нам не надо? [00:03:59] Вот, смотри, мы, например, показали, потом ткнули, [00:04:04] подожди, потом ткнули, например, фильтр какой-то по категории, [00:04:09] а потом хоп сняли фильтр. То как вот? Я думаю, наверное, [00:04:16] у жала. Нет, что значит, тут ли не механизм, [00:04:18] то есть какая-то. Либо ты в объектах тех хранишь, что у [00:04:22] тебя картинка установлена, и по ней не надо запрашивать. [00:04:26] Это один вариант простой. Ну да. Второй вариант. [00:04:29] Второй вариант. Второй вариант. В аштамалии объекта. [00:04:32] В аштамалии объекта. Такое говоришь слово, Миша, [00:04:37] я фигеваю, что такое, потому что ты мыли объекта. [00:04:39] Вот. Ну, ДИФ там. ДИФ или как-то. Как-то. Блин. Не объекта, [00:04:47] но подожди, но у тебя есть жеваст-крипт объекты, которые лежат [00:04:52] в курска-талоне, в курс-провайдере, и есть разметка. ## 2026-10-05/rec_20261005_165115.m4a (старт 16:51:15) [00:00:00] Вычислять по дому, если изображение. Или мы все-таки в курс каталогии будем отметить, что изображение от рентейлина. [00:00:13] Это да, мы будем всегда так, как бы по курсу, от сервеченному знать, есть в нем изображение, уже или нет. [00:00:22] То есть у нас всегда, тогда в курс каталогии у нас всегда будет список, список карточек, с состоянием, да? [00:00:31] И, соответственно, и, грубо говоря, отражение этих карточек уже в доме. [00:00:42] Нет, ну, на обратную сторону, наверное, из доменного объекта вы рендейте им карточки. [00:00:49] Тут вопрос о предпоситиве рендейринга карточек. [00:00:52] Карточки будут рендейриться каждый раз? Или они будут от рендейрили, если скрываться, показываться? [00:01:00] Ну, она идеальная, когда если ты один раз ее рендейрил и потом скрываешь, [00:01:09] а если ты не пролистал, не дошел до следовищ, [00:01:13] то есть тебя вот открулся, первый экран ты пошел дальше, ты даже листать не стал, [00:01:18] то и не надо их строить, все они только у тебя в видеобедах лежат. [00:01:26] Ну, а по рядачу у тех как? [00:01:28] По рядачу. [00:01:32] Ну, наверное, по сортировке поедишнику, наверное, или как-то. [00:01:37] Какой вот, какой поедишник? [00:01:39] Рендейринга карточек. [00:01:41] Потом в херах тебя сказали, сортируй по категориям. [00:01:45] Их должен как-то упалять. [00:01:47] Нет, давай по цене, нет, давай по названию. [00:01:53] Ты имеешь в виду, что нам получается, что мы будем рендерить каждый раз, [00:02:06] когда будет меняться условия рендеринга, вы бы говорили, там фильтры или сортировки. [00:02:13] Да. [00:02:17] Вот ты об этом говоришь. [00:02:19] Ну, наверное, да, если он будет. [00:02:21] Ну, если у нас будет более сложным. [00:02:23] Я об этом как один из вариантов. [00:02:25] Может, у тебя рендер карточек, презвитый репчел. [00:02:29] Он получил курсы, что стерк в винах, я тренгавил подовой. [00:02:34] Ну, если это не будет тормозить, надо не будет, что там, что объекта в тормозить. [00:02:42] Ничего страшного. [00:02:43] Ну, да. [00:02:44] Наверное, да. [00:02:45] Ну, я сторонник чего? [00:02:47] Ну, все делаем правильно, потом делаем правильно, [00:02:51] потом все с точки зрения расширяем на будущее. [00:02:55] А потом уже делаем, оптимизируем это что-то. [00:02:58] Если мы можем рендерить всегда, снося все, ну, почему нет. [00:03:03] Тогда в этом случае надо учить, что у тебя в доменном объекте надо хранить, [00:03:08] было ли было ли изображение. [00:03:10] У тебя получается кулбек, должен записать ссылку, [00:03:14] ну, либо со мной изображение в объект с курсом, [00:03:19] и потом вот рендерить в карту, дори рендерить в карту. [00:03:23] Понимаешь, да? [00:03:24] Ну, да. [00:03:25] Тогда в следующий раз у тебя курс придет вместе с изображением, [00:03:29] и когда ты будешь отбирать курсы для запроса изображений, [00:03:33] ты уже этот курс туда не включишь. [00:03:36] Ну, да. [00:03:38] О, это как бы... [00:03:43] Мы разобрались с тобой как бы отображение, [00:03:46] потому что мы сейчас что делаем? [00:03:48] Мы сейчас делаем основу, в том числе, [00:03:50] потом для нашего каталога курс. [00:03:53] Вот на логику проговаривается, чтобы он потом был такой же. [00:03:57] О, теперь... [00:04:03] Что у меня еще осталось из-за вопросов? [00:04:06] Да, окно... [00:04:08] Прекрутка вниз. [00:04:11] То в кнопке же. [00:04:13] То есть мы берем, получается, [00:04:21] возвращенный набор курсов, [00:04:25] из каталога курсов, [00:04:30] и тогда мы, по сути, [00:04:33] рендерим карточки [00:04:36] и по ним и запрашиваем, [00:04:38] от того, что мы отправляем на рендер, [00:04:40] и мы, по сути, запрашиваем изображение. [00:04:45] Если карточки еще есть. [00:04:47] Если карточки не были заранее уже построены. [00:04:50] У нас есть два варианта. [00:04:52] Либо мы сразу редырием все карточки, [00:04:56] либо мы их как бы... ## 2026-10-05/rec_20261005_165616.m4a (старт 16:56:16) [00:00:00] по мере просмотра пролистывания тогда просто смотри в чем в чем разница смотри либо мы тогда [00:00:08] объединяем эти два процесса то есть в первом случае мы просто все все трендерили и кусками [00:00:15] запрашиваем картинки получается рассреды курсов он отличается от у нас все в трех [00:00:23] состояниях есть общий каталог курсов есть от рендеренные карточки как бы есть [00:00:32] этот самый есть картинки это три разных на пора а вот если у нас будет общий каталог потом [00:00:41] отфильтрованные курсы и потом у нас будет от рендеренные курсы и карточки по ним же запрошены [00:00:47] они тогда будут идти вместе то есть по курсу от рендерили карту если не было [00:00:54] этого самого если не было изображение значит запросили эту пачку изображения понимаешь да ну [00:01:02] я бы наверное заранее обо ней рендерил то есть я обо рендерил только то что видно плюс еще [00:01:08] один плюс еще одну строку тогда когда из возвращенного набора надо взять то есть у нас [00:01:20] должна быть какая-то функция когда мы сделали селепет записали в презентр куда-то эту коллекцию и [00:01:29] что делаем и делаем вот столько мы сейчас отправим на рендеринг у нас тогда должно быть где-то [00:01:43] записано какой сейчас размер окна и на какой курс все мы находимся сейчас то есть это получается [00:01:54] их некий первый из виден и из видимых курса тогда мы рассчитываем насколько нам надо курсов добавить [00:02:02] вот этот вот видимый набор но все равно смотри если мы будем с тобой до рендеривать курсы до рендер [00:02:15] идет мне пошло не нравится мы с тобой попадаем в дополнительный ну такой вот процесс не очень приятный [00:02:24] трудно но не очень он чтобы рендеривать размер трудно предсказуемый потому что [00:02:33] какой скорости нет даже не с этой точки зрения скорости все будет быстро работать он он [00:02:41] потому что его можно и вообще не заниматься взял от рендерил секунды молодец [00:02:45] но тебе все равно из этого вот ты же от рендерил их но ты их как от рендерил ты прямо от рендерил [00:02:58] смысле по прямо сделал список объектов в доме а потом ты когда у тебя меняется сортировка ты [00:03:06] перерендериваешь или ты просто переставляешь местами тогда нахера тебе 400 карточек карточек [00:03:17] рендерить сразу же когда ты на первый экран попадаешь каждый раз будет 400 карточек перерендерил [00:03:32] когда вы получите набор курсов мы должны построить какой-то карту когда какие курсы отправлять на [00:03:53] рендерить то есть любое мы говорили и привязаться к скролу и тогда у тебя отдельная должен быть он [00:04:04] скрол метод где ты картинате скрола смотришь то есть какие курсы должны войти в окно понимаешь [00:04:13] да то есть ты можешь даже по одной строке до рендеривать но по одной я бы не делал тогда у тебя [00:04:20] будут слишком маленькие запросы на картинке я бы пачканы бы докидывал да да я сейчас включу [00:04:40] мне чат а но чат вот этот у нас да дать сейчас две минуты я подключу хорошо да вот то есть я бы [00:04:56] делал так мы получили курса и мы строим так ## 2026-10-05/rec_20261005_170116.m4a (старт 17:01:16) [00:00:00] Мы говорим, что если координат будет такой, то соответственно [00:00:09] то-то. [00:00:10] Если такой, то то-то. [00:00:11] А дальше мы просто переноспираем вот эту систему, причем [00:00:15] это у тебя должно быть на два события, то есть на onScron [00:00:19] и на resize. [00:00:20] Если ты начинаешь с изменения 5 окно относительно этого [00:00:26] самого, ты вот эту таблицу с координатами и рестра [00:00:31] и воешь. [00:00:32] Либо второй вариант, таблица должна быть, а некая [00:00:38] функция, которая тебе выдает порядковый номер курса, [00:00:43] до которого должны быть отределены карточки, должны [00:00:46] быть параметры у этой функции, что, например, мы два экрана [00:00:51] вперед захватываем. [00:00:53] Понимаешь, да? [00:00:54] Да. [00:00:55] У тебя нет никакой структуры, а есть просто расчет. [00:00:57] Вот, в принципе, тогда можно и, ну, да, просто как [00:01:03] resize произойдет, просто надо вызвать эту функцию [00:01:06] еще раз и все. [00:01:07] То есть получается, ты вызываешь функцию типа, там, до [00:01:12] загрузка или там до вендейлинг курсов, так и назовем. [00:01:17] У тебя как до вендейлинг курсов работает? [00:01:20] Он просто смотрит, какой у нас сейчас координат [00:01:24] оскрол, так, оформула, до какого курса должно быть [00:01:29] от рендейлера, до этого, да, а до какого трендейрина [00:01:33] вот до этого, да, значит, и соответствует. [00:01:36] Тебе нужно тогда скульптура, ну, в принципе, это можно [00:01:40] и в основной структуре отмечать, который будет [00:01:43] оперировать к курс-провайдер, ну, то есть курса трендейрин [00:01:48] или нет. [00:01:49] Понимаешь, да? [00:01:50] То есть на нее операция нам надо постоянно, да, ну, [00:01:58] наверное, так, собственно, это и должно быть, хотя [00:02:02] если ты до вендейлинг плывешь, тогда тебе, когда тебе [00:02:10] не нужно хранить кэш в излаченных изображениях. [00:02:14] Вот че прикол. [00:02:15] Нет, ну, то есть ты всегда действуешь с нуля. [00:02:18] Товарищ, тебе курс-провайдер вернул какие-то объекты и [00:02:21] ты начинаешь, по сути, надо начинать работать с [00:02:25] копией этих объектов и с их дополнительными параметрами, [00:02:29] которые на них висят, потому что дальше на себя [00:02:34] принимает каталок, курс-каталок, я бы назвал его не курс-каталок, [00:02:46] а просто каталок-презинтер, как нибудь вот так вот. [00:02:50] То есть будьте каталок-презинтер, курс-провайдер и душе-провайдер. [00:02:54] Понимаешь, да? [00:02:55] Ну вот, то есть он начинает работать с этими объектами [00:02:58] дополнительными. [00:02:59] После того, как ты вернул курс-каталок-провайдер. [00:03:04] Понимаешь? [00:03:05] То есть он будет ставить флопаде, тендерина не нет, есть [00:03:08] на них изображение, нет на них изображение. [00:03:11] Че-то не отрицает, что вымышь-провайдере должен [00:03:14] быть кэш всех скачем изображениях, понимаешь, да? [00:03:18] Вот вообще не зависит. [00:03:19] Вот. [00:03:20] А то че, давай попробуем. [00:03:21] Да. [00:03:22] Поэтому попробуем вот не всю эту, ну, тогда, собственно, [00:03:25] у тебя очень простая. [00:03:26] Вот, вот если он скроет, он уже нарисован прекрасно, [00:03:29] и туда же добавить он в ресайс. [00:03:31] Он в ресайс, теперь дальше, что у тебя написано? [00:03:34] Где-то фу курсы с курс-провайдерами, и, ну, по-хорошему, по-хорошему [00:03:41] мы должны вызвать фурсу, которая тебе выдаст порядковый [00:03:47] номер курса, до которого нужно оттрендерить карточки. [00:03:53] Ага. [00:03:54] Понимаешь, да? [00:03:55] Так. [00:03:56] Потом ты берешь дейль, то между последним оттрендеренным [00:04:00] курсом и порядковым номером, который должен быть оттрендеренным. [00:04:04] И этот блок даешь функцию, ты на рендеринг. [00:04:07] Ага. [00:04:08] Ты дырешь, и, по сути, у тебя это дальше, то есть вот [00:04:14] этот блок просто, он поступает на стандартный вот этот [00:04:16] механизм рендерин, то есть скажем так, то есть он у тебя [00:04:21] будет один датвой, и при скроле, и при этом, и про [00:04:30] рефильтрия. [00:04:31] То есть, смотри, у тебя, по сути, вот на этой схеме, [00:04:35] наверху должен быть блок профильта, то есть он категории [00:04:38] клика, очень-очень импорт, импорт получения соответственно [00:04:43] курсов, да? [00:04:45] Потом у тебя идет отсечка, то есть мы пошли в рендеринг, [00:04:51] да? [00:04:52] В том числе, в рендеринг происходит еще дополнительно [00:04:55] по событиям, он в скроле, в ресайст, но и как продолжение, [00:05:00] он ## 2026-10-05/rec_20261005_170617.m4a (старт 17:06:17) [00:00:00] и крик, и он всё чьим-то понимаешь, да? [00:00:04] То есть, он либо забрался, залетает туда, либо сверху тут, [00:00:08] в этот кусок сваливаешься, ты понимаешь, о чём я говорю? [00:00:12] Ну, более-менее. [00:00:16] Ну, смотри, у тебя первое — получение курса всякого. [00:00:19] Угу. [00:00:20] Да? [00:00:21] Ну, оно у тебя встраивается. [00:00:23] Мы получили вся курса. [00:00:25] Потом у тебя идёт, потом идёт фильтрация. [00:00:27] Ну, получение, я вспомнил, получение, [00:00:29] если мы смотрим глазами каталог, каталог президента, [00:00:33] то первое — я получаю курс. [00:00:35] Угу. [00:00:36] Да, потом, по-хорошему, по-хорошему зависимости. [00:00:40] Из этих курсов. [00:00:41] Да, по-хорошему зависимости. [00:00:43] То есть, потом следующий шаг, то есть, [00:00:45] мы в зависимости от фильтра и состояния каталога, [00:00:48] ну, говорим, да, то есть каталога, [00:00:51] мы выбираем список курсов [00:00:56] и в той последовательности, [00:00:58] в которой они будут отображаться. [00:01:00] То есть, весь, вот если у нас все 400, [00:01:03] грубо говоря, все 400 курсов у нас должны отобразиться [00:01:07] в такой-то последовательности, [00:01:09] мы их все 400 выбрали, [00:01:11] это весь вектор, с которым мы работаем. [00:01:14] Дальше мы определяем [00:01:16] окно, которое будет отображаться, [00:01:20] плюс какие-то условия, сколько ещё вот окно [00:01:23] дополнительно в вазе, да, [00:01:25] то есть, невидимых, но, [00:01:27] которые будут отрендерены. [00:01:29] И, соответственно, [00:01:32] ну, как не рендерим, скорее всего, [00:01:34] мы создаем, или, ну, ничего не создаем, [00:01:37] мы рендерим и ставим определённые флаги [00:01:40] в этот список сформированный, да, [00:01:43] в зависимости от какой-то сортировки выводить. [00:01:46] Мы в нём ставим флаги, что вот у нас [00:01:48] что-то вот эти карточки построены, [00:01:51] картинки загружены, да, [00:01:53] такие загружены, и потом, соответственно, [00:01:55] там, когда колбэк будет, у нас будет, [00:01:57] соответственно, эти флаги о том, [00:01:59] что картинки загружены, проставляться. [00:02:01] И всё, то есть, как только у нас меняются [00:02:05] фильтры или там сортировки, [00:02:08] у нас, соответственно, вектор сбрасывается, [00:02:11] строится новый вектор, [00:02:14] может быть, даже не сбрасывается, [00:02:17] скорее всего, раз мы заново рендерим, [00:02:19] он строится новый вектор, с учётом, [00:02:21] что какие-то, ну всё, [00:02:23] новый вектор ставится, [00:02:25] и всё постарает с кем-то. [00:02:27] Презентр запрашивает новый вектор [00:02:29] к курс-проводеру. [00:02:31] Да. [00:02:32] В зависимости от фильтрации, [00:02:34] и получает новый вектор [00:02:36] с фильтрами, с новой фильтрацией. [00:02:39] И пошёл заново, опять определил [00:02:41] окно за рендерил, [00:02:43] запросил картинки, [00:02:45] соответственно, часть картинок прилетели [00:02:47] из кэша, по-быстрому, да, [00:02:49] раз у нас с тобой [00:02:51] рендеринг не хранится никак, [00:02:53] каждый раз сбрасывается, [00:02:55] то и всё, то есть у нас [00:02:57] вот примерно вот я так вижу. [00:02:59] Ну смотри, [00:03:01] давай коротко подведём, то есть [00:03:03] первая инициализация фильтра идёт, правильно? [00:03:05] Да. [00:03:06] Вот и установка, определение фильтра. [00:03:09] Второе идёт, [00:03:11] получение курс, [00:03:13] третье идёт, [00:03:15] выбор [00:03:17] множество, [00:03:19] или там выбор курсов [00:03:21] для [00:03:25] вот так вот ещё туда, [00:03:27] до вот так вот, [00:03:37] раз, теперь [00:03:39] четвёртая, [00:03:41] запрос изображений, [00:03:52] пятая, [00:03:54] очень хроная, [00:03:59] это выражение картинок. [00:04:07] Ну, товарищ, ты запросил, [00:04:09] да, запрашиваешь изображение, [00:04:11] всегда, [00:04:13] по всем курсам, [00:04:15] которые [00:04:17] попадают в окно, [00:04:19] и у тебя соответствует, [00:04:21] а? Который попадает в окно [00:04:23] рендеринга. [00:04:26] Ну, и у тебя и image [00:04:28] провайдер всегда, [00:04:30] кулбет для них вызывает [00:04:32] каталог презонтер. [00:04:34] То есть каталог презонтер [00:04:36] сам Кракимки не отображает, [00:04:38] когда они туда прилетают, [00:04:40] не могут, через кулбет. [00:04:44] Ну да, ну по сути, кулбет, это же его будет, [00:04:46] код, который будет подставлять. [00:04:48] Короче, [00:04:50] вот, [00:04:52] ну вот и всё, [00:04:54] ну и дальше идёт [00:04:56] шестое, это [00:04:58] обработка событий ## 2026-10-05/rec_20261005_171118.m4a (старт 17:11:18) [00:00:00] Вот, теперь, теперь. Мои в чем прикол? Значит, у тебя до первого блока идет у тебя событие, [00:00:11] он ловит, и он фильта. Ну, будет теория категории, и он тщечь. О, лучших тщечь. Я по 150. Вот, а, соответственно, [00:00:37] 10 добавляется еще одного события. Вот, твой план по большому счету. То есть, в нем не расписано [00:00:58] внутренний каталог провайдера, имеч-провайдер, но лодика работает каталог-презентр, еще курс-провайдер, [00:01:11] имеч-провайдер, и расписано каталог-презентр, и расписано. Все, смотри, эксцезация фильта, [00:01:22] улучшение курсов, соответственно, выбор курсов для рендеринга и до рендеринга, это важный момент. [00:01:31] Дальше всегда запрос изображений, естественно, не для всех курсов, для тех, где их еще нет, [00:01:40] то есть, которые отправлялись на рендеринги, до рендеринги. Короче, заисимость от того, [00:01:48] что было на третьем пункте, определяется пункт четвертым. Понимаешь, да? Все, что на третьем пункте [00:01:53] пошло до рендеринга, то есть, до рендеринга, отправляется в комбо режиме на запрос изображений. [00:01:59] А отображение изображения у тебя просто комбонет, который ты пихаешь на четвертом пункте, [00:02:08] всегда в запросе. И поэтому он у тебя по-штучно отрабатывает возвращаемое запно, вызовы на него. [00:02:16] Ну и все, то есть, вот абсолютно понятная история. То есть, если ее здесь сейчас расписать, [00:02:20] ну как бы сделать вторую версию с счетом вот этого, да? Причем, я бы сделал сначала версию взаимодействия, [00:02:28] курс каталога, значит, отставить каталог презентера и курс провайдера, или мыть провайдера, [00:02:37] кто чего, ко мне чего, вот и по этой схемке. А потом уже добавил бы сюда внутрянку их рабу, [00:02:44] вот и внутри себя. Ну то есть, сначала вот от этой фигни, а потом уже там, что там с внутренкой? [00:02:52] Ну с внутренкой все просто. И мыть провайдер просто киширует, что к нему приходит. Не знаю, [00:03:03] как с какими параметрами, но тем не менее. Каталог отставить. Курс провайдер просто скачивает [00:03:12] один раз из интернета, ну и с сервера, и все. И пока страница висит, он держит у себя этот курс. [00:03:21] Курс провайдер просто киширует. Курс провайдер возвращает вектор полученных курсов в зависимости [00:03:31] от фильтра и от сортировки. Я бы так сказал, что курс провайдера у тебя кэш прямо в объедке, [00:03:44] а для image провайдера у тебя кэш, грубо говоря, в индексной банде. И поэтому они оба используют [00:03:55] еще серверный кэш, но так работает сет на кэшу, должна быть другая картинка, не это. Ну и здесь [00:04:10] не хватает, конечно, чего не хватает. Не знаю, но можно еще что мэль, собственно, нарисовать, [00:04:23] чтобы он был прямо, вот тебе вишло описано, render cards, а по факту это не render cards, [00:04:29] но сам на себя, а относительно дом страницы. Потому что мэль дом, где-то должен быть, [00:04:37] у тебя render cards относительно его выполняется. Выделять его, выделить его в обедный обед, [00:04:44] потому что мэль дом просто подписывает моего использования. Нет, в одежде от этого. После [00:04:54] его каталога передыгнуть на базу, тогда вот это будет прямо вот...