Press "Enter" to skip to content

Functors — FunFunFunction #10


это забавная забавная функция в понедельник
утреннее шоу, где мы пытаемся приехать еще
взволнован и уверен в программировании
изучая старые идеи мудрости
с удовольствием много людей
запросил другое функциональное программирование
видео, и я решил, что я попробую свою руку
на этой неделе, и я хотел бы
говорить о функциях дверей фанков
на самом деле то, что вы, вероятно,
уже использующих в повседневной жизни
программировать карту и фильтровать наши функторы
например, сегодня мы собираемся
исследовать, что это такое, что делает карту и
фильтровать часть семейства функторов и
мы также собираемся написать немного удовольствия
панель инструментов, но прежде чем мы это сделаем, мы
Собираюсь немного программировать
основатели, чтобы понять смысл проблемы
что функторы здесь, чтобы решить это
функция корпоративного класса плюс одна
это немного глупая функция, но я
я использую супер простой пример здесь, чтобы
не отвлекать нас от концепции, что
мы будем исследовать, представьте, что в
реальный мир плюс один делает
что — то гораздо более осложнили
функция плюс один просто добавляет один к
какое бы значение вы ни передали, так что здесь мы
пропустите его три, и мы получим четыре
Однако , если мы передаем в массив
цифры говорят 3 и 4, как это
конечно, перерыв, но мы хотели бы, чтобы он
если мы пройдем в массиве 3 4, мы бы
как это вернуть массив 4 5, поэтому мы пишем
что-то вроде этого нет волшебства
здесь просто много кода, если значение является
массив, мы перебираем массив и
создать новый массив, добавив 1 к каждому
номер паузы, если вы хотите посмотреть
но это не так важно, и это
теперь мы получаем 4/5, если вводим 3 для
скажем, что мы обнаруживаем, что
нам нужно +1 для работы с строками в
дополнение к стиранию и одиночным номерам
например, если мы передадим ему строку ABC
он должен выводить BCD так
мы добавляем еще одну группу кода для обработки
на экране можно приостановить видео
если вас интересует код
но это действительно просто увеличение
то символы , это не слишком интересным
Важно отметить, что
это не очень раздражает, что функция
делает намного больше, чем просто плюс
но он работает, он большой, но он работает, но
предположим, что нам также нужно написать
минус одна функция, тогда нам придется
дублировать всю эту шибань между
две функции, или я думаю, что плюс и
минус может быть обобщен, и я
не знаю арифметической функции, но когда
мы добавляем квадратный пол и каждый
другая математическая функция на небе, мы бы
в конечном итоге с огромной общей математической функцией
вместо этого чувствуется, что есть способ
обобщаем эту верхнюю часть здесь
вещь, которая делает литературу строки
и массив соответственно он не
действительно чувствую, что он принадлежит плюсу
функция в любом случае права, и это где
функторы , приезжающие для первой части
массив javascript на самом деле имеет встроенный
функтор, что вы, вероятно, уже
знакомый с картой UNK это все там
это массивные массивы, которые вы получаете
смысл того, как функторы делают вещи
упрощенная карта должна быть вам знакома
путь , если он не пойти проверить мой
видео, если вы не знаете карту
остальная часть этого видео не будет
как я упоминал ранее, если вы
программировал JavaScript на некоторое время
вы, вероятно, использовали факторы
не зная, что они являются частью
это семейство вызывало факторы в минуту
мы поговорим о том, что это такое
что делает функтор квалифицированным как часть
функтор семьи , но сначала я хочу
показать вам другой пример Func тура
на этот раз мы собираемся это написать
мы сами используем карту массива
отсортировал массив плюс encase, но
как насчет другого случая ?
струны, идущие от ABC до BC
мы разрешим это, сделав строку
фактор вроде этого на этот раз я действительно хочу
вы приостановите видео и сделаете это
код в течение немного раньше
продолжая то, что вы видите в строке
функтор — почти такая же логика из
большая версия функции плюс 1
что мы видели раньше ничего странного ПРОИСХОДИТ
здесь мы действительно переходим в строку ABC
в функцию строки, и мы
получение BCD на экране
значение и функцию FN, как вы видите
значение в этом случае означает ABC и F n
к функтору функции функции плюс 1
продолжается разделить строку на
массив, называемый символами, затем отображает
массив символов char параметр, который
передается на обратный вызов карты
каждый символ в виде строки
с длиной одного, так что это просто вы
знать строку, которая является B, мы конвертируем это
символ к числу, и мы передаем это
в FM и снова FN будет плюсом
1 в этом выполнении мы затем берем
возвращаемое значение F п, является числом
и преобразовать это число в символ
map, мы вернем массив из этих
увеличиваются символы, и мы тогда присоединяемся
их вместе, используя join, потому что строка
functor теперь делает этот процесс распаковки
для нас мы можем позволить плюс 1 и минус 1
делать свою работу
плюс 1 и минус 1 больше не нужны все
итерационная логика внутри них
потому что работа обрабатывается
функторы, так что функтор строки и математика
обе функции func двери или функции
которые принимают значение и функцию
значение может быть массивом в случае
карты или строки в случае
строковый фактор , ответственный за функтор
для разворачивания отдельных значений
значение передается, а затем проходит
каждый из них в функцию, а затем
он принимает обработанные значения и
создает новую структуру
для тех значений, которые возвращают другой
примером функтора будет массив
точечный фильтр, например, точка массива для
каждый из них похож, но это не функциональная дверь
он принимает значение, и он принимает
функции, и он разворачивает значение
в его компонент и передает его в
но ничего не возвращает
в структурированной форме, и это то, что
делает это не функцией, давайте подытожим
в контексте JavaScript функтор
является функцией, которая при задании значения
и функция разворачивает значение
в его отдельные части
частей в функцию , которая была
и принимать возвращаемые значения и
возвращать их в структурированной форме и
это функция, которая мне очень понравилась бы
ваши отзывы об этом видео сделали это
дать вам что-нибудь
Я выбрал функторов для этого эпизода
потому что II не сделали функционального
видео в течение длительного времени, и
много запросов на это и особенно
обманчивая Манна была среди тех ,
запросы и найденный тор — это один шаг на
путь к пониманию ваших земель, но
причина, по которой я перетаскиваю мои
с функциональным программированием
видео, что с этого момента
функторы, двигающиеся по нему, становятся очень приятными и
умаляя определение функторов
что я дал вам здесь сегодня ,
правильно в контексте JavaScript I
но в математическом контексте это
на самом деле гораздо более абстрактным и в этом
Я не уверен, что я даю тебе
точно так , потому что да
становится беспорядочным функтором — это концепция из
отрасль математики классная категория
теории, и я не совсем уверен, как
Продолжайте учиться в эти дни я
мы должны начать изучать категорию
теория с другой стороны, много людей
скажите, что вам не нужно понимать
теория категорий для того , чтобы понять ,
или, возможно, монады — это то, что мы
должен держаться подальше от полностью, может быть, я
должен начать серию на Haskell I
думаю, мне действительно нужны ваши отзывы о
это дало мне знать ваши мысли в
комментарии, как обычно, следующий эпизод
выйдет рано утром в понедельник GMT
время не пропустите подписку и пока
следующий понедельник останется любопытным
Please follow and like us:

Be First to Comment

Добавить комментарий