Функциональное программирование на JavaScript

Поделиться
HTML-код
  • Опубликовано: 5 окт 2024
  • Примеры кода: github.com/How...
    Курс «Основы программирования» с примерами на JavaScript habr.com/ru/po...
    #функциональное #программирование #парадигма #javascript #js #лекции #кпи

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

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

    Очень наглядно, все по полочкам раскладывается при сравнении двух парадигм
    Спасибо!

  • @mazy8195
    @mazy8195 Год назад +5

    Лучший учитель в мире!

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

    02:00 таблица сравнения императивного и функционального подходов
    11:38 примеры с идентификаторами
    27:00 примеры с условиями
    29:50 итерирование
    33:10 примеры с for
    35:45 контексты
    38:55 инстанциирование
    46:00 пулы
    49:40 наследование
    52:40 виртуальные классы и методы
    53:45 доступ к свойствам
    55:24 боксирование
    59:00 расширение
    01:00:55 асинхронность
    01:03:10 синтаксический сахар и асинхронность
    01:06:55 кэширование
    01:08:15 чеининг
    01:12:35 маппинг
    01:24:05 пример чейнинга

  • @СмтрТб
    @СмтрТб 4 года назад +4

    23:00 такой вариант функции (...args) => ({...args}) не годиться для выбранного примера. Тк получиться объект, в качестве свойств у него будут индексы элементов массива args, а не height, r1, r2 и тд.
    Проверка: const fn = (...a) => ({...a}); const x = 1, y = 2; console.log(fn (x, y)).

  • @TheTexPro
    @TheTexPro 2 года назад +1

    Спасибо большое!

  • @NVsquare
    @NVsquare 6 лет назад +9

    Чума. Отличная лекция. Очень долго искал что-то схожее со скринкастами Соракса и вот наконец они появились

    • @ArtemVerbat
      @ArtemVerbat 4 года назад +1

      Даже близко ничего схожего с Сораксом не увидел

    • @myrichstory
      @myrichstory 3 года назад +1

      посмотри канал Владилена Минина

    • @johnstrayk5208
      @johnstrayk5208 3 года назад

      @@myrichstory сравнил😆

    • @TimurShemsedinov
      @TimurShemsedinov  2 года назад +3

      @@myrichstory если не стошнит, конечно

    • @myrichstory
      @myrichstory 2 года назад

      @@TimurShemsedinov 🤣

  • @Antonio-fm1sq
    @Antonio-fm1sq 3 года назад +1

    Спасибо!

  • @kozrkozr2626
    @kozrkozr2626 5 лет назад +5

    Добрый день, спасибо большое за уроки! Скажите, пожалуйста, плейлист (функциональное программирование) стоит смотреть с этого видео ?

    • @TimurShemsedinov
      @TimurShemsedinov  5 лет назад +3

      Нет, видео нужно смотреть в том порядке, в котором они в плейлисте

  • @masterguyver84
    @masterguyver84 5 лет назад +1

    Спасибо! А как Вы считаете в будущем функциональная парадигма вытеснит объектную?Либо даже точнее по вопрос даже не в этом, выйдет функциональная на уровень и будет в ровень с объектной? Вот еще вопрос дельный в науке при расчетах задач теории упругости и механики твердого тела методом конечных элементов в системах автоматизации пользовались объектной парадигмой на С++ и потом С# с вуза моего коллеги. На предыдущих уроках Вы говорили объектного программирования для науки недостаточно полностью. Какой парадигмой сейчас можно пользоваться для программирования задач научных, больше функциональной? Мне это очень интересно. Так как, если выбрал сначала неправильный путь, потом считай трехкратно усложнил себе задачу.

    • @TimurShemsedinov
      @TimurShemsedinov  5 лет назад +5

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

    • @masterguyver84
      @masterguyver84 5 лет назад

      @@TimurShemsedinov Интересно что еще смогут придумать. Быть может совершат революцию и создадут новую парадигму как синтез всех что у нас есть теперь?! Все же очень здорово, что Вы показываете эти подходы. Я ничего кроме объектной парадигмы и объектного подхода ранее и не знал даже.

  • @demimurych1
    @demimurych1 2 года назад +4

    Любопытное видео в котором можно разобраться только изменив его название. Например на:
    Методология программирования *содержащее некоторые приемы, отдаленно напоминающие функциональное программирование*
    После этого все становится на свои места.
    Если же Вы хотите действительно понять, что такое функциональное программирование, как его используют в JS, вникнуть в то, почему оно снова становится промышленным стандартом, то рекомендую лекции Виталия Брагилевского.
    Начать можно например с этой ruclips.net/video/T66wMYbtfNA/видео.html
    А уже после того, как освоитесь и напишите хотя бы сотню строчек кода, можно послушать и суррогаты.

    • @Xeon83
      @Xeon83 2 года назад +1

      Брагилевский давно отстал от развития js, показывает примеры на каком-то говнокоде. Абсолютно не умеет доносить информацию, скучные и не интересные доклады. Ему бы лучше у Савватеева поучиться, как можно интересно про математику рассказывать!

  • @andrii_suprun_ua
    @andrii_suprun_ua 2 года назад +1

    Главный вывод - умным не будет написать все только в одном подходе. То есть js живет в двух мирах соединяя функциональный и императивный вместе.

    • @TimurShemsedinov
      @TimurShemsedinov  2 года назад

      И еще много других подходов

  • @inzoddex8312
    @inzoddex8312 3 года назад +1

    Что за редактор? такой же хочу

  • @AlexDia
    @AlexDia 3 года назад +1

    Пачиму не в блокноте??? Где мышка??? Как я буду смотреть уроки без курсора

    • @TimurShemsedinov
      @TimurShemsedinov  3 года назад

      Курсор - это зеленый прямоугольник, мигает и буквы пишет

  • @dimanazdratenko
    @dimanazdratenko 5 лет назад +1

    супер, но немного смущает динозавровый софт. Что за редактор?)) VScode, Web Storm - welcome to 2k18)))

    • @TimurShemsedinov
      @TimurShemsedinov  5 лет назад +7

      Midnight Commander имеет большое сообщество, активно поддерживается, выходят новые версии, код лежит тут github.com/MidnightCommander/mc это открытое ПО, лицензия GNU GPL 3, я не пользуюсь проприетарным ПО даже бесплатным. Конечно, есть vim, emacs, но я пользуюсь mc 20 лет, c 1998 года и мне все удобно.

    • @TheFyzu
      @TheFyzu 5 лет назад +5

      В чем смущение? Сложно код читать или что?

    • @yevhenbadorov7961
      @yevhenbadorov7961 5 лет назад +3

      что вам всем так не нравятся консольные редакторы? Какая разница чем пользоваться, если удобно.

    • @xDiezz
      @xDiezz 5 лет назад +9

      мамкины программисты набежали, учат кодить копипастом в "супер-редакторах"

  • @kawaikaino5277
    @kawaikaino5277 5 лет назад +1

    Супер много говоришь с минимум примеров - хотя не удивительно с таким-то редактором

    • @vadymbiliuk1505
      @vadymbiliuk1505 3 года назад

      Редактор всему голова, да. Это тебя на невероятных лабораторных работах с c++ научили?)

  • @ДмитрийБеляев-ъ1з
    @ДмитрийБеляев-ъ1з 4 года назад +1

    Открываем приведенный в начале гитхаб и видим кучу неизмененных форков, немного кривых примеров и все. Сразу становится ясно что ожидать от этого теоретика. Запускаем видео и сразу же видим сравнение функционального программирования с императивным. Что? Вы серьезно сравниваете сладкое с горячим? Смотрим дальше, лектор начинает нести еще больше дичи, сопоставляя ООП с императивным программированием, приводя при этом примеры структурного программирования.
    Не слушайте народ теоретиков, если не хотите каши в голове.

    • @buddahJesus
      @buddahJesus 4 года назад +1

      Кого тогда слушать? Примеры чтоль приведите нормальных преподов, которые не теоретики и имеют вагон опыта в продакшне.

    • @TheTexPro
      @TheTexPro 2 года назад +1

      Критикуешь - предлагай. На твоем канале ничего подобного нет...
      Я перебрал множество видео материалов на ютубе и остановился на этом авторе, который в лучших традициях университета и в типичной преподавательской манере объясняет ГОДНУЮ теорию. НА гитхабе имеются компактные плейлисты по разным темам.

  • @kawaikaino5277
    @kawaikaino5277 5 лет назад +1

    Да используйте нормальный редактор!!! Че это за уг-типа дос? Неужели без указателя удобно? Или это типа подход такой: чем больше-усложняешь рабочий процесс , тем круче ты программист

    • @TimurShemsedinov
      @TimurShemsedinov  5 лет назад +3

      Это mcedit, в нем есть все, что мне нужно для работы. Какие такие указатели?

    • @yevhenbadorov7961
      @yevhenbadorov7961 5 лет назад +2

      @@TimurShemsedinov наверное, имелся в виду указатель мыши.

    • @TimurShemsedinov
      @TimurShemsedinov  5 лет назад +14

      @@yevhenbadorov7961 я мышью не программирую, наверно я отстал

    • @yevhenbadorov7961
      @yevhenbadorov7961 5 лет назад +5

      @@TimurShemsedinov для этого нужно поставить "нормальный редактор", который запускается несколько секунд и занимает несколько сотен МБ в памяти

    • @ziyadseykhanov3967
      @ziyadseykhanov3967 5 лет назад +25

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