Модули Laravel

Чтобы упорядочить код приложения мы прибегаем к ряду мер. В том числе используем пространства имен и распределяем файлы по директориям. Про пространства имен вроде бы понятно. Вопрос что есть для Laravel для второго пункта.

В Laravel имеется такое решение как пакеты. Штатная штука и ее вроде бы можно использовать для модульности. Но для каждого пакета нужно будет очень много настроек прописывать вручную. Весь код лежать в packages/имя пакета/src … и выглядеть как нечто стороннее. Метод рабочий, но он, скорее, для подготовки пакетов, которые будут использоваться в других проектах.

Читать далее

Laradock

Laradock – это готовая сборка образов Docker для разработки php-приложений на Laravel. В то время, как Homestead использует виртуальную машину, Laradock использует все плюсы Docker.

Эта статья – короткая инструкция по поднятию Laradock на host-машине с Linux Mint (Debian, Ubuntu).
Для начала вам необходимо установить Docker CE и Docker Compose. Затем можно приступать к шагам, описанным в статье.

Читать далее

Docker Compose

Docker Compose – это инструмент, который позволяет запустить несколько контейнеров Docker одной командой. Также он упрощает процессы управления Docker-контейнерами (настройка связей и объемов внутри контейнеров, запуски закрытие).

Читать далее

Webpack

Webpack – это сборщик модулей современных JavaScript приложений (в принципе любых веб приложений, у которых есть JavaScript часть). Когда он обрабатывает ваше приложение, то рекурсивно собирает граф зависимостей, которые требуются каждому модулю вашего приложения. Затем упаковывает все эти модули в небольшое число склеек (bundles), которые и грузятся  в браузер.

Для сборки веб приложений webpack заменит собой grunt, gulp (системы организации задач) и bower (пакетный менеджер клиентской части). Однако, так как у grunt и gulp область применения иная и не ограничивается сборкой, то в ряде случаев webpack можно и нужно встроить в задачи, контролируемые этими системами.

Читать далее

Gulp

Gulp – это тоже система организации задач, такая же как и grunt, но появилась позже него. Gulp так же устанавливается как npm пакет.

Базовые отличия в этих двух системах следующие:

Читать далее

Grunt

Grunt – это система организации рутинных задач, которые делает веб разработчик. Примеры таких задач – минификация кода, компиляция, запуск unit-тестов, линтинг.

Задачи, которые необходимо автоматизировать прописывается командами в специально файле Gruntfile.js. После чего с помощью команды grunt <имя задачи> можно выполнить любую задачу (последовательность команд). Часто используемую задачу (например сборку всех js и css файлов) можно сделать задачей по-умолчанию и запускать просто командой grunt.

Читать далее

Promise

Promise (промисы) – удобный механизм организации асинхронного кода.

Предположим нам необходимо в JavaScript коде совершить обращение к серверу и с полученными результатами обратиться к серверу еще раз и получить новую информацию, а с этой информацией еще раз. И все эти запросы к серверу мы хотим сделать асинхронными.

Чтобы нам понадобилось при этом. Несколько вложенных двуг в друга callback-функций (обработчиков). Такой код стал бы плохо читаемым. Так же, на бы хотелось иметь обработку ошибок. Для этого пришлось бы добавлять callback-функции и для ошибочных ситуаций. Для решения этой проблемы и существуют промисы.

Читать далее

Vue multiselect

Для некоего проекта понадобился компонент multiselect, который бы подгружал варианты асинхронно и отображал бы выбранные варианты строкой. Тоесть нечто подобное, что есть у WordPress при прикреплении тагов к заметке.

Читать далее

Npm

Npm – это пакетный менеджер Node.js. Файл package.json содержит в себе информацию о зависимостях вашего приложения в части пакетов Node.js. Множество современных инструментов для разработки веб-приложений устанавливаются через данный менеджер пакетов (webpack, grunt, gulp, bower …).

Читать далее

Node.js

Node.js – это программная платформа на C++, которая транслирует JavaScript в машинный код, расширяя область применения данного языка далеко за границы веб-браузеров. Node.js может взаимодействовать с устройствами ввода-вывода и обращаться к сторонним библиотекам. Некоторое время его называли серверным JavaScript. Он может выполнять роль веб-сервера, но на этом его сфера применения не заканчивается. Десктопные оконные и мобильные приложения, программирование микроконтроллеров, сборка веб-приложения (в рабочем окружении веб-разработчика).

Читать далее

Таблицы Vue.js. Часть 1: ratiw/vuetable-2

При создании кабинетов администратора для веб-приложений часто необходимы динамические таблицы. В мире jQuery как минимум есть DataTables и jqGrid. Но так как jQuery в последние годы стремительно теряет нишу занимаемую им ранее в веб-приложениях (frontend), то появилась потребность узнать что же есть подобного для современных библиотек и фреймворков.

И так как в последнее время у меня вместе с сообществом Laravel появился стойкий интерес к Vue.js, то как раз для него и хотелось найти хороший компонент реализующий таблицы в графическом интерфейсе веб-приложений.

Читать далее

Yarn

Yarn – менеджер пакетов, который создавался для решения проблем пришедших с использованием npm. При использовании Yarn задачи по установке пакетов выполняются параллельно, а не последовательно, как в npm. Также гарантии использования указанных в проекте версий пакетов используется специальный файл yarn.lock, который хранит точные номера версий (как composer.lock для Composer). А еще Yarn имеет более лаконичный и удобочитаемый вывод лога в консоль.