Search
Write a publication
Pull to refresh
32
0.2
Андрей Ч. @Andchir

PHP/JS Full Stack Developer

Send message

Всё, что вы должны знать о прототипах, замыканиях и производительности

Reading time9 min
Views50K

Не всё так просто


На первый взгляд, JavaScript может показаться достаточно простым языком. Возможно, это из-за достаточно гибкого синтаксиса. Или из-за схожести с другими известными языками, например, с Java. Ну или из-за достаточно малого количества типов данных, по сравнению с Java, Ruby, или .NET.

Но в действительности, синтаксис JavaScript гораздо менее прост и очевиден чем может поначалу показаться. Некоторые наиболее характерные черты JavaScript до сих пор неправильно воспринимаются и до конца не поняты, особенно среди опытных разработчиков. Одна из таких черт — производительность при получении данных (свойств и переменных) и возникающие при этом проблемы с производительностью.

В JavaScript поиск данных зависит от двух вещей: прототипного наследования и цепочек областей видимости. Для разработчика понимание этих двух механизмов совершенно необходимо, ибо ведет к улучшению структуры, а, зачастую, ещё и производительности кода.
Читать дальше →

Отладка iframe приложения непосредственно в среде vk.com с использованием php + xdebug

Reading time3 min
Views7.4K

В этой статье вы узнаете, как можно отлаживать iframe приложение непосредственно внутри среды vk.com, то есть как белый человек. Разработка приложения непосредственно в среде не требует создания песочниц (эмуляции вконтакте), очень удобно работать непосредственно с API вконтакте, видя все переменные, которые передаются туда и обратно непосредственно в трейсе. Не претендую на оригинальность, я просто проверил, что такой статьи нету в тырнете и все, а идея очевидна и проста. Идею придумал за кружкой чая, ибо если бы я успел его допить, то начал бы гуглить.
Читать дальше →

CacheAccelerator для MODx Evo. Уменьшение в разы количества запросов к базе за счет кэширования динамических сниппетов

Reading time9 min
Views9.3K
Всем привет. Я совсем недавно познакомился с MODx CMF. Осваиваю в данный момент версию Evolution. Система в целом довольно приятная и очень гибкая, однако, ознакомившись поближе, я обнаружил ряд недостатков. Причем некоторые из них не давали мне никакого покоя и оставлять как есть я никак не смог.

Остановлюсь на одном из самых чувствительных критериев любой CMS/CMF — производительности.
В целом, с производительностью у MODx все норм. Сам он написан достаточно грамотно, оптимизирован. Более того, за счет своей гибкости, дает разработчику возможность самому управлять узкими местами в реализуемом проекте.

Тем не менее, меня просто шокировал метод обработки вывода новостей с помощью Ditto, комментариев с помощью Jot и тд. А именно, необходимость отключать кэширование как для всей страницы у Ditto (из-за проблем в работе с PHx), так и для вызова самого сниппета у Jot.

Ведь, если записей достаточно много, то на одной странице они не поместятся, а это значит что, например, новостную ленту нужно разбивать на несколько страниц. Но, если в MODx включено кэширование этой страницы, то при переходе между частями новостной ленты, мы увидим все то же содержимое, которое первое попало в кэш!

Что же советуют официальные источники?
Они советуют, чтобы сниппеты, работающие с несколькими
страницами, никогда не кэшировались.
Читать дальше →

Заметки программиста о новых возможностях MODx Revolution

Reading time5 min
Views11K
В данной статье я хочу рассмотреть некоторые новые возможности MODx Revolution, которых не было в младшей ветке – MODx Evolution. С данной CMF я начал работать еще когда была доступна версия modx-2.0.0-beta-2, т.е. примерно полтора года назад. Могу сказать, что за период с лета 2009 г., когда система была только в стадии беты, до релиза летом 2010 г., MODx прошел большой путь в своем развитии, добавились новые возможности, стал быстрее и лучше работать старый функционал. Я считаю, что в настоящее время MODx Revolution является действительно мощной платформой для построения самых разнообразных веб-приложений, от простейших сайтов до больших порталов. Итак, начнём.

Я постараюсь описать следующие нововведения MODx Revolution:
  1. xPDO
  2. Пространства имен
  3. Контексты
  4. Новая система кэширования
  5. Интернационализация

Теперь обо всем по порядку.
Читать дальше →

MODx Revolution. Итоги. Часть 1

Reading time6 min
Views9.5K
Три с половиной месяца прошло со дня релиза MODx Revolution. Думаю никто не будет спорить, что версия 2.0 была очень сырой и для использования на реальных проектах была не готова. На русскоязычных сайтах о MODx я видел много критики и скептицизма. Что-то вполне заслужено, а что-то из-за отсутствия подробной документации. На данный момент доступна версия 2.0.4-pl2, по которой, на мой взгляд, уже можно подвести итоги: Правильно ли разработчики выбрали направление и инструменты для развития и стоит ли отказаться от MODx Evolution (1.x) и переходить на Revo? В данной статье я постараюсь подробно рассказать об основных особенностях новой системы, которые сам для себя только открываю.

Читать дальше →

Слушаем клиентов. Развитие сервиса “Рубашка на заказ” (продолжение)

Reading time4 min
Views1K
image

Год назад я писал про сервис “Рубашка на заказ”. На его примере я наблюдаю за процессом развития стартапа в сфере услуг. Кейс очень интересный: “куда двигаться, какие проблемы возникают, какие возможности внедрять, где черпать вдохновение”. Информацию я получаю прямо от руководства компании, так как эти люди являются давними клиентами нашей студии.
Итак, начну с изменений.
Читать дальше →

Shopkeeper — модуль интернет-магазина для MODx

Reading time3 min
Views17K


Приветствую, хабралюди!

Хочу рассказать вам и всем читателям Хабра о своем проекте. Ваша оценка мне будет очень полезна. Суть этого проекта — бесплатный движок для создания интернет-магазина, а точнее модуль для CMS MODx. Называется он Shopkeeper. Думаю многим, кто разрабатывает сайты на MODx этот модуль (сниппет) уже известен, но, возможно, информация о данной альтернативе для создания интернет-магазинов также будет интересна пользователям других CMS. Здесь, на Хабре, довольно часто обсуждались подобные модули и движки, надеюсь Шопкипер не будет воспринят как очередной велосипед :).

Читать дальше →
12 ...
10

Information

Rating
4,573-rd
Location
Карелия, Россия
Date of birth
Registered
Activity

Specialization

Frontend Developer, Fullstack Developer
Middle
From 200,000 ₽
Python
JavaScript
Angular
PHP
Django
Linux
SQL
MongoDB