Артем
С нами с 15 октября 2017; Место в рейтинге пользователей: #164Вчера в 04:04
Сделал новую версию с табами и возможностью запуска сразу для всех вариантов.
Сначала содержимое для технического ресурса откуда будет запускаться вы...
VersionX переполнил базу данных 8
18 мая 2026, 13:46
Исправление уже готово github.com/modx-pro/MiniShop3/pull/271
MiniShop для MODX3. Что происходит и когда ждать? 53
18 мая 2026, 13:00
который поддерживает 3 CLI интерфейса opencode, claude, codex. Это я к тому, что можно сделать адаптер под CLI, чтобы при старте сессии он читал станд...
[aiAssist] Я же просто попросил его создать магазин, а он СДЕЛАЛ ЭТО! 15
17 мая 2026, 13:31
При включении компонента, все теги, снипеты и вызовы на fenom — на фронте выводятся текстом без обработки
[xDevPicker] Редактируем чанки с фронтенда в один клик 5
16 мая 2026, 12:23
Если кто-то использует счетчики, например, Яндекса, то это должно быть отражено в политике конфиденциальности и для них тоже нужно брать согласие поль...
Плашка о использовании cookie файлов на сайте 11
15 мая 2026, 15:10
Посмотрел внимательнее: дублирование не по вариантам в источнике файлов, а по количеству фото у товара.
Новости MiniShop3, mSearch, mFilter 23
15 мая 2026, 14:23
Не могу отредактировать, сам себе отвечу.
Справился с ситуацией, поменял тип вывода с JSON на String и дальше уже через Рендер вывел. Все ок.
[msStatOrders] - Статистика заказов Minishop2 / Новая версия 42
14 мая 2026, 11:38
Желательно ставить disabled для кнопки «Сбросить», если не выбрано ни одного фильтра: disk.yandex.ru/i/PZliDL8USeHvAA
Тогда можно в зависимости от ...
mFilter 1.4.0 - перестроенная система кеширования 1
Это то же самое, что написать
Именно поэтому используют let.
Ты можешь использовать хоть var, но такой код никто не захочет читать и поддерживать. У const и let масса преимуществ перед var. Именно из-за них их и используют. Почитай про hoisting.
Отчего же это?
Да, конечно, различия есть, но эти различия — особенности среды исполнения, а не какие-то «фишки языка». Язык работает одинаково как в хроме, так и в ноде, потому что там работает один и тот же интерпретатор v8.
Опять же, тебе не нужно фокусироваться на этих различиях, если ты не пишешь серверную часть на ноде.
Если так уж интересно, то по такому принципу работает консоль в браузере.
Задача PHP — обработать запрос, выплюнуть какой-нибудь ответ и помереть. Тот же Node.js единожды инициализируется и дальше обрабатывает сколько угодно запросов, продолжая хранить все ранее инциализированные переменные в оперативке.
Соответственно, в Node.js нельзя просто сделать условный exit (die), чтобы быстренько помереть в рандомом месте приложения и выплюнуть ответ. Это может стать сюрпризом и вызвать сложности на первых порах, но в целом это помогает грамотнее проектировать приложение и уделять больше внимания его циклу жизни.
Когда на нее не останется ссылок. Браузер тут вообще ни при чем, он предоставляет только интерпретатор JS.
Почитай про WeakMap и WeakSet, там подробнее объясняется про сборку мусора и вот это все.
Ну и там же есть ссылка на отдельную статью про сборку мусора.
В браузере он ничем не отличается от того же Node.js, например. В обоих случаях JS не умирает так, как ты привык об этом думать из-за php.
Иными словами, программисты и будут полировать бизнес-идею заказчика.
Если речь о какой-нибудь студии, где есть разделение обязанностей, то абсолютно верно.
Руководитель вообще этим не занимается, да и не должен.
Опять же, зависит от уровня программиста. Кто-то делает «лишь сайт», а кто-то выстраивает архитектуру и бизнес-логику приложения.
Сайт не может быть микросервисным, микросервисной может быть архитектура приложения, а если она является таковой, то, как правило, сайт — лишь красивая обертка, которая общается со всеми микросервисами.
Уверяю, что микросервисную архитектуру проектируют и пишут не проект-менеджеры.
Проект — это, например, когда к тебе приходит заказчик и вываливает бизнес-идею, а ты должен ее обработать напильником и выплюнуть готовый проект, который будет приносить деньги заказчику.
Да и с относительно простой тоже.
Например, мне нужен простой сайт с рейтинговой системой. Ну, заполнил ты там свой профиль, получил 10 баллов, заполнил что-то еще — получил еще баллов.
Что мне может предложить Wix? Ничего. Что мне может предложить Tilda? Ничего.
Язык не повернется назвать такой проект сложным или серьезным, просто он нестандартный. И вот как только ты сталкиваешься с чем-то нестандартным, что не решается готовыми пакетами, так все, костыль на костыле.
Безусловно, но и ведь это не плохо. Если программист не развивается и не повышает свою квалификацию, то уж извините.
На мой взгляд, уровень заказчиков соответствует уровню программиста. Попробуй представить синьора с опытом 7+ лет, который на своей основной работе делает лендосы за 5к или простые магазины на CMS за 20к. Вот и у меня не получается.
Это смотря какого заказчика. Если речь про лендосы с одной формочкой или типовые магазы с парочкой товаров, то разумеется. Если речь про сложные сервисы и серьезные проекты, то ни один заказчик в здравом уме не согласится делать что-то на виксе или тильде, — это антонимы для фразы «серьезный проект».
Это потому что MODX сейчас не годится для серьезных проектов, поэтому здесь в основном и решаются простецкие типовые задачи. При этом даже на MODX есть некий процент проектов, которые ни один конструктор не вывезет при всем желании.
Так далеко не все проекты ограничиваются функционалом магазина.
То, что это стандарт, который позволяет делать красивые, гибкие и масштабируемые приложения.
Попробуй написать на MODX полноценное Api — гарантирую массу приятных впечатлений.
В общем, посмотри github.com/bezumkin/VESP — это понятный пример
Правильный доступ к таким ключам осуществляется так:
Если ключ массива соответствует правилам, то можно обращаться к нему через точку:
Во время оформления заказа miniShop2 смотрит на объект оплаты, который привязан к оформляемому заказу, ну и дергает оттуда метод send, передавая заказ в качестве единственного параметра.
Соответственно, тебе нужно по умолчанию поставить самую обычную оплату, без всяких классов-обработчиков, клиент будет оформлять заказ и сразу же видеть окошко, что заказ оформлен. Когда заказ получит статус «Ожидает оплаты» и клиент нажмет на кнопку «Оплатить», ты просто получаешь другой заранее подготовленный объект оплаты, у которого указан класс-обработчик робокассы, и точно так же дергаешь метод send, передавая выбранный заказ.