• Как подобрать данные из локальной базы данных пользователя через Django?

    ipatiev
    @ipatiev
    vladvaraks, при чём здесь "программа" если вы спрашиваете, как взломать чужой компьютер?
  • Как лучше поступить с таблицей бд?

    ipatiev
    @ipatiev
    хотя нет, если это дизлайки, то есть обезличенные данные и строка фиксированного размера - то однозначно удалять.
  • Есть ли разница между памятью в PHP и C#?

    ipatiev
    @ipatiev Куратор тега PHP
    Даже, наверное так: в функциональном программировании генераторы действительно позволяют экономить память. Потому что надо результат работы одной функции передавать на вход другой.
    Но опять же - это проблема функционального программирования, а не "работы с большими данными по API".

    Ну смешно же, ей-богу.
    Генераторы придумали лет 10 назад.
    А до тех пор что - без вариантов, "с большими данными по api" работать было нельзя? Серьёзно?
    Ну вот зачем смешивать два понятия - работу с большими данными перебором и генераторы?
    Внутри генератора тот же самый цикл. Код работы с API в этой статье - это обычный do .. while:
    $limit = 20;
    $requestParams = [
      'lastUpdatedAfter' => new DateTime('yesterday'),
      'limit' => $limit,
      'offset' => 0
    ];
    $orders = [];
    
    do {
        // Grab a batch of orders from Storeify and yield from that list.
        $orders = Storeify::getOrders($requestParams);
    
        $requestParams['offset'] += $limit;
    } while (!empty($orders));

    А генератор, как уже говорилось выше, позволяет завернуть этот цикл в функцию и передать куда-то дальше.
    То есть память нам экономит старый добрый принцип "читать по одному".
  • Есть ли разница между памятью в PHP и C#?

    ipatiev
    @ipatiev Куратор тега PHP
    Судя по всему, речь вот об этом https://habr.com/ru/company/vk/blog/351818/

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

    Я оригинал раньше не видел, но статья построена по известной схеме, которая сводится к "по отдельности забирает объекты из API" - вот буквальная цитата.
    То есть буквально весь смысл статьи - это "если надо экономить память, то надо не забирать сразу 200 тыщ миллионов строк из API, а забирать по одному". Прямо вселенская мудрость, без этой статьи никто бы не догадался.

    Суть статьи не в том, как экономить память, а в том, как делать конвейеры с помощью генераторов. про функциональное программирование. Когда фактически вся программа - это вложенные вызовы функций.
    А задача экономии памяти решается стандартно - выборкой элементов по одному в цикле. А уж явный это цикл - или завёрнутый в генератор - дело десятое.
  • Почему не работает if(isset()) в woocomerce wordpress?

    ipatiev
    @ipatiev Куратор тега PHP
    Ну тогда так и надо формулировать, не "почему не работает isset", а " как можно назначить php обработчик на woocomerce форму"
    Ну логично же?
  • Почему не работает if(isset()) в woocomerce wordpress?

    ipatiev
    @ipatiev Куратор тега PHP
    без понятия.
    я этот вукоммерс даже трехметровой палкой тыкать побрезгую.
    Я отвечал на ваш вопрос, "Почему не работает if(isset())"
  • Почему не работает if(isset()) в woocomerce wordpress?

    ipatiev
    @ipatiev Куратор тега PHP
    Во-первых, "код элемента" к запросу не имеет никакого отношения. Так что надо смотреть вкладку Сеть, и актуальное содержимое запроса.
    Во-вторых, если woocommerce_checkout_place_order всё-таки в запросе есть, то значит вукоммерс это поле зачем-то удаляет. Хотя я не представляю, зачем это может понадобиться.
  • Есть ли разница между памятью в PHP и C#?

    ipatiev
    @ipatiev Куратор тега PHP
    а что насчёт статьи от VC team, про перекачку большого объёма записей по API?

    Давайте ссылку, посмотрим и на неё.
  • Есть ли разница между памятью в PHP и C#?

    ipatiev
    @ipatiev Куратор тега PHP
    Вот, https://habr.com/ru/post/599113/
    Хотя эта ссылка по сути и не нужна - Андрей Шестаков в вашем же видео говорит ровно то же самое. Что генераторы не про экономию памяти, а про рациональный код. Посмотрите его уже наконец :)
  • Есть ли разница между памятью в PHP и C#?

    ipatiev
    @ipatiev Куратор тега PHP
    Вы всё не унимаетесь :)
    В интернете действительно много статей, в которых "связаны слова Генератор + память". Но это не значит, что им надо слепо верить.
    Эти две статьи написаны как раз инфоцыганами. С первой всё ясно, просто почитайте комментарии.
    Во второй на самом деле ещё смешнее. Мало того, что автор - обычный шулер, который выдаёт обычный цикл перебором за какие-то уникальные особенности генератора. Но кроме этого, пытаясь высосать из пальца пример экономии памяти, он пишет код сложностью O(n2). Причём, как голубой воришка, стыдливо замечает, "Немного затратно постоянно перечитывать каждый кусок данных". То есть для него миллион раз прочитать файл в миллион строк - это "немного затратно" :)))

    Поймите же уже наконец. В отличие от вас, я эти статьи читал в оригинале, и проорался с них, когда они только появились. А не нагуглил поспешно переводы, даже не заглянув внутрь.
    Давайте договоримся, если мы продолжаем разговор, то говорим предметно, а не ссылками.
    Впрочем, если вы хотите ссылок, то я сейчас найду специально для вас
  • Как составить запрос MySQL?

    ipatiev
    @ipatiev
    ну разумеется, если ничего не запрашивать, то ничего и не будет
    надо в селект добавить какое-нибудь поле из таблицы joins
  • Есть ли разница между памятью в PHP и C#?

    ipatiev
    @ipatiev Куратор тега PHP
    Посмотрел видео. Автор говорит правильные вещи.
    Таймкод 21:00
    Он говорит ровно то, что написано выше у меня: генераторы помогают писать более красивый код.
    "Мы хотим отделить выборку из БД от бизнес логики". Именно! Это именно то, для чего используются генераторы.
    А про память - "чуть хуже, чем предыдущий метод" без генераторов.
  • Как составить запрос MySQL?

    ipatiev
    @ipatiev
    Супер! Я был уверен, что у вас получится!
  • Как составить запрос MySQL?

    ipatiev
    @ipatiev
    надо хотя бы попытаться
  • Есть ли разница между памятью в PHP и C#?

    ipatiev
    @ipatiev Куратор тега PHP
    AgentSmith72 не нужно мне тыкать всякими видео. Варианта тут два: либо автор - инфоцыган, который сам не понимает, о чём говорит, либо это вы не поняли, о чём там говорится.
  • Есть ли разница между памятью в PHP и C#?

    ipatiev
    @ipatiev Куратор тега PHP
    В этой статье описано, как устроен JIT. Который в 99% случаев бесполезен чуть менее, чем полностью.
    про то, как устроен РНР, в статье нет почти ничего
    а про память, про которую он спрашивал - нет ничего вообще.
    JIT работает с кодом, к памяти он вообще никакого отношения не имеет
  • Есть ли разница между памятью в PHP и C#?

    ipatiev
    @ipatiev Куратор тега PHP
    Ещё раз: генераторы не занимаются "контролем памяти"
    Они помогают писать более красивый код.
    Недавно статья была на Хабре на эту тему.
  • Как составить запрос MySQL?

    ipatiev
    @ipatiev
    ну как же не знаете, если у вас УЖЕ есть в запросе именно такой джойн
  • Есть ли разница между памятью в PHP и C#?

    ipatiev
    @ipatiev Куратор тега PHP
    Да, кстати, и при чем тут JIT?
    Вы вопросом не ошиблись?