Полиморфизм в реальной жизни: 3 кейса с кодом на TypeScript

Поділитися
Вставка
  • Опубліковано 26 чер 2024
  • 🔥 Курс «Основы TypeScript»: ru.hexlet.io/link/FrW8Gf
    🔥 Вакансии Space307: space307.team
    ✅ Полезные вебинары по программированию каждую неделю: ru.hexlet.io/link/X5mGSs
    Что такое полиморфизм и какие виды полиморфизма бывают? Как реализуется полиморфизм на TypeScript?
    Иван Горбунов предлагает рассмотреть 3 задачи из реальной жизни и разобраться в теме подробнее и на примерах. Мы разберём типы полиморфизма, функции render, валидацию type guard и многое другое.
    Если видео было для вас полезным, ставьте лайк и поделитесь им с друзьями. Подписывайтесь на наш telegram-канал: t.me/hexlet_ru
    ____
    🔗 Полезные ссылки:
    - Подкаст «307 номадов»: ‪@Space307‬
    - Комьюнити Хекслета: t.me/hexletcommunity
    - Что такое TypeScript и зачем он нужен: ru.hexlet.io/link/vwnhDC
    - Как устроена система типов в TypeScript: ru.hexlet.io/link/YKscLL
    - Другие вебинары для разработчиков: • Уроки и доклады для пр...
    ____
    00:00:00 интро
    00:00:23 чем занимаются Иван Горбунов и Space307
    00:02:26 почему мы говорим про полиморфизм
    00:04:07 цитата ChatGPT о полиморфизме в TypeScript
    00:04:53 что такое полиморфизм и типы полиморфизма
    00:06:18 полиморфизм подтипов
    00:09:23 ad-hoc полиморфизм
    00:13:34 параметрический полиморфизм
    00:17:09 обобщённые типы
    00:19:22 обобщённые функции
    00:20:59 про undefined
    00:24:12 что случится, если использовать контекст (this)
    00:26:50 пример массива для обобщённых функций и type guard
    00:34:08 reduce в примере
    00:37:14 пример из мира CRM: функция render, которая принимает массив данных и массив колонок и возвращает двухмерный массив строк, который можно отрендерить; колонки строго связаны с данными по именам, и возвращаемые значения рендерятся с помощью функций рендеров, которые передаются в колонки
    01:04:54 для платёжной страницы, которые видит пользователь: функция GetSafeRenderer, которая обязывает передавать валидатор (type guard) в случае, когда приложение ожидает получить props; тип props жестко связан с типом, который обеспечивает type guard
    01:18:14 обобщенные страницы используются для создания фабрики type guard
    01:44:18 перегрузки и чистий код
    01:47:02 merge-конфликт
    01:47:40 typescript - тьюринг полный и вложенность рекурсий
    #TS #TypeScript #полиморфизм #хекслет

КОМЕНТАРІ • 11

  • @HexletOrg
    @HexletOrg  9 місяців тому +2

    Код, который разбирали на вебинаре: codesandbox.io/s/t-extends-fun-384xp2

  • @MrAndreyVasilev
    @MrAndreyVasilev 9 місяців тому +2

    Иван прекрасен. Жму руку. Ставлю лайк

  • @34meff
    @34meff 9 місяців тому +3

    Батюшки, вот это контентище!

  • @mr.e.a.8967
    @mr.e.a.8967 3 місяці тому

    Прикольно увидеть коллегу в ролике школы, в которой обучаюсь)

  • @GeorgeMadiarov
    @GeorgeMadiarov 9 місяців тому +1

    Спасибо вам огромное! Крутейший доклад и очень красивый код получился :)

  • @karakurtkobane
    @karakurtkobane 9 місяців тому +1

    Заставили снова всей душой любить и ненавидеть TS. Теперь хочется ввернуть в проект чего-то такого же

  • @alexeyosin9634
    @alexeyosin9634 9 місяців тому

    Парни, привет! Я знаю, что он давно от вас ушел,но вы не знаете где, собственно Рахим и куда он пропал? Хотелось бы снова его когда-нибудь услышать ну или хотя бы узнать, что с ним в все в порядке. Спасибо!

    • @HexletOrg
      @HexletOrg  6 місяців тому

      У него всё хорошо) Он занят своими проектами