Спасибо Айти синяк. Это видео конечно мало что объясняет кроме того что они реализовали свой собственный аснхронный планировщик задач =). И как многим известно они до конца еще эту задумку не реализовали, на подходе функция пока еще в разработке Offscreen API - позволит нам лучше поддерживать пользовательские интерфейсы, такие как контейнеры с вкладками и виртуализированные списки, а также лучше использовать новые браузерные API, такие как content-visibility. Это также поможет с оптимизацией предварительного рендеринга. это также работает с reusable State которая являются частью Concurrent React. Да и у тебя есть видео про этот новый компонент, который все еще в разработке.
Наши пути разошлись) я перешел на vue, и если честно, не могу нарадоваться, столько всего из коробки, framework - крутая тема. React навсегда отправляется в игнор. 5 лет смотрел на ужасы, которые выдают "профессиАнальные" реакт девелоперы, разгребал дремучие дебри убежавших "разработчиков"(и в итоге сам сбегал) - все с меня хватит, к сожалению, большинство людей не умеет писать код на React. Эээх, а кто знает, что бы было, если бы они все смотрели Синяка, хотя бы поверхностно понимали SOLID(хватит даже буквы S), и знали про Feature Sliced Design или другие методологии организации кода) Но видосик все равно гляну, и лайк тоже не забуду)
@@it-sin9k Ну про "плохих реакт разработчиков" - это шутка разумеется) На vue точно такие же проблемы, организация сложной бизнес-логики требует время и внимания, бизнес, как правило, с первым очень сильно обделяет, не смотря на то, что в итоге теряет кратно больше на поддержке получившейся "лапши". Сейчас делаю себе CV на vue+firebase, как только закончу, поделюсь ссылкой)
@@it-sin9k А мне интересно послушать про методологии организации кода во frontend разработке) У тебя уже есть много крутых видео на эту тему, например про тот же SOLID, но хотелось бы что то более общее, не в плане "кнопок" или "модалок", а именно про организацию кода в целом, разделение UI и бизнес логики, если что то подобное уже есть, кинь в меня ссылкой плз)
@@fallout407 У меня есть целая идеалогия на эту тему, которую я уже оттестировал на 4-5 проектах из разных доменов. Поэтому думаю, в каком то видео этим поделюсь в будущем, с высокой вероятностью это будет в виде одного из основных курсов АйТи Синяка)
@АйТи Синяк , дай совет пожалуйста. Запрашиваем данные с бэка и при этом отправляем AbortController. При анмаунте выполняем controller.abort(). В блоке try, когда данные с сервера пришли, их надо установить через setData(). Так вот: перед выполнением setData надо проверять controller.aborted или нет?
так если данные пришли, и все прошло успешно и вы хотите сделать setData, то abortController ничего не сделает. Вы по факту пытаетесь отменить запрос, который уже завершился
@@it-sin9k данные пришли, но отменённые, то есть пустота пришла. Но така как вернулась не ошибка, код пойдёт выполняться дальше. А пустоту ведь не надо закидывать в setData (чтобы не вызывать лишний ререндер), значит надо добавить проверку if (!controller.aborted)?
@@ReAgent003 по факту нужен какой-то флаг, который точно знает, что данные уже не актуальны) а как будет выглядеть флаг, это уже совсем другая история)
судя по тому что я понял, оно будет просто местами не перерисовывать часть дерева, а брать из предыдущего рендера. А когда система освободиться, то уже обновит графики до актуального состояния
@@apanchuk хмм, перепроверил русские субтитры на англ части у меня работают. Это видимо UA-cam збоит. Попробуй хард релоад что ли сделать или в другом пользователе открыть
Синяк так внимательно слушает доклад, что даже не моргает!
ахахах)) внимательность наше все)
отдельное спасибо за вставки докладов! очень инетресно знакомиться так с комьюнити
буду значить периодически практиковать) читать субтитры было легко? или не очень удобная практика?
Мега ролик. Очень интересно!
актуальная тема,
специально разбираться сам я бы не стал, но схавать 10 минутный видос почти не напрягая мозг
очень ценю такой подарок
работаю над 2-ой частью подарка)
большое спасибо!
очень полезный плейлист👍
Спасибо) самому нравится в этом ковыряться)
Класс! Ты молодец! Жду следующих серий про это.
Спасибо, Саш! Ура, даёшь курс!
Спасибо за видео. ждем курса! :)
следим! спасибо
Лайк номер 100. Ждем продолжения!
Круто! Прям классика, все детально, четко, понятно.) Ждем курс!!!
Уже скоро!)
Спасибо Айти синяк. Это видео конечно мало что объясняет кроме того что они реализовали свой собственный аснхронный планировщик задач =). И как многим известно они до конца еще эту задумку не реализовали, на подходе функция пока еще в разработке Offscreen API - позволит нам лучше поддерживать пользовательские интерфейсы, такие как контейнеры с вкладками и виртуализированные списки, а также лучше использовать новые браузерные API, такие как content-visibility. Это также поможет с оптимизацией предварительного рендеринга. это также работает с reusable State которая являются частью Concurrent React. Да и у тебя есть видео про этот новый компонент, который все еще в разработке.
ждем продолжения)
Спасибо Синий Брат
Отличное видео! Лопату главное не сломать пока будет копать в истоки реакта :D
"...мы настолько заслужили лайк, что можете ставить еще до начала просмотра" ;)
ахаха) спасибо)
👏👍
кайф!
Получается конкарент есть тока с 18 версии?
не совсем) ручки от него торчали и раньше) в след видео расскажу, как это дело все развивалось)
Наши пути разошлись) я перешел на vue, и если честно, не могу нарадоваться, столько всего из коробки, framework - крутая тема. React навсегда отправляется в игнор. 5 лет смотрел на ужасы, которые выдают "профессиАнальные" реакт девелоперы, разгребал дремучие дебри убежавших "разработчиков"(и в итоге сам сбегал) - все с меня хватит, к сожалению, большинство людей не умеет писать код на React. Эээх, а кто знает, что бы было, если бы они все смотрели Синяка, хотя бы поверхностно понимали SOLID(хватит даже буквы S), и знали про Feature Sliced Design или другие методологии организации кода)
Но видосик все равно гляну, и лайк тоже не забуду)
очень жаль, что пути разошлись) но классно, что удалось найти свой путь) интересно на дистанции послушать отзывы о Vue
@@it-sin9k Ну про "плохих реакт разработчиков" - это шутка разумеется) На vue точно такие же проблемы, организация сложной бизнес-логики требует время и внимания, бизнес, как правило, с первым очень сильно обделяет, не смотря на то, что в итоге теряет кратно больше на поддержке получившейся "лапши". Сейчас делаю себе CV на vue+firebase, как только закончу, поделюсь ссылкой)
@@it-sin9k А мне интересно послушать про методологии организации кода во frontend разработке) У тебя уже есть много крутых видео на эту тему, например про тот же SOLID, но хотелось бы что то более общее, не в плане "кнопок" или "модалок", а именно про организацию кода в целом, разделение UI и бизнес логики, если что то подобное уже есть, кинь в меня ссылкой плз)
@@fallout407 У меня есть целая идеалогия на эту тему, которую я уже оттестировал на 4-5 проектах из разных доменов. Поэтому думаю, в каком то видео этим поделюсь в будущем, с высокой вероятностью это будет в виде одного из основных курсов АйТи Синяка)
@АйТи Синяк , дай совет пожалуйста. Запрашиваем данные с бэка и при этом отправляем AbortController. При анмаунте выполняем controller.abort(). В блоке try, когда данные с сервера пришли, их надо установить через setData(). Так вот: перед выполнением setData надо проверять controller.aborted или нет?
ааа, кажется сам понял! Ответ: нет, не надо потому что при аборте код упадёт в catch и выполнение до setData не дойдёт
так если данные пришли, и все прошло успешно и вы хотите сделать setData, то abortController ничего не сделает. Вы по факту пытаетесь отменить запрос, который уже завершился
@@it-sin9k данные пришли, но отменённые, то есть пустота пришла. Но така как вернулась не ошибка, код пойдёт выполняться дальше. А пустоту ведь не надо закидывать в setData (чтобы не вызывать лишний ререндер), значит надо добавить проверку if (!controller.aborted)?
@@ReAgent003 по факту нужен какой-то флаг, который точно знает, что данные уже не актуальны) а как будет выглядеть флаг, это уже совсем другая история)
@@it-sin9k он же уже есть. controller.signal.aborted (boolean)
Все это классно, но потенциально усложнит юзерский код, т.к. вероятно нужно будет иметь дело с состояниями где компонент еще не до конца отрендерился
судя по тому что я понял, оно будет просто местами не перерисовывать часть дерева, а брать из предыдущего рендера. А когда система освободиться, то уже обновит графики до актуального состояния
я не опытный разработчик но мне все равно заходит
круто!
Ден Абрамов - пророк
Стадии построения html страницы в браузере ни как не влияют на однопоточность js. Т.е. зачем все смешивать в кучу.
а можно ссылку на демку?
Ссылки не существует вроде как
@@it-sin9k была , под 18 версию я ее даже тыкал , найти не могу
у меня субтитры не отработали((
Это как?
@@it-sin9k Включил субтитры на выступлении на англ, но они не отоьражались
@@apanchuk хмм, перепроверил русские субтитры на англ части у меня работают. Это видимо UA-cam збоит. Попробуй хард релоад что ли сделать или в другом пользователе открыть
Не так страшны первые 90% курса, как оставшиеся 90% курса
ахаха) точно в цель)