Мемоизация функций: memoize в JavaScript

แชร์
ฝัง
  • เผยแพร่เมื่อ 16 พ.ย. 2024

ความคิดเห็น • 18

  • @АнтонСухов-н9у
    @АнтонСухов-н9у 2 ปีที่แล้ว +2

    1:20 - Простой пример мемоизации
    7:09 - Замеры скорости исполнения
    12:25 - Управление размером кэша
    18:43 - Мемоизация и асинхронность
    27:24 - Хэширование ключей
    29:15 - Пример функции memoize из библиотеки metasync
    32:35 - Саммари и вопросы

  • @disconnect-forever
    @disconnect-forever 5 ปีที่แล้ว +18

    Смотрю Ваш канал периодически. Мне нравится и сам материал, который Вы даете, и его подача. Контент такого качества в русскоязычном сегменте встречается не очень часто. Ваши лекции великолепны. Пожалуйста, продолжайте в том же духе. Жду новых публикаций...

  • @TheTexPro
    @TheTexPro 2 ปีที่แล้ว +3

    Спасибо большое за подробное объяснение с примерами, которые можно взять за основу на практике)

  • @DimitarRad
    @DimitarRad 2 ปีที่แล้ว +1

    Кто решил, что является умным, смотрите Тимура и ваша спесь станет под вопрос ;)

  • @vitaliy.artyukh
    @vitaliy.artyukh 3 ปีที่แล้ว +3

    было бы эффективнее чтобы generateKey возвращал число, тогда поиск по объект будет быстрее, но это еще один алгоритм.

  • @Antonio-fm1sq
    @Antonio-fm1sq 3 ปีที่แล้ว +1

    Спасибо!

  • @RisDeep
    @RisDeep 4 ปีที่แล้ว

    Я так понял, глубокая мемоизация рекурсивных функций возможна только через перезапись функции. А у вас кэширование получается без внутренних вызовов.
    Вот так лучше и работает мгновенно.
    var fib = (n) => (n

    • @TimurShemsedinov
      @TimurShemsedinov  4 ปีที่แล้ว +3

      const fib = memoize(n => (n

    • @RisDeep
      @RisDeep 4 ปีที่แล้ว

      @@TimurShemsedinov да, но так уровень абстракции нарушается. Надо знать внутреннее имя лямбы при мемоизации. Допустим если лямба передаётся в аргументе.
      🤔🤔Или нет

  • @akaGamlet
    @akaGamlet 4 ปีที่แล้ว +1

    грамотно. главное весь курс очень структурирован. Спасибо. Можно книгу запросто писать=) вы не знаете ПОЛИТЕХ) @UChSGI2R2kRMjzXJuYqHWQZg

  • @masterguyver84
    @masterguyver84 5 ปีที่แล้ว

    Хорошая идея, ясно что без кеша никуда, по сути вопрос один, я асинхронность еще не уловил с практики. Я вроде смотрел видео, но сам я не знаю, где ее еще применять, это понятнее станет потом... Малый вопрос на практике все время соединяют мемоизацию с сериализацией? Например если объект сериализирован толково, то по слепку легче получить то что нужно с кеша? Все это еще правильно наверное соединяется с асинхронностью, особенно там где используется ввод-вывод и обработка файлов, может и парсинг тоже? Я так думаю, применение здесь?

  • @dimanazdratenko
    @dimanazdratenko 5 ปีที่แล้ว +4

    лайк конечно, но куча воды, все ну так долго и скучно что застрелится)) больше б экшена и по сути)

    • @TimurShemsedinov
      @TimurShemsedinov  5 ปีที่แล้ว +20

      Признайтесь, Вы слушали звук без видео? Это же не подкасты, а разбор кода нужен людям.

    • @НикитаКуперштейн
      @НикитаКуперштейн 5 ปีที่แล้ว +6

      @@TimurShemsedinov Прямо в точку !!!

    • @OlekusGames
      @OlekusGames 5 ปีที่แล้ว +4

      Как раз наоборот. Я по 5 раз некоторые моменты пересматривал, чтобы понять как работает.

    • @AndriiKuftachov
      @AndriiKuftachov 3 ปีที่แล้ว

      @@OlekusGames до Штирлица не дошло послание из центра, ещё раз прочитал, все равно не дошло.

    • @AndriiKuftachov
      @AndriiKuftachov 3 ปีที่แล้ว

      @@НикитаКуперштейн не, прямо в точку было у первоначального комментария.