Новый видос про HOC!!!
https://www.youtube.com/watch?v=7W4PD4BN3eY
HOC это:
- High Order Component
- Компонент Высшего Порядка
- Функция, которая на входе в параметрах принимает компонент, а на выходе возвращает новый компонент - контейнерный компонент для переданного в параметрах компонента.
HOC позволяет нам применять какое-то поведение к разным компонентам, не дублируя код.
Иначе: HOC позволяет нам создавать однотипные контейнерные компоненты для разных целевых компонент. А задача контейнерной компоненты - дать целевой презентационной компоненте какие-то данные\поведение.
Из популярных всех известных HOC-ов мы с вами уже знаем connect и withRouter
Правда connect - не совсем HOC если совсем придраться уже: connect после первого вызова вернёт нам HOC. И мы его уже вызываем второй раз.
А сама функция connect не может быть хоком, так как она принимает mapStateToProps и mapDispatchToProps, а настоящий HOC должен принимать в параметрах КОМПОНЕНТ.
Вот такие пироги!!! Летим, самураи!
Летим, самураи ;)
Уроки по React JS: https://www.youtube.com/playlist?list=PLcvhF2Wqh7DNVy1OCUpG3i5lyxyBWhGZ8
https://www.youtube.com/watch?v=7W4PD4BN3eY
HOC это:
- High Order Component
- Компонент Высшего Порядка
- Функция, которая на входе в параметрах принимает компонент, а на выходе возвращает новый компонент - контейнерный компонент для переданного в параметрах компонента.
HOC позволяет нам применять какое-то поведение к разным компонентам, не дублируя код.
Иначе: HOC позволяет нам создавать однотипные контейнерные компоненты для разных целевых компонент. А задача контейнерной компоненты - дать целевой презентационной компоненте какие-то данные\поведение.
Из популярных всех известных HOC-ов мы с вами уже знаем connect и withRouter
Правда connect - не совсем HOC если совсем придраться уже: connect после первого вызова вернёт нам HOC. И мы его уже вызываем второй раз.
А сама функция connect не может быть хоком, так как она принимает mapStateToProps и mapDispatchToProps, а настоящий HOC должен принимать в параметрах КОМПОНЕНТ.
Вот такие пироги!!! Летим, самураи!
Летим, самураи ;)
Уроки по React JS: https://www.youtube.com/playlist?list=PLcvhF2Wqh7DNVy1OCUpG3i5lyxyBWhGZ8
YouTube
69 - React JS - High Order Component (hoc)
🚀Стань квалифицированным разработчиком за 9+ месяцев с трудоустройством в IT —INCUBATOR:
Front-end
https://it-incubator.io/front-end/?utm_source=youtube&utm_medium=it-k&utm_campaign=education
Back-end
https://it-incubator.io/back-end/?utm_source=youtu…
Front-end
https://it-incubator.io/front-end/?utm_source=youtube&utm_medium=it-k&utm_campaign=education
Back-end
https://it-incubator.io/back-end/?utm_source=youtu…
Совместно с коллегами-блогерами высказались на тему сроков «выучивания» на программиста/верстальщика/...
https://www.youtube.com/watch?v=__B3kJ8YhSw
Попытался искренне высказать свою точку зрения! 🙏 Летим!!!
https://www.youtube.com/watch?v=__B3kJ8YhSw
Попытался искренне высказать свою точку зрения! 🙏 Летим!!!
YouTube
Как стать программистом за 1 месяц? Никак?
🚀Стань квалифицированным разработчиком за 9+ месяцев с трудоустройством в IT —INCUBATOR:
Front-end
https://it-incubator.io/front-end/?utm_source=youtube&utm_medium=it-k&utm_campaign=education
Back-end
https://it-incubator.io/back-end/?utm_source=youtu…
Front-end
https://it-incubator.io/front-end/?utm_source=youtube&utm_medium=it-k&utm_campaign=education
Back-end
https://it-incubator.io/back-end/?utm_source=youtu…
Почему в ООП нет имьютабельности, а в функциональном программировании она есть?
Forwarded from АйТиБорода
Интересная инфа: 8го августа в Минске на базе пространства "Space" будет проходить митап канала ProgBlog. Если кто не в курсе, на этом канале ведущая Вика Бородина берет интервью у айтишников из Кремниевой Долины. Так вот, митап разделен на две части: в первой Вика расскажет про релокейт в США для IT-специалистов, а для второй части она решила позвать меня и сделать открытое интервью для своего канала, прямо на сцене. О чем меня спрашивать будут я пока не знаю, но у вас есть шанс поучаствовать во всём этом, и даже задать вопрос в рамках интервью :)
👉 Анонс: https://youtu.be/d6QEubsg7_8
👉 Регистрация: https://www.eventbrite.com/e/progblog-meetup-it-tickets-64755195533
👉 Анонс: https://youtu.be/d6QEubsg7_8
👉 Регистрация: https://www.eventbrite.com/e/progblog-meetup-it-tickets-64755195533
Хэй, братья и сестры самураи бесстрашные!!!
Жду 31 августа всех вас на стриме в 19:00 по Москве!!! Поговорим за жизнь, про Путь Самурая, про дальнейший алгоритм действий, про моих студентов, про JS. Так же разыграем и объявим победителей!
В частности того, кто будет учиться бесплатно! (про бесплатное место на обучение я расскажу в новом видео про ЧТО УЧИТЬ ЧТОБЫ СТАТЬ JS ПРОГРАММИСТОМ, которое выйдет уже завтра)
Летим!!!
🚀🚀🚀
Жду 31 августа всех вас на стриме в 19:00 по Москве!!! Поговорим за жизнь, про Путь Самурая, про дальнейший алгоритм действий, про моих студентов, про JS. Так же разыграем и объявим победителей!
В частности того, кто будет учиться бесплатно! (про бесплатное место на обучение я расскажу в новом видео про ЧТО УЧИТЬ ЧТОБЫ СТАТЬ JS ПРОГРАММИСТОМ, которое выйдет уже завтра)
Летим!!!
🚀🚀🚀
Ах да, ссылка на стрим:
https://www.youtube.com/watch?v=w2DoehdNCEY
https://www.youtube.com/watch?v=w2DoehdNCEY
YouTube
01. Вайтишный стрим: как стать программистом, путь самурая, reactjs, обучение в инкубаторе
Поддержать меня и получить доступ к дополнительному контенту можно вот здесь:
https://www.patreon.com/itkamasutra
#ityoutubersru #itkamasutra
Ребята, в общем, я созрел и с радостью буду в конце каждого месяца общаться с вами на интересные вам темы!!!
…
https://www.patreon.com/itkamasutra
#ityoutubersru #itkamasutra
Ребята, в общем, я созрел и с радостью буду в конце каждого месяца общаться с вами на интересные вам темы!!!
…
Как стать программистом! 3 бесплатных крутых шага! (JavaScript, Front-end) https://youtu.be/hFOZYaVHD6A
Как вообще можно выучить JavaScript? А ещё и вёрстка, и фреймворки (Angular, ReactJS, Vue, Svelte)... А ещё GIT и Webpack.. А ещё... Море всего!!! Как выучить минимум, достаточный для трудоустройства? Смотрите в этом видео!
Если потерялся, такие же потерянные вайтишники в этом телеграм-чате:
https://t.me/reactjs_samurai
Друзья, успешный успех, высокие зарплаты, раскошная жизнь и низкий порог входа - всем этим вас всех манят многочисленные курсы, обещая лёгкий способ #войтивайти.
Продают вам один курсом за другим: вводный курс по HTML и CSS, продвинутая вёрстка, курс по базовому JavaScript, курс по продвинутому JavaScript-у, потом переквалификация и доп. курс по фреймворкам... Уууух... Клиенты прямо на всю жизнь))
А всё гораздо проще! Можно абсолютно бесплатно проверить себя на проф. пригодность, это раз... а второе, если идти по правильному пути, то можно и самостоятельно обучиться и трудоустроиться... Летим, друзья!
* Сайты:
https://it-kamasutra.com
https://it-incubator.by
https://samuraijs.com
* Мы в соц. сетях:
https://vk.com/itkamasutra
https://instagram.com/itkamasutra
https://telegram.me/itkamasutra
* Мои личные VK и Insta:
https://vk.com/d.kuzyuberdin
https://www.instagram.com/it.kamasutra.dimych/
Как вообще можно выучить JavaScript? А ещё и вёрстка, и фреймворки (Angular, ReactJS, Vue, Svelte)... А ещё GIT и Webpack.. А ещё... Море всего!!! Как выучить минимум, достаточный для трудоустройства? Смотрите в этом видео!
Если потерялся, такие же потерянные вайтишники в этом телеграм-чате:
https://t.me/reactjs_samurai
Друзья, успешный успех, высокие зарплаты, раскошная жизнь и низкий порог входа - всем этим вас всех манят многочисленные курсы, обещая лёгкий способ #войтивайти.
Продают вам один курсом за другим: вводный курс по HTML и CSS, продвинутая вёрстка, курс по базовому JavaScript, курс по продвинутому JavaScript-у, потом переквалификация и доп. курс по фреймворкам... Уууух... Клиенты прямо на всю жизнь))
А всё гораздо проще! Можно абсолютно бесплатно проверить себя на проф. пригодность, это раз... а второе, если идти по правильному пути, то можно и самостоятельно обучиться и трудоустроиться... Летим, друзья!
* Сайты:
https://it-kamasutra.com
https://it-incubator.by
https://samuraijs.com
* Мы в соц. сетях:
https://vk.com/itkamasutra
https://instagram.com/itkamasutra
https://telegram.me/itkamasutra
* Мои личные VK и Insta:
https://vk.com/d.kuzyuberdin
https://www.instagram.com/it.kamasutra.dimych/
YouTube
Как стать программистом! 3 бесплатных крутых шага! (JavaScript, Front-end)
🚀Стань квалифицированным разработчиком за 9+ месяцев с трудоустройством в IT —INCUBATOR:
Front-end
https://it-incubator.io/front-end/?utm_source=youtube&utm_medium=it-k&utm_campaign=education
Back-end
https://it-incubator.io/back-end/?utm_source=youtu…
Front-end
https://it-incubator.io/front-end/?utm_source=youtube&utm_medium=it-k&utm_campaign=education
Back-end
https://it-incubator.io/back-end/?utm_source=youtu…
Ребят, план по выпускам Пути Самурая..
До числа 5-ого сентября может задержу все 100 выпусков, простите, просто не хочу абы выпускать, а качественно сделать не успеваю... Но я ОЧЕНЬ стараюсь!
Вот что вас ждёт:
87 - shouldComponentUpdate
88 - pure function
89 - TDD, reducer
90 - redux-ducks + refactoring
91 - chrome extensions
92 - TDD, component
93 - styled-components
94 - pretty css
95 - github pages
96 - upload avatar
97 - update profile
98 - captcha
99 - Samurai Junior
100 - react + redux за час
До числа 5-ого сентября может задержу все 100 выпусков, простите, просто не хочу абы выпускать, а качественно сделать не успеваю... Но я ОЧЕНЬ стараюсь!
Вот что вас ждёт:
87 - shouldComponentUpdate
88 - pure function
89 - TDD, reducer
90 - redux-ducks + refactoring
91 - chrome extensions
92 - TDD, component
93 - styled-components
94 - pretty css
95 - github pages
96 - upload avatar
97 - update profile
98 - captcha
99 - Samurai Junior
100 - react + redux за час
https://www.youtube.com/watch?v=rsW9_UtF4jk
VirtualDOM - то, благодаря чему ReactJS так взлетел. Он говорит: настоящий DOM - это дорого, это перерисовки, это ресурсы, дёрганья, и так далее... Давайте Я (REACT) брать брать JSX из компонент и на основе его формировать Virtual DOM - набор оъектов, из который потом буду превращать в настоящий DOM. Зачем этот промежуточный слой нужен?
Для того, чтобы прежде чем идти на основе Virtual DOM строить настоящий DOM... Я смогу сравнить тот VirtualDOM, который у меня уже был, с тем, который я получил в текущей отрисовке из компонент, и... Сравнить их. И если изменения есть, я пойду и точечно эти изменения перерисую в настоящем DOM.
Как результат - коллосальный прирост производительности по сравнению с тем, как с DOM работали раньше (шаблонизаторы, innerHTML и так далее)...
Обязательно гуглим эту тему в официальной документации!
Летим, самураи!!!
VirtualDOM - то, благодаря чему ReactJS так взлетел. Он говорит: настоящий DOM - это дорого, это перерисовки, это ресурсы, дёрганья, и так далее... Давайте Я (REACT) брать брать JSX из компонент и на основе его формировать Virtual DOM - набор оъектов, из который потом буду превращать в настоящий DOM. Зачем этот промежуточный слой нужен?
Для того, чтобы прежде чем идти на основе Virtual DOM строить настоящий DOM... Я смогу сравнить тот VirtualDOM, который у меня уже был, с тем, который я получил в текущей отрисовке из компонент, и... Сравнить их. И если изменения есть, я пойду и точечно эти изменения перерисую в настоящем DOM.
Как результат - коллосальный прирост производительности по сравнению с тем, как с DOM работали раньше (шаблонизаторы, innerHTML и так далее)...
Обязательно гуглим эту тему в официальной документации!
Летим, самураи!!!
YouTube
86 - Virtual DOM - React JS
https://it-incubator.io/education/?utm_source=youtube&utm_medium=it-k&utm_campaign=education - человекоориентированное, честное и профессиональное обучение front-end и back-end разработке гарантированно до трудоустройства за фиксированную стоимость.
Поддержать…
Поддержать…
https://www.youtube.com/watch?v=YEqCI9NMoLI&feature=youtu.be
shouldComponentUpdate (должна компонента обновиться) - это метод жизненного цикла. React вызывает этот метод у компоненты, чтобы спросить компоненту: нужно ли вызывать повторно render, получу ли я, React, от тебя новый JSX. Для этого я дам тебе, компонента, новые пропсы и стейт (а может и не новые, а те же самые, что и были ранее) и ты на основе логики своей внутренней верни мне из этого метода true или false... Если вернешь false, то я не буду вызывать render
Метод и крут и опасен. Есть много деталей. Тем не менее он крут))) Можно сделать поверхностное сравнение объектов и понять, изменились ли данные на входе компонент (props + state), что повлияет на выход (JSX).
Такую простую проверку в этом же методе делает компонент PureComponent. И если мы отнаследуем нашу классовую компоненту не от React.Component, а от React.PureComponent, то мы получим реализованный за нас метод shouldComponentUpdate.
Это касается классовых компонент. А как нам автоматизировать перерисовку (не вызывать перерисовку, если это не нужно) для функциональных компонент? Для этого есть HOC (High Order Component) React.memo, на вход которого мы подаём компонент, который хотим оптимизировать, а на выходе получаем контейнерную компоненту, которая займётся этой проверкой и перерисовкой (хз, наверное внутри создаётся классовая контейнерная компонента PureComponent, но это неточно, нужно гуглить)... Напишите в комменте, если знаете ответ или нагуглили.
Летим, самураи!!!
shouldComponentUpdate (должна компонента обновиться) - это метод жизненного цикла. React вызывает этот метод у компоненты, чтобы спросить компоненту: нужно ли вызывать повторно render, получу ли я, React, от тебя новый JSX. Для этого я дам тебе, компонента, новые пропсы и стейт (а может и не новые, а те же самые, что и были ранее) и ты на основе логики своей внутренней верни мне из этого метода true или false... Если вернешь false, то я не буду вызывать render
Метод и крут и опасен. Есть много деталей. Тем не менее он крут))) Можно сделать поверхностное сравнение объектов и понять, изменились ли данные на входе компонент (props + state), что повлияет на выход (JSX).
Такую простую проверку в этом же методе делает компонент PureComponent. И если мы отнаследуем нашу классовую компоненту не от React.Component, а от React.PureComponent, то мы получим реализованный за нас метод shouldComponentUpdate.
Это касается классовых компонент. А как нам автоматизировать перерисовку (не вызывать перерисовку, если это не нужно) для функциональных компонент? Для этого есть HOC (High Order Component) React.memo, на вход которого мы подаём компонент, который хотим оптимизировать, а на выходе получаем контейнерную компоненту, которая займётся этой проверкой и перерисовкой (хз, наверное внутри создаётся классовая контейнерная компонента PureComponent, но это неточно, нужно гуглить)... Напишите в комменте, если знаете ответ или нагуглили.
Летим, самураи!!!
YouTube
87 - shouldComponentUpdate, PureComponent, memo - React JS
К весне 2021 году запускаем проект, который изменит ход образовательной истории. Следите за новостями
https://help2debug.com/
Поддержать меня и получить доступ к дополнительному контенту можно вот здесь:
https://www.patreon.com/itkamasutra
Помогайте друг…
https://help2debug.com/
Поддержать меня и получить доступ к дополнительному контенту можно вот здесь:
https://www.patreon.com/itkamasutra
Помогайте друг…
Через час буду стримить:
https://www.youtube.com/watch?v=w2DoehdNCEY
Про жизнь, про студентов, про трудоустройства, про неудачи и падения... Про миддлов, про задротство после трудоустройства, про перспективы, про реакт, про нативный js...
https://www.youtube.com/watch?v=w2DoehdNCEY
Про жизнь, про студентов, про трудоустройства, про неудачи и падения... Про миддлов, про задротство после трудоустройства, про перспективы, про реакт, про нативный js...
YouTube
01. Вайтишный стрим: как стать программистом, путь самурая, reactjs, обучение в инкубаторе
Поддержать меня и получить доступ к дополнительному контенту можно вот здесь:
https://www.patreon.com/itkamasutra
#ityoutubersru #itkamasutra
Ребята, в общем, я созрел и с радостью буду в конце каждого месяца общаться с вами на интересные вам темы!!!
…
https://www.patreon.com/itkamasutra
#ityoutubersru #itkamasutra
Ребята, в общем, я созрел и с радостью буду в конце каждого месяца общаться с вами на интересные вам темы!!!
…