Materialized View

Materialized View (материализованное представление) – это объект базы данных (таблица) , содержащий результаты запроса . Такие представления дают возможность ускорить в разы выполнение запросов, обращающихся к большому количеству данных. Добиваются этого за счет использования заранее вычисленных итоговых данных и результатов объединений таблиц. Такие данные как правило имеют очень относительно небольшой объем по сравнению с исходными данными.

Читать далее

Vue.js provide/inject

При создании сложных Vue приложений приходится решать много задач по разделению кода на части (компоненты и прочее). Когда мы уже разбили большой кусок кода на некую иерархию компонентов, то обычно передаем вложенным компонентам данные через свойства. Но если глубина, на которую необходимо передать данные вниз по дереву больше 1 уровня, то передавать через свойства не то, что неудобно, но и неправильно.

Читать далее

PortalVue – Teleport для Vue шаблонов

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

Представим себе список проблем (issues) как на github и в уголке страницы значок с числом не просмотренных проблем. Когда пользователь заходит в просмотр одной из проблем, то в списке она меняет вид, так как стала прочитанной. При этом и значок с числом должен уменьшить его. И так как это разные компоненты, которые могут быть не вложены один в другой, то встанет вопрос откуда брать данные для обои. “Vuex”, – скажите вы. Но не всегда это будет удобно и верно.

Читать далее

Vue.js scoped slots и renderless component

Продолжая рассматривать способы повторного использования кода в vue.js (тема затронута ранее в статьях Повторное использование кода Vue.js и Vue.js Composition API) можно встретить упоминания некоего приема с использованием не отображаемых компонентов и слотов с ограниченной областью видимости (scoped slots).

Читать далее

Vue.js Composition API

Продолжая разбирать тему повторного (начало в статье Повторное использование кода Vue.js) использования кода Vue.js, я пришел к Composition API, который является основным новшеством Vue 3. Его также можно использовать во 2 версии Vue, если установить как отдельный пакет. В сети эти изменения вызвали бурное обсуждение, зачастую негодование, среди тех, кто пользуется данным фреймворком и  создал не мало кода на старом API (Options API). Давайте разберемся почему появился новый API, как его использовать и в чем его плюсы.

Читать далее

Повторное использование кода Vue.js

По мере усложнения приложения, в котором львиная доля кода использует Vue.js, возникает вопрос повторного использования кода. Когда возможности расширить тот или иной компонент с помощью параметров или слотов уже не удовлетворяют всех потребностей, можно прибегнуть в другим способам.

Читать далее

Vuetify – UI библиотека для Vue.js

В настоящее время web приложения уже трудно представить без сложных элементов управления, таких как интерактивные таблицы с данными, диалоговые окна, выпадающие меню и иерархические деревья. Писать весь этот набор компонентов самостоятельно, для того, чтобы  решить бизнес задачи – долго и обременительно. Но к счастью существуют уже готовые решения, которые берут на себя создание такой инфраструктуры. Одно из них – Vuetify.

Читать далее

Книга Кита Гранта “CSS для профи”

Для того, чтобы быть востребованным и высокооплачиваемым специалистом, программисту необходимо постоянно обновлять свои знания. Мир web приложений стремительно развивается: браузеры добавляют новые возможности, появляются новые библиотеки и фреймворки для языков программирования. Появляются даже новые языки.

Читать далее

Vite – разработка на JS без сборки

17 февраля вышла Vite 2.0.

Vite – это инструмент относящийся к инструментам сборки для веб-разработки. Он использует ES6 модули (es imports, ESM) на этапе разработки (для запуска приложений в dev режиме) и Rollup на этапе компиляции приложения (сборки в prod режиме).

Читать далее
DNS

DNSControl

DNSControl – это продуманная платформа для плавного управления конфигурацией DNS на любом количестве DNS-хостов, как в облаке, так и в Вашей собственной инфраструктуре. Он управляет всеми доменами сети проекта Stack Overflow и может сделать то же самое для вас!

Читать далее

ClickHouse

ClickHouse представляет собой быструю, хорошо масштабируемую БД с SQL диалектом. Используется для случаев, в которых нужно создавать аналитические отчеты по большому количеству данных.
Если имеется широкая (с большим числом колонок) таблица, по которой нужно строить различные аналитические отчеты (фильтровать, группировать по различным колонкам), то ClickHouse подойдет здесь как нельзя лучше. Скорость выборки,  по сравнению с тем же MySQL, будет в сотню раз выше.

Читать далее

Phinx. Миграции БД для PHP

С Phinx легко управлять миграциями базы данных вашего PHP-приложения. Менее чем за 5 минут вы можете установить его с помощью Composer и создать свою первую миграцию базы данных. Phinx делает только то, для чего предназначен (управление миграциями) без всякого раздувания инфраструктуры приложения.

Читать далее