Как я стал профессионалом TypeScript

Поделиться
HTML-код
  • Опубликовано: 25 дек 2024

Комментарии • 118

  • @ulankot
    @ulankot Год назад +18

    + за такие видео. Хочется максимально прокачаться в Typescript

    • @ayub_begimkulov
      @ayub_begimkulov  Год назад +6

      Спасибо за фидбэк! Планирую делать плейлист в ближайшие пару недель.

  • @ayub_begimkulov
    @ayub_begimkulov  Год назад +14

    Друзья, как и сказал, в следующие пару недель планирую выпускать видео по TS.
    Буду покрывать темы из показанные на одном из слайдов, однако если есть что-то конкретное, что вы хотели бы увидеть - пишите, обязательно прочитаю и постараюсь объяснить в грядущих роликах.
    UPD: Заметил, что в видео была сделана ошибка. Я использую "Computed Types", вместо "Mapped Types", на одном из слайдов. Поэтому не надо пугаться, это не какой-то новый синтаксис/функционал.

  • @malsagov6331
    @malsagov6331 Год назад +3

    Спасибо за контент Айюб!

  • @promoabys
    @promoabys Год назад +2

    Аюб, спасибо за видео.
    Как введение хорошо, но ждём от тебя больше практики и желательно от простого к сложному

    • @ayub_begimkulov
      @ayub_begimkulov  Год назад +1

      Привет. Спасибо за фидбэк! Да, в планах заснять дальше более практические видео.

  • @tmkplzv7979
    @tmkplzv7979 Год назад +1

    Спасибо, Айюб.

  • @2difficult2do
    @2difficult2do Год назад +1

    Спасибо за дельные советы👍

  • @GitarisT12332
    @GitarisT12332 Год назад +1

    Буду безумно рад, если реализуешь задумку, с нетерпением жду

    • @ayub_begimkulov
      @ayub_begimkulov  Год назад

      Если ты про плейлист, то уже начал. Должно скоро выйти первое видео по TS.

    • @GitarisT12332
      @GitarisT12332 Год назад

      @@ayub_begimkulov да, про него, огонь 🔥

  • @druf5962
    @druf5962 Год назад +13

    спасибо за видео. радуют изменения в подаче контента. раньше:
    1) было много подкашливаний, шмыганий носом, зевков))
    2) скачки звука (чаще всего было очень тихо)
    3) равное повествования
    4) отсутствие вебки
    извиняюсь если слишком прямо написал. сейчас намного повысилось качество видео
    хотелось бы увидеть какой-то приближенный к реальному - большой проект, где можно было собрать побольше кейсов из прошлых видео и показать, как оно работает на практике с большим кол-м компонентов, постоянными запросами, усложненной логикой и т.д. Давно ищу подобный проект, на просторах ютуба такого попросту нет

    • @ayub_begimkulov
      @ayub_begimkulov  Год назад +3

      Спасибо за то, что уделил внимание и написал комментарий. Да, над качеством до сих пор активно работаю.
      Касательно проекта - уже давно хотел что-то сделать, но вот все думаю, как это лучше упаковать. Так как формат "включил камеру и пишешь код" - не очень хорошо заходит. Может стоит стримы делать раз в неделю...
      В общем, обязательно подумаю на эту тему. Спасиб за предложение!

  • @dmitriyleshchev5848
    @dmitriyleshchev5848 Год назад +1

    Интересно, спасибо за видео!

  • @МарияЧерешня-у2й
    @МарияЧерешня-у2й Год назад +1

    Удачи!

  • @myspace2003
    @myspace2003 Год назад +1

    Молодец! Продолжай в том же духе!!!

  • @johnd1431
    @johnd1431 Год назад

    Спасибо за мотивацию и советы!

  • @mercury_2379
    @mercury_2379 Год назад +3

    комментарий в поддержку канала

  • @jgkdmdevienjjgg8866
    @jgkdmdevienjjgg8866 Год назад +1

    Сейчас сам начал изучать advanced тайпскрипт, т.к. на работе часто бывает необходимость, приходится делать "как-нибудь" и не очень удобно. До этого были попытки изучить, смотрел какой-то видеокурс, но там было столько воды и basics что я просто засыпал и до сложной части не дошел. Сейчас нашел курс "Professional TypeScript Training by Matt Pocock" (он дорогой, но есть на торрентах), могу смело рекомендовать, там 3 части, я пока 1 прошел. Проходить не скучно и на каждые несколько видео какую-то новую инфу узнаешь о синтаксисе и возможностях. Строится на базе type challenge как из этого видео, но с подробными видео-объяснениями что и почему (на англ). Это как раз для уровня среднего разработчика который уже дружит с тайпскриптом на проектах, но не врубается в хитросплетения выводов типов в библиотеках. Думаю что пройду этот курс и дальше как раз пойду решать type challenge-и и просто доки официальные читать

    • @aleksprimetv
      @aleksprimetv 7 месяцев назад

      бро ну как прошел? есть профит?

    • @aleksprimetv
      @aleksprimetv 7 месяцев назад

      можешь торрентфайлом поделится?

    • @jgkdmdevienjjgg8866
      @jgkdmdevienjjgg8866 7 месяцев назад

      @@aleksprimetv вроде с rutracker качал

    • @jgkdmdevienjjgg8866
      @jgkdmdevienjjgg8866 7 месяцев назад +1

      @@aleksprimetv Не, подзабил. Но курс толковый. Но надо его практикой подкреплять долгое время, т.к. почти все из головы выветрилось, т.к. по факту на проекте сложный тайпскрипт не юзаю

    • @jgkdmdevienjjgg8866
      @jgkdmdevienjjgg8866 7 месяцев назад

      @@aleksprimetv Поищи на рутрекере, вроде там брал

  • @daniilnem9145
    @daniilnem9145 Год назад

    Отличное видео👍🏻 спасибо 🙏🏻

  • @biLLie_wiLLie
    @biLLie_wiLLie Год назад +2

    Орфография в превью улыбнула)

    • @ayub_begimkulov
      @ayub_begimkulov  Год назад +2

      Лол, спасибо, что написал. Сейчас поправлю.
      Edit: исправил.

  • @c4973
    @c4973 Год назад +3

    Аюб, спасибо за дельные советы, полезные линки и направление. Начал проходить курс на Udemy за 11$, так как самому не все темы понятные по документации. Попрошу от лица джунов - можешь подробнее разжевывать сложные темы, допустим utility types (Pick, Omit, Extract), в плане - как именно это работает и главное когда это можно заюзать в каком случае. Спасибо за понимание.

    • @lying6624
      @lying6624 Год назад

      Ну потому что Вам нужно внимательно читать документацию. Pick берёт все типы, которые Вы указываете. Omit берёт всё, КРОМЕ тех типов, которые Вы указали.

    • @ayub_begimkulov
      @ayub_begimkulov  Год назад

      Ок, постараюсь уделять больше внимания деталям.
      Рад слышать, что инвестируешь в свое обучение и развитие - это точно откупится!

  • @magnific8930
    @magnific8930 Год назад +2

    может кому то сэкономлю время и нервы: иногда стоит просто написать ctrl + p и >TS restart server, а видео топ))

  • @jamjam3337
    @jamjam3337 Год назад +1

    👏👍

  • @АлександрКалинин-ъ6й

    Лайк👍

  • @ИванИвпнов-п6ь
    @ИванИвпнов-п6ь Год назад +1

    круто, как раз начал учить ts

  • @ExtMak
    @ExtMak Год назад +2

    Спасибо за видео, Аюб! Расскажи, пожалуйста, как лучше всего типизировать ошибки в try/catch блоках?

    • @ayub_begimkulov
      @ayub_begimkulov  Год назад

      Когда в catch ловишь ошибку - тип у нее unknown (если стоит strict мод). Дальше уже надо работать через type guards - эта тема будет разобрана в видео, которые выходит сегодня.

  • @alexey-pd4ex
    @alexey-pd4ex Год назад +1

    Отличное видео, качество на высоте!) Есть в планах сделать видео о том как попал сеньором, как проходил собес и тд..?)

    • @ayub_begimkulov
      @ayub_begimkulov  Год назад

      Да, думаю сделаю как-нибудь.

  • @rustamakhmetyanov4404
    @rustamakhmetyanov4404 Год назад +4

    Какой то джедайский уровень типизации =)

    • @ayub_begimkulov
      @ayub_begimkulov  Год назад +2

      Все разберем обязательно, не волнуйся.

  • @helplrewerse2925
    @helplrewerse2925 Год назад +1

    Кайф, хочется посмотреть про продвинутые возможности JS, TS, React мозможно паттерны проектирования, лучшие практики, возможно какие-то сложные или фундаментальные вещи.

    • @ayub_begimkulov
      @ayub_begimkulov  Год назад

      Данные видео обязательно будут выходить. Если есть что-то конкретное, что интересует сейчас - тоже пиши. А так, спасибо за фидбэк!

    • @helplrewerse2925
      @helplrewerse2925 Год назад

      @@ayub_begimkulov ну например работа с WebSocket, WebWorkers

  • @NewDimix
    @NewDimix Год назад +2

    Короче всем новичкам советуешь библиотеку свою писать для понимания тайпскрипта?

    • @ayub_begimkulov
      @ayub_begimkulov  Год назад

      Не совсем. Я же в конце дал линк на type-challenges, там можно попрактиковаться.

  • @ИванИвпнов-п6ь
    @ИванИвпнов-п6ь Год назад +2

    рубрика с решением задач зайдёт

  • @nkp1sss361
    @nkp1sss361 Год назад +2

    основная проблема с тайпскриптом это работа с DOM. Понятно что можно все заделать через as, но я не думаю что это практично. Хотелось бы про это услышать от вас

    • @ayub_begimkulov
      @ayub_begimkulov  Год назад

      А какие именно у тебя проблемы при работе с DOM?
      Я согласен, что там не все идеально, но интересно, с чем именно у тебя возникают сложности?

    • @SaidKilamatov
      @SaidKilamatov 22 дня назад

      на нативном ts может быть и будут проблемы,но большиноство сейчас пишет на фреймворках что используют Vdom и напрямую к DOM API не обращаются, поэтому не думаю что это прям большая проблема. да и писать утверждение это как писать type только со своими особенностями компилятора

  • @web__dev
    @web__dev Год назад

    Больше видео про TS с задачками и объяснением

  • @madrimov448
    @madrimov448 Год назад +1

    будет ли видео про эслинта

    • @ayub_begimkulov
      @ayub_begimkulov  Год назад

      А что конкретно хочется увидеть? Таких видео же много а интернете.

    • @ayub_begimkulov
      @ayub_begimkulov  Год назад

      А что конкретно хочется увидеть? Таких видео же много а интернете.

    • @ayub_begimkulov
      @ayub_begimkulov  Год назад

      А что конкретно хочется увидеть? Таких видео же много а интернете.

    • @madrimov448
      @madrimov448 Год назад

      Мне интересно, как вы его используете

  • @tanercoder1915
    @tanercoder1915 Год назад

    Может замутить плейлист с решением задач из этого репо?

    • @ayub_begimkulov
      @ayub_begimkulov  Год назад

      Я думаю в конце плейлиста чуть попрактикуемся, ну и по ходу разбора тем тоже обязательно.

  • @Rozalinaag
    @Rozalinaag Год назад +1

    Хотелось бы разбор темы union, enam когда что использовать, в чем разница

    • @ayub_begimkulov
      @ayub_begimkulov  Год назад +1

      Записал себе, постораюсь разобрать!

  • @CJIu3eHb
    @CJIu3eHb Год назад +1

    Понятно, что наименование переменных - одна из двух сложнейших вещей в программировании, но все-таки к неймингу поответственнее надо относится, а в обучающих примерах особенно. Например, Value лучше было бы обозвать Obj или Target (или еще как-то), т.к. при присутствии Keys и Key ассоциация с Value идет со значением свойства объекта, нежели с объектом. Надеюсь, что в дальнейшем будет разбор этого примера, т.к. сам я сходу не осилил понять.

    • @ayub_begimkulov
      @ayub_begimkulov  Год назад +1

      Спасибо за конструктивную критику! Постараюсь обращать больше внимания на нейминг.
      Касательно тем - обязательно все разберем, переживать не надо.

  • @den1161
    @den1161 Год назад

    Интересно так же как тестировать проэкт на ts

    • @ayub_begimkulov
      @ayub_begimkulov  Год назад

      Если нужно тестировать код - то также, через jest. Никаких особенностей не должно быть.
      Если нужно тестировать типизацию - то тут есть некоторые особенности, про них надо будет снять как-нибудь видео.

  • @kirillpodolinniy309
    @kirillpodolinniy309 Год назад

    Аюб, большое спасибо за видео, очень помогает ваш канал расти дальше. Скажите, пожалуйста, у вас техническое образование или иное? И какое у вас в целом отношение к этому - должен ли разработчик обязательно его иметь по вашему мнению? я в прошлом врач, но в целом не нашел пока ограничений, которые мешают сейчас в работе. Интересная ваша позицию по этому вопросу.

    • @ayub_begimkulov
      @ayub_begimkulov  Год назад

      Рад, что мои видео приносят пользу! Касательно высшего - у меня его нет.
      Я считаю, что нету смысла его получать, если нет четкой причины, для чего оно понадобиться. В плане работы и возможностей - проблем вообще не было.

    • @kirillpodolinniy309
      @kirillpodolinniy309 Год назад

      @@ayub_begimkulov Спасибо за ответ:)

  • @ВячеславМаксютов-у5н

    вот это я понимаю синьер

  • @НикитаКузьменко-е6р

    можно nikname англоязычного ютубера по тсу, про которого говорилось в видео?) заранее спасибо!

  • @evgeniymarkitan862
    @evgeniymarkitan862 Год назад

    😍

  • @promoabys
    @promoabys Год назад

    Сталкивались ли с такой проблемой при импорте зависимостей в TS?
    TS не хочет по дефолту в импорте подхватывать index файл и перестаёт ругаться на импорт, что не находит то что импортируется или входящий модуль, только при явном прописывании его в конце пути. Конфиг перерыл, не нашёл где бы это решилось. Возможно это от версии ТС зависит и где-то уже такой проблемы нет

    • @ayub_begimkulov
      @ayub_begimkulov  Год назад

      Привет. Я так понял у тебя index файл автоматом не тянется при импорте?
      Попробуй “moduleResolution: node” поставить, должно помочь.

    • @promoabys
      @promoabys Год назад

      @@ayub_begimkulov Да, проблема такая. “moduleResolution: node” есть.
      У нас импорты на алиасах, и я смотрю, что без них такой проблемы нет. TS не ругается. Что-то именно из-за алиасов.
      Что-то гуглится на эту тему - помучаю потом. Спасибо ))

  • @promoabys
    @promoabys Год назад

    У меня есть вопрос как бы правильно или как вы разбиваете хранение типов для модуля или большой компоненты. В одном файле уже тесно, а на какие сущности это оптимально разбить ещё не решил

    • @ayub_begimkulov
      @ayub_begimkulov  Год назад

      Все зависит от ситуации. Но я бы не боялся того, что много типов в одном файле. Если прям совсем не удобно, можно рядом сделать файл types.ts, тоже нормальный вариант.

  • @caffeinejavacode1475
    @caffeinejavacode1475 Год назад

    Я больше люблю бекенд когда вижу когда фронтенд разработчики оценивают фичи из бекенд которые были реализованы в TypeScript.

    • @ayub_begimkulov
      @ayub_begimkulov  Год назад

      Можешь раскрыть мысль, не совсем понял. Тебе нравится, когда фронты проводят ревью бекенд кода на TypeScript? Если да, то интересно почему?)

  • @fedordostoevskiy4209
    @fedordostoevskiy4209 Год назад +1

    Айюб, 👀👍👍.Кстати, как по мне документация ts сухая как mdn, могли б и поподробнее написать.

    • @ayub_begimkulov
      @ayub_begimkulov  Год назад +1

      У них там бардак какой-то, есть новая и старая дока. Но handbook вроде норм, темы объясняются там не плохо.
      MDN же больше как api reference.

    • @fedordostoevskiy4209
      @fedordostoevskiy4209 Год назад

      @@ayub_begimkulov , а мне кажется, что я как разработчик не должен бороздить просторы интернета в поисках ответов как это работает. Handbook хорош, но на старте. Type compatibility очень невнятно написана, там тьма ньюансов.Многие грешат на
      Microsoft, что им пофиг на разрабов.

  • @lyubishkin
    @lyubishkin Год назад

    Аюб привет. Спасибо за качественный контент. А у тебя есть высшее образование? И что ты думаешь по поводу него?

    • @ayub_begimkulov
      @ayub_begimkulov  Год назад

      Привет. Высшего нету. Мое мнение такое - если нету четкой причины, почему нужен диплом, то стоит потратить время на что-то более продуктивное.

  • @starunski_
    @starunski_ Год назад +1

    +++ top

  • @luckystrike91
    @luckystrike91 Год назад

    я страдаю от своего желания покрывать все типизацией и максимально обобщать код. писал расширение для хрома а по итогу внутри образовались 2 библиотеки)

  • @helplrewerse2925
    @helplrewerse2925 Год назад

    По поводу ошибок: ошибки в большинстве случаев кал и нужно читать только самый конец, но это тоже не всегда помогает бывают случаи когда и сёрч не помогает тогда я обычно пишу ts-ignore и о чудо перед коммитом убираю игнор и тс не ругается, но боюсь так будет работать не у всех если не в падлу хорошо помогает вопрос "а что именно я там натипизировал и что конкретно я хочу передать или получить?"

    • @ayub_begimkulov
      @ayub_begimkulov  Год назад

      В целом, обычно все ошибки у меня получалось нагуглить. Главное часть специфичную под проект вырезать. А так, еще можно добавлять ts-expect-error. Он будет давать ошибку, если строчка под ним уже пофикшена. Как раз можно вовремя понять, какие изменения в код поправили ошибку.

  • @ruhidnv
    @ruhidnv Год назад

    круто, сделай видео, где разрабатываешь проект за определенный промежуток времени

    • @ayub_begimkulov
      @ayub_begimkulov  Год назад

      Да, часто пишут, надо подумать в эту сторону.

  • @Pitbull20121000
    @Pitbull20121000 Год назад +1

    Круто, но лучше бы запилил пару уроков по TS

    • @ayub_begimkulov
      @ayub_begimkulov  Год назад +4

      Привет. Это первое видео в плейлисте, уроки будут выходить в ближайшие пару недель.
      Тут решил больше поделиться историей + советами + местом, где можно попрактиковаться.

    • @Pitbull20121000
      @Pitbull20121000 Год назад

      @@ayub_begimkulov шикарно , спасибо

  • @АлибекЖулмурзин
    @АлибекЖулмурзин Год назад +1

    Братан, видео топ, но я не могу удержаться от замечаний.
    МЕНЬШЕ, СИЛЬНО МЕНЬШЕ пространных рассуждений и повторов.
    Посмотри на Ульби для примера. Чел говорит ОЧЕНЬ КОРОТКУЮ теорию и потом херачит практику.
    Так и тут, нам не надо вступление на 8 минут. Пары минут за глаза и сразу к "пользе для зрителя".
    Факт того, что "надо учить Тайпскрипт" итак понятен всем, кто смотрит это видео, не надо объяснять это ещё раз ~5 минут времени.
    Речь. Чувак, это не стримы, это Ютуб. Я понимаю что монтировать может быть лень, но насколько было бы короче твоё видео, если бы ты просто написал текст на листочке, а потом вычеркнул бы оттуда "воду"? Все вводные, подробности итп хороши для видео разговорного жанра, типа "как я стал программистом", "как я стал сеньором" итп. Но ты задаёшь конкретную тему и зритель ждёт конкретную, сжатую информацию.
    В остальном, очень достойно, спасибо.
    P.S всё вышесказанное является моим личным мнением и на истину в последней инстанции не претендует.

    • @ayub_begimkulov
      @ayub_begimkulov  Год назад +1

      Спасибо за подробный комментарий. Касательно длинны видео - да, есть такая проблема. Над речью тоже надо еще поработать.
      В след раз постараюсь больше уделить внимания первоначальному плану и сценарию.
      Еще было интересно, что ты думаешь касательно предыстории, которую я рассказал в начале, тоже вода? Или просто нужно было сократить?

  • @викторгенералов-о8ч

    Работаю пол года с тсом, пока мое мнение таково, что это говно беспонтовое. Не помогает ни мне, ни другим разрабам которые будут работать с моим кодом.

    • @joker202
      @joker202 Год назад

      Это значит что вы не разобрались с ним, возможно в команде нет опытного человека который настроил бы все и объяснял что и как работает

    • @promoabys
      @promoabys Год назад

      Утомительно бывает выводить типизацию, когда вроде всё работает.
      Но разбираться в чужом коде при наличии ТС гораздо проще.
      Если один работаешь то до определённого объема кода будет комфортно без ТС, но потом накроет )) В команде без ТС уже проблемно

    • @викторгенералов-о8ч
      @викторгенералов-о8ч Год назад

      @@promoabys Мне в чужом коде помогают разобраться инкапсуляция, хороший нейминг и jsdoc. А ТС заставляет разбираться еще и в чужом тсе)

    • @ayub_begimkulov
      @ayub_begimkulov  Год назад +1

      Я думаю тут ребята правильно сказали. Пока нету хорошего понимания TS и инфраструктуры вокруг него - то будет сложно с ним работать. Однако я не могу представить работу на большом проекте без строгой типизации.
      Я бы посоветовал не принимать решение так быстро и попробовать чуть потянуть навыки работы с типизированным кодом.

  • @kulakofft4
    @kulakofft4 Год назад +2

    Может ты перестанешь называть тИпы типАми? Звучит ущербно

    • @ayub_begimkulov
      @ayub_begimkulov  Год назад +2

      Даже не задумывался об этом. Дельное замечание - постараюсь в следующих видео исправить.

  • @eternalluminous9186
    @eternalluminous9186 Год назад

    вода вода и вода