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

Поділитися
Вставка
  • Опубліковано 2 жов 2024

КОМЕНТАРІ • 117

  • @ulankot
    @ulankot Рік тому +18

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

    • @ayub_begimkulov
      @ayub_begimkulov  Рік тому +6

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

  • @ayub_begimkulov
    @ayub_begimkulov  Рік тому +14

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

  • @druf5962
    @druf5962 Рік тому +13

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

    • @ayub_begimkulov
      @ayub_begimkulov  Рік тому +3

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

  • @GitarisT12332
    @GitarisT12332 Рік тому +1

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

    • @ayub_begimkulov
      @ayub_begimkulov  Рік тому

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

    • @GitarisT12332
      @GitarisT12332 Рік тому

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

  • @mercury_2379
    @mercury_2379 Рік тому +3

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

  • @МарияЧерешня-у2й

    Удачи!

  • @daniilnem9145
    @daniilnem9145 Рік тому

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

  • @biLLie_wiLLie
    @biLLie_wiLLie Рік тому +2

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

    • @ayub_begimkulov
      @ayub_begimkulov  Рік тому +2

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

  • @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, там можно попрактиковаться.

  • @АлибекЖулмурзин

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

    • @ayub_begimkulov
      @ayub_begimkulov  Рік тому +1

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

  • @nkp1sss361
    @nkp1sss361 Рік тому +2

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

    • @ayub_begimkulov
      @ayub_begimkulov  Рік тому

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

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

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

    • @joker202
      @joker202 Рік тому

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

    • @promoabys
      @promoabys Рік тому

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

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

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

    • @ayub_begimkulov
      @ayub_begimkulov  Рік тому +1

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

  • @c4973
    @c4973 Рік тому +3

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

    • @lying6624
      @lying6624 Рік тому

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

    • @ayub_begimkulov
      @ayub_begimkulov  Рік тому

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

  • @CJIu3eHb
    @CJIu3eHb Рік тому +1

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

    • @ayub_begimkulov
      @ayub_begimkulov  Рік тому +1

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

  • @luckystrike91
    @luckystrike91 Рік тому

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

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

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

  • @magnific8930
    @magnific8930 Рік тому +2

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

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

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

  • @ExtMak
    @ExtMak Рік тому +2

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

    • @ayub_begimkulov
      @ayub_begimkulov  Рік тому

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

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

    Лайк👍

  • @starunski_
    @starunski_ Рік тому +1

    +++ top

  • @jgkdmdevienjjgg8866
    @jgkdmdevienjjgg8866 Рік тому +1

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

    • @aleksprimetv
      @aleksprimetv 4 місяці тому

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

    • @aleksprimetv
      @aleksprimetv 4 місяці тому

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

    • @jgkdmdevienjjgg8866
      @jgkdmdevienjjgg8866 4 місяці тому

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

    • @jgkdmdevienjjgg8866
      @jgkdmdevienjjgg8866 4 місяці тому +1

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

    • @jgkdmdevienjjgg8866
      @jgkdmdevienjjgg8866 4 місяці тому

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

  • @caffeinejavacode1475
    @caffeinejavacode1475 Рік тому

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

    • @ayub_begimkulov
      @ayub_begimkulov  Рік тому

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

  • @promoabys
    @promoabys Рік тому +2

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

    • @ayub_begimkulov
      @ayub_begimkulov  Рік тому +1

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

  • @alexey-pd4ex
    @alexey-pd4ex Рік тому +1

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

    • @ayub_begimkulov
      @ayub_begimkulov  Рік тому

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

  • @Rozalinaag
    @Rozalinaag Рік тому +1

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

    • @ayub_begimkulov
      @ayub_begimkulov  Рік тому +1

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

  • @malsagov6331
    @malsagov6331 Рік тому +3

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

  • @ИванИвпнов-п6ь
    @ИванИвпнов-п6ь Рік тому +2

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

  • @eternalluminous9186
    @eternalluminous9186 Рік тому

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

  • @fedordostoevskiy4209
    @fedordostoevskiy4209 Рік тому +1

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

    • @ayub_begimkulov
      @ayub_begimkulov  Рік тому +1

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

    • @fedordostoevskiy4209
      @fedordostoevskiy4209 Рік тому

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

  • @jamjam3337
    @jamjam3337 Рік тому +1

    👏👍

  • @den1161
    @den1161 Рік тому

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

    • @ayub_begimkulov
      @ayub_begimkulov  Рік тому

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

  • @evgeniymarkitan862
    @evgeniymarkitan862 Рік тому

    😍

  • @2difficult2do
    @2difficult2do Рік тому +1

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

  • @promoabys
    @promoabys Рік тому

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

    • @ayub_begimkulov
      @ayub_begimkulov  Рік тому

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

  • @helplrewerse2925
    @helplrewerse2925 Рік тому

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

    • @ayub_begimkulov
      @ayub_begimkulov  Рік тому

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

  • @ИванИвпнов-п6ь
    @ИванИвпнов-п6ь Рік тому +1

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

  • @myspace2003
    @myspace2003 Рік тому +1

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

  • @tmkplzv7979
    @tmkplzv7979 Рік тому +1

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

  • @tanercoder1915
    @tanercoder1915 Рік тому

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

    • @ayub_begimkulov
      @ayub_begimkulov  Рік тому

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

  • @dmitriyleshchev5848
    @dmitriyleshchev5848 Рік тому +1

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

  • @madrimov448
    @madrimov448 Рік тому +1

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

    • @ayub_begimkulov
      @ayub_begimkulov  Рік тому

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

    • @ayub_begimkulov
      @ayub_begimkulov  Рік тому

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

    • @ayub_begimkulov
      @ayub_begimkulov  Рік тому

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

    • @madrimov448
      @madrimov448 Рік тому

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

  • @ruhidnv
    @ruhidnv Рік тому

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

    • @ayub_begimkulov
      @ayub_begimkulov  Рік тому

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

  • @promoabys
    @promoabys Рік тому

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

    • @ayub_begimkulov
      @ayub_begimkulov  Рік тому

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

    • @promoabys
      @promoabys Рік тому

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

  • @lyubishkin
    @lyubishkin Рік тому

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

    • @ayub_begimkulov
      @ayub_begimkulov  Рік тому

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

  • @web__dev
    @web__dev Рік тому

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

  • @kirillpodolinniy309
    @kirillpodolinniy309 Рік тому

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

    • @ayub_begimkulov
      @ayub_begimkulov  Рік тому

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

    • @kirillpodolinniy309
      @kirillpodolinniy309 Рік тому

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

  • @johnd1431
    @johnd1431 Рік тому

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

  • @Pitbull20121000
    @Pitbull20121000 Рік тому +1

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

    • @ayub_begimkulov
      @ayub_begimkulov  Рік тому +4

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

    • @Pitbull20121000
      @Pitbull20121000 Рік тому

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

  • @kulakofft4
    @kulakofft4 Рік тому +2

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

    • @ayub_begimkulov
      @ayub_begimkulov  Рік тому +2

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