Функциональное программирование на JavaScript
HTML-код
- Опубликовано: 5 окт 2024
- Примеры кода: github.com/How...
Курс «Основы программирования» с примерами на JavaScript habr.com/ru/po...
#функциональное #программирование #парадигма #javascript #js #лекции #кпи
Очень наглядно, все по полочкам раскладывается при сравнении двух парадигм
Спасибо!
Лучший учитель в мире!
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 пример чейнинга
23:00 такой вариант функции (...args) => ({...args}) не годиться для выбранного примера. Тк получиться объект, в качестве свойств у него будут индексы элементов массива args, а не height, r1, r2 и тд.
Проверка: const fn = (...a) => ({...a}); const x = 1, y = 2; console.log(fn (x, y)).
Спасибо большое!
Чума. Отличная лекция. Очень долго искал что-то схожее со скринкастами Соракса и вот наконец они появились
Даже близко ничего схожего с Сораксом не увидел
посмотри канал Владилена Минина
@@myrichstory сравнил😆
@@myrichstory если не стошнит, конечно
@@TimurShemsedinov 🤣
Спасибо!
Добрый день, спасибо большое за уроки! Скажите, пожалуйста, плейлист (функциональное программирование) стоит смотреть с этого видео ?
Нет, видео нужно смотреть в том порядке, в котором они в плейлисте
Спасибо! А как Вы считаете в будущем функциональная парадигма вытеснит объектную?Либо даже точнее по вопрос даже не в этом, выйдет функциональная на уровень и будет в ровень с объектной? Вот еще вопрос дельный в науке при расчетах задач теории упругости и механики твердого тела методом конечных элементов в системах автоматизации пользовались объектной парадигмой на С++ и потом С# с вуза моего коллеги. На предыдущих уроках Вы говорили объектного программирования для науки недостаточно полностью. Какой парадигмой сейчас можно пользоваться для программирования задач научных, больше функциональной? Мне это очень интересно. Так как, если выбрал сначала неправильный путь, потом считай трехкратно усложнил себе задачу.
Все движется не к победе одной парадигмы, а к мультипарадигменному подходу. В науке ооп может быть ок для моделирования, но не для вычислений.
@@TimurShemsedinov Интересно что еще смогут придумать. Быть может совершат революцию и создадут новую парадигму как синтез всех что у нас есть теперь?! Все же очень здорово, что Вы показываете эти подходы. Я ничего кроме объектной парадигмы и объектного подхода ранее и не знал даже.
Любопытное видео в котором можно разобраться только изменив его название. Например на:
Методология программирования *содержащее некоторые приемы, отдаленно напоминающие функциональное программирование*
После этого все становится на свои места.
Если же Вы хотите действительно понять, что такое функциональное программирование, как его используют в JS, вникнуть в то, почему оно снова становится промышленным стандартом, то рекомендую лекции Виталия Брагилевского.
Начать можно например с этой ruclips.net/video/T66wMYbtfNA/видео.html
А уже после того, как освоитесь и напишите хотя бы сотню строчек кода, можно послушать и суррогаты.
Брагилевский давно отстал от развития js, показывает примеры на каком-то говнокоде. Абсолютно не умеет доносить информацию, скучные и не интересные доклады. Ему бы лучше у Савватеева поучиться, как можно интересно про математику рассказывать!
Главный вывод - умным не будет написать все только в одном подходе. То есть js живет в двух мирах соединяя функциональный и императивный вместе.
И еще много других подходов
Что за редактор? такой же хочу
mcedit
Это часть midnight commander
Пачиму не в блокноте??? Где мышка??? Как я буду смотреть уроки без курсора
Курсор - это зеленый прямоугольник, мигает и буквы пишет
супер, но немного смущает динозавровый софт. Что за редактор?)) VScode, Web Storm - welcome to 2k18)))
Midnight Commander имеет большое сообщество, активно поддерживается, выходят новые версии, код лежит тут github.com/MidnightCommander/mc это открытое ПО, лицензия GNU GPL 3, я не пользуюсь проприетарным ПО даже бесплатным. Конечно, есть vim, emacs, но я пользуюсь mc 20 лет, c 1998 года и мне все удобно.
В чем смущение? Сложно код читать или что?
что вам всем так не нравятся консольные редакторы? Какая разница чем пользоваться, если удобно.
мамкины программисты набежали, учат кодить копипастом в "супер-редакторах"
Супер много говоришь с минимум примеров - хотя не удивительно с таким-то редактором
Редактор всему голова, да. Это тебя на невероятных лабораторных работах с c++ научили?)
Открываем приведенный в начале гитхаб и видим кучу неизмененных форков, немного кривых примеров и все. Сразу становится ясно что ожидать от этого теоретика. Запускаем видео и сразу же видим сравнение функционального программирования с императивным. Что? Вы серьезно сравниваете сладкое с горячим? Смотрим дальше, лектор начинает нести еще больше дичи, сопоставляя ООП с императивным программированием, приводя при этом примеры структурного программирования.
Не слушайте народ теоретиков, если не хотите каши в голове.
Кого тогда слушать? Примеры чтоль приведите нормальных преподов, которые не теоретики и имеют вагон опыта в продакшне.
Критикуешь - предлагай. На твоем канале ничего подобного нет...
Я перебрал множество видео материалов на ютубе и остановился на этом авторе, который в лучших традициях университета и в типичной преподавательской манере объясняет ГОДНУЮ теорию. НА гитхабе имеются компактные плейлисты по разным темам.
Да используйте нормальный редактор!!! Че это за уг-типа дос? Неужели без указателя удобно? Или это типа подход такой: чем больше-усложняешь рабочий процесс , тем круче ты программист
Это mcedit, в нем есть все, что мне нужно для работы. Какие такие указатели?
@@TimurShemsedinov наверное, имелся в виду указатель мыши.
@@yevhenbadorov7961 я мышью не программирую, наверно я отстал
@@TimurShemsedinov для этого нужно поставить "нормальный редактор", который запускается несколько секунд и занимает несколько сотен МБ в памяти
Да какая разница чем пользоваться, ты спасибо скажи за уроки которые предоставляют бесплатно и качественно