Давайте разберёмся нужны ли бандлеры для сборки JavaScript проектов? Есть ли выгода от пакетирования, или лучше загружать множество небольших js-файлов?
https://www.dev-notes.ru/articles/frontend/web-performance-and-parallel-vs.-waterfall-downloads/
https://www.dev-notes.ru/articles/frontend/web-performance-and-parallel-vs.-waterfall-downloads/
Заметки разработчика
Веб-производительность и параллельная vs. waterfall загрузка
Давайте разберёмся нужны ли бандлеры для сборки JavaScript проектов? Есть ли выгода от пакетирования, или лучше загружать множество небольших js-файлов?
Иногда требуется, чтобы список отображался не вертикально, а в виде горизонтального списка (как в навигационном меню).
https://www.dev-notes.ru/articles/css/semantic-horizontal-lists/
https://www.dev-notes.ru/articles/css/semantic-horizontal-lists/
Заметки разработчика
Семантические горизонтальные списки
Иногда требуется, чтобы список отображался не вертикально, а в виде горизонтального списка (как в навигационном меню).
❤1
Docker — это инструмент, облегчающий создание, развёртывание и запуск приложений с помощью контейнеров. Контейнеры позволяют инженеру упаковать приложение со всеми необходимыми компонентами, например библиотеками и другими зависимостями, и отправить его в виде единого пакета. Это означает, что приложение будет работать на любой другой машине, независимо от настроек, которые могут отличаться от настроек машины, использовавшейся для написания и тестирования кода.
https://www.dev-notes.ru/articles/devops/what-really-happens-when-you-command-docker-run/
https://www.dev-notes.ru/articles/devops/what-really-happens-when-you-command-docker-run/
Заметки разработчика
Что на самом деле происходит при выполнении команды 'Docker Run'
Docker — это инструмент, облегчающий создание, развёртывание и запуск приложений с помощью контейнеров.
Как настроить локальную среду разработки для тестирования классов или утилит пакета в рамках локального проекта Laravel.
https://www.dev-notes.ru/articles/laravel/create-a-laravel-package-on-your-local-environment/
https://www.dev-notes.ru/articles/laravel/create-a-laravel-package-on-your-local-environment/
Заметки разработчика
Создание Laravel пакета в локальной среде
Как настроить локальную среду разработки для тестирования классов или утилит пакета в рамках локального проекта Laravel.
В программировании, особенно в динамичном и постоянно развивающемся мире JavaScript, путь от новичка до опытного профессионала сопряжён с множеством трудностей и кривых обучения. Один из важнейших выводов, который я вынес из своего богатого опыта, как в качестве интервьюера, так и в качестве интервьюируемого, заключается в огромной важности понимания "почему", стоящего за нашими кодовыми решениями. Именно такое глубокое понимание и способность чётко сформулировать причины каждого решения действительно отличают исключительных специалистов.
https://www.dev-notes.ru/articles/javascript/clean-your-javascript-transform-conditional-statements/
https://www.dev-notes.ru/articles/javascript/clean-your-javascript-transform-conditional-statements/
Заметки разработчика
Очистите свой JavaScript: Трансформация условных операторов
В динамичном и постоянно развивающемся мире JavaScript, путь от новичка до опытного профессионала сопряжён с множеством трудностей и кривых обучения.
В этой статье я рассмотрю регулярные выражения, также известные как Regex, и попытаюсь убедить вас в том, что их наличие в вашей кодовой базе — плохая идея. Для краткости я не буду пытаться объяснить внутреннюю работу и применение Regex, но постараюсь убедить вас в необходимости их рефакторинга из вашей кодовой базы.
https://www.dev-notes.ru/articles/javascript/clean-your-javascript-get-rid-of-the-regular-expressions/
https://www.dev-notes.ru/articles/javascript/clean-your-javascript-get-rid-of-the-regular-expressions/
Заметки разработчика
Очистите свой JavaScript: Избавьтесь от регулярных выражений
В этой статье я рассмотрю регулярные выражения, также известные как Regex, и попытаюсь убедить вас в том, что их наличие в вашей кодовой базе — плохая идея.
В Symfony 6.4 реализована поддержка числовых кодов ISO 3166-1, улучшено ограничение Type, повышена точность форматирования временных сообщений, улучшена работа утилит фильтрации Finder...
https://www.dev-notes.ru/articles/symfony/new-in-symfony-6-4-dx-improvements-part-1/
https://www.dev-notes.ru/articles/symfony/new-in-symfony-6-4-dx-improvements-part-1/
Заметки разработчика
Новое в Symfony 6.4: Улучшения DX (часть 1)
В Symfony 6.4 реализована поддержка числовых кодов ISO 3166-1, улучшено ограничение Type, повышена точность форматирования временных сообщений.
Цепочка прототипов — это механизм в JavaScript, позволяющий объектам наследовать свойства и методы других объектов, имея общий прототип. В JavaScript каждый объект имеет связанный с ним прототип объекта, и эти прототипы образуют цепочку. Когда свойство или метод не найдены в объекте, JavaScript просматривает цепочку прототипов, чтобы найти его в прототипе объекта или в прототипах его предков.
https://www.dev-notes.ru/articles/javascript/what-is-prototype-chaining/
https://www.dev-notes.ru/articles/javascript/what-is-prototype-chaining/
Заметки разработчика
Что такое цепочка прототипов в JavaScript
Цепочка прототипов — это механизм в JavaScript, позволяющий объектам наследовать свойства и методы других объектов, имея общий прототип.
AssetMapper был представлен в Symfony 6.3 как новый и современный способ управления ресурсами JavaScript и CSS с нулевой сборкой или внешними зависимостями, как в Node. В Symfony 6.4 мы его улучшили, добавив ряд функций, о которых вы просили. Компонент теперь также стабилен и защищён нашим BC обещанием!
https://www.dev-notes.ru/articles/symfony/new-in-symfony-6-4-assetmapper-improvements/
https://www.dev-notes.ru/articles/symfony/new-in-symfony-6-4-assetmapper-improvements/
Заметки разработчика
Новое в Symfony 6.4: Улучшения AssetMapper
AssetMapper в Symfony 6.4 содержит огромное количество новых функций: загрузка локальных вендоров, поддержка CSS, интеллектуальная предзагрузка и многое другое.
TypeScript, статически типизированный надмножество JavaScript, привносит в язык дополнительные статические типы и объектно-ориентированное программирование на основе классов. Две важнейшие концепции, которые вводит TypeScript, — это Перегрузка и Дженерики. Эти возможности повышают гибкость, удобство повторного использования кода и безопасность наших программ.
https://www.dev-notes.ru/articles/typescript/typescript-mastering-overloading-and-generics/
https://www.dev-notes.ru/articles/typescript/typescript-mastering-overloading-and-generics/
Заметки разработчика
TypeScript: Освоение Перегрузки и Дженериков
Две важнейшие концепции, которые вводит TypeScript, — это Перегрузка и Дженерики.
Node.js позволяет создавать быстрые и масштабируемые веб-приложения используя JavaScript как на сервере, так и на клиенте. Ваше приложение может прекрасно работать на машине разработчика, но можете ли вы быть уверены, что оно будет работать на устройствах ваших коллег или на рабочих серверах?
В этом руководстве рассказывается о преимуществах запуска приложений Node.js в контейнерах Docker и о том, как создать практичный рабочий процесс разработки.
https://www.dev-notes.ru/articles/devops/node-js-docker/
В этом руководстве рассказывается о преимуществах запуска приложений Node.js в контейнерах Docker и о том, как создать практичный рабочий процесс разработки.
https://www.dev-notes.ru/articles/devops/node-js-docker/
Заметки разработчика
Как использовать Node.js с Docker
В этом руководстве рассказывается о преимуществах запуска приложений Node.js в контейнерах Docker и о том, как создать практичный рабочий процесс разработки.
Операции со строками и манипулирование ими относятся к фундаментальным задачам любого языка программирования, и Laravel предлагает обширный набор хелперов для упрощения этих задач. Для разработчика очень важно быть в курсе новейших методик и лучших практик, чтобы оптимизировать эффективность этих хелперов.
В этой статье мы рассмотрим десять ценных советов по оптимизации десяти Laravel хелперов для работы со строками в 2023 году. Независимо от того, являетесь ли вы начинающим или опытным разработчиком Laravel, эти советы помогут вам усовершенствовать навыки работы со строками и сделать ваш код более эффективным.
Давайте погрузимся в этот процесс и раскроем весь потенциал Laravel хелперов для работы со строками.
https://www.dev-notes.ru/articles/laravel/tips-for-optimizing-laravel-10-string-helpers-in-2023/
В этой статье мы рассмотрим десять ценных советов по оптимизации десяти Laravel хелперов для работы со строками в 2023 году. Независимо от того, являетесь ли вы начинающим или опытным разработчиком Laravel, эти советы помогут вам усовершенствовать навыки работы со строками и сделать ваш код более эффективным.
Давайте погрузимся в этот процесс и раскроем весь потенциал Laravel хелперов для работы со строками.
https://www.dev-notes.ru/articles/laravel/tips-for-optimizing-laravel-10-string-helpers-in-2023/
Заметки разработчика
Советы по оптимизации Laravel 10 с помощью строковых хелперов
Раскройте весь потенциал вспомогательных строковых хелперов в Laravel 10 с помощью 10 советов по оптимизации в 2023 году.
Как работать с редиректами и каковы последствия их использования — вот несколько вопросов, возникающих в процессе SEO-аудита. Некоторые SEO-эксперты более фаталистично, чем другие, относятся к тому, как редиректы могут повлиять на рейтинг вашего сайта на страницах результатов поисковых систем (SERP).
Будьте осторожны, когда SEO-эксперт говорит, что необходимо удалить все редиректы с вашего сайта.
В последние месяцы я получил несколько требований от очень обеспокоенных клиентов, которым рекомендовали "удалить ВСЕ редиректы" на сайте, поскольку это влияет на SEO. Обычно к этому требованию прилагается очень длинный лист, включающий все найденные ими "плохие" ссылки, которые должны быть исправлены "немедленно".
Во-первых, единственное, что говорят подобные отчёты, это: "эта ссылка ---- теперь указывает на ----", и больше ничего; при этом не уточняется, хорошо это или плохо, поэтому давайте выясним, как нам следует обрабатывать такие запросы.
https://www.dev-notes.ru/articles/seo/are-redirections-affecting-your-seo/
Будьте осторожны, когда SEO-эксперт говорит, что необходимо удалить все редиректы с вашего сайта.
В последние месяцы я получил несколько требований от очень обеспокоенных клиентов, которым рекомендовали "удалить ВСЕ редиректы" на сайте, поскольку это влияет на SEO. Обычно к этому требованию прилагается очень длинный лист, включающий все найденные ими "плохие" ссылки, которые должны быть исправлены "немедленно".
Во-первых, единственное, что говорят подобные отчёты, это: "эта ссылка ---- теперь указывает на ----", и больше ничего; при этом не уточняется, хорошо это или плохо, поэтому давайте выясним, как нам следует обрабатывать такие запросы.
https://www.dev-notes.ru/articles/seo/are-redirections-affecting-your-seo/
Заметки разработчика
Действительно ли редиректы (301, 302, ...) влияют на SEO
Как работать с редиректами и каковы последствия их использования — вот несколько вопросов, возникающих в процессе SEO-аудита.
Nuno Maduro из Laravel core-team объявил о выпуске нового пакета Laravel Pint, представляющего собой "[...] специализированный корректор стиля PHP-кода для минималистов. Pint построен на базе PHP-CS-Fixer и помогает убедиться, что стиль вашего кода остаётся чистым и последовательным".
Это замечательно, но что делать, если только несколько разработчиков в организации используют Pint? Нужно ли явно просить всю команду разработчиков использовать Pint? В этой статье мы рассмотрим другой (и более элегантный) подход.
Мы не будем рассматривать инсталляцию пакета. Более подробную информацию о пакете и его работе можно найти в его официальном репозитории github. Мы сосредоточимся на том, как запустить Laravel Pint для проверки нашего кода в рамках CI-конвейера с помощью Github Actions.
https://www.dev-notes.ru/articles/devops/run-laravel-pint-as-part-of-your-ci-pipeline-with-github-actions/
Это замечательно, но что делать, если только несколько разработчиков в организации используют Pint? Нужно ли явно просить всю команду разработчиков использовать Pint? В этой статье мы рассмотрим другой (и более элегантный) подход.
Мы не будем рассматривать инсталляцию пакета. Более подробную информацию о пакете и его работе можно найти в его официальном репозитории github. Мы сосредоточимся на том, как запустить Laravel Pint для проверки нашего кода в рамках CI-конвейера с помощью Github Actions.
https://www.dev-notes.ru/articles/devops/run-laravel-pint-as-part-of-your-ci-pipeline-with-github-actions/
Заметки разработчика
Запуск Laravel Pint как части CI-конвейера с помощью Github Actions
Как запустить Laravel Pint для проверки нашего кода в рамках CI-конвейера с помощью Github Actions
Я большой поклонник нового "strict mode" для моделей Laravel. Одна из вещей, которую он помогает отловить, — это ужасный запрос "N+1", вызывающий проблемы с производительностью в продакшене.
https://www.dev-notes.ru/articles/eloquent/lazy-loading-protection-does-not-catch-all-n-plus-1-queries/
https://www.dev-notes.ru/articles/eloquent/lazy-loading-protection-does-not-catch-all-n-plus-1-queries/
Заметки разработчика
Защита от ленивой загрузки не перехватывает все N+1 запросы
Причина в том, что Laravel отслеживает вызовы только через методы отношений, а не анализирует реальные генерируемые запросы и ищет дублирование.
Мы переживаем некий ренессанс CSS: новые возможности, техники, эксперименты и идеи появляются в таком количестве, какого мы не видели со времён "CSS3". Легко почувствовать себя подавленным, когда, кажется, что твоя профессия развивается с бешеной скоростью, но Джефф Грэм (Geoff Graham) считает, что "современный" CSS в 2023 году фактически сделал CSS "проще" в написании.
https://www.dev-notes.ru/articles/css/few-ways-css-easier-write-2023/
https://www.dev-notes.ru/articles/css/few-ways-css-easier-write-2023/
Заметки разработчика
Несколько способов упростить CSS в 2023 году
Мы переживаем некий ренессанс CSS: новые возможности, техники, эксперименты и идеи появляются в таком количестве, какого мы не видели со времён "CSS3".
В Symfony 6.4 добавлено множество функций для улучшения DX (опыта разработчиков): добавление серверных параметров при клике по ссылкам, определение атрибутов краулера по умолчанию и т.д.
https://www.dev-notes.ru/articles/symfony/new-in-symfony-6-4-dx-improvements-part-2/
https://www.dev-notes.ru/articles/symfony/new-in-symfony-6-4-dx-improvements-part-2/
Заметки разработчика
Новое в Symfony 6.4: Улучшения DX (часть 2)
В Symfony 6.4 добавлено множество функций для улучшения DX (опыта разработчиков): добавление серверных параметров при клике по ссылкам и т.д.
Этот совет продолжает начатую вчера тему, связанную с проверкой строгости Eloquent.
https://www.dev-notes.ru/articles/eloquent/a-surprising-issue-with-the-auth-user-and-tests/
https://www.dev-notes.ru/articles/eloquent/a-surprising-issue-with-the-auth-user-and-tests/
Заметки разработчика
Удивительная проблема с Auth user и тестами
Знание того, как это работает, поможет избежать ложных сбоев в тестах.
Полное руководство по установке или обновлению до PHP 8.3 на Ubuntu 22.04 (Jammy), Ubuntu 20.04 (Focal) и Debian 12 (Bookworm), Debian 11 (Bullseye), Debian 10 (Buster).
PHP 8.3 — это новое крупное обновление PHP 2023 года. В нем появились такие новые возможности, как типизированные константы классов, новый набор исключений в расширении DateTime, новая функция json_validate, а также ряд новых возможностей, изменений и исправлений. Как всегда, в PHP 8.3 исправлен ряд ошибок и улучшений, и также улучшена производительность.
В этой статье рассказывается об установке PHP 8.3 на современные системы Debian и Ubuntu. Аналогичным образом можно установить и некоторые из наиболее популярных расширений PECL, которые перечислены в разделе Установка расширений PECL.
https://www.dev-notes.ru/articles/devops/php-8.3-install-upgrade-on-debian-ubuntu/
PHP 8.3 — это новое крупное обновление PHP 2023 года. В нем появились такие новые возможности, как типизированные константы классов, новый набор исключений в расширении DateTime, новая функция json_validate, а также ряд новых возможностей, изменений и исправлений. Как всегда, в PHP 8.3 исправлен ряд ошибок и улучшений, и также улучшена производительность.
В этой статье рассказывается об установке PHP 8.3 на современные системы Debian и Ubuntu. Аналогичным образом можно установить и некоторые из наиболее популярных расширений PECL, которые перечислены в разделе Установка расширений PECL.
https://www.dev-notes.ru/articles/devops/php-8.3-install-upgrade-on-debian-ubuntu/
Заметки разработчика
Как установить или обновить PHP 8.3 на Ubuntu и Debian
Полное руководство по установке или обновлению до PHP 8.3 на Ubuntu 22.04, Ubuntu 20.04 и Debian 12 (Bookworm), Debian 11 (Bullseye), Debian 10 (Buster).
Полное руководство по установке или обновлению PHP 8.3 на Fedora, RHEL, CentOS, Alma Linux, Rocky Linux и другие.
PHP 8.3 — это крупное обновление PHP 2023 года, принёсшее несколько новых функций, таких как типизированные константы классов, гранулированные исключения в расширении DateTime, новая функция json_validate, изменения и улучшения функциональности, а также исправления. Как и в предыдущих версиях PHP, в PHP 8.3 также исправлены ошибки и улучшена производительность.
В этой статье рассказывается о том, как установить PHP 8.3 на современные системы Fedora, Red Hat Enterprise Linux и другие системы, бинарно совместимые с RHEL, такие, как CentOS Stream, Alma Linux и Rocky Linux. В статье используется репозиторий, поддерживаемый Реми Колле (Remi Collet), который поддерживает пакеты PHP на этих системах уже более десяти лет.
https://www.dev-notes.ru/articles/devops/php-8.3-install-upgrade-on-fedora-rhel-el/
PHP 8.3 — это крупное обновление PHP 2023 года, принёсшее несколько новых функций, таких как типизированные константы классов, гранулированные исключения в расширении DateTime, новая функция json_validate, изменения и улучшения функциональности, а также исправления. Как и в предыдущих версиях PHP, в PHP 8.3 также исправлены ошибки и улучшена производительность.
В этой статье рассказывается о том, как установить PHP 8.3 на современные системы Fedora, Red Hat Enterprise Linux и другие системы, бинарно совместимые с RHEL, такие, как CentOS Stream, Alma Linux и Rocky Linux. В статье используется репозиторий, поддерживаемый Реми Колле (Remi Collet), который поддерживает пакеты PHP на этих системах уже более десяти лет.
https://www.dev-notes.ru/articles/devops/php-8.3-install-upgrade-on-fedora-rhel-el/
Заметки разработчика
Как установить или обновить PHP 8.3 на Fedora, RHEL, CentOS
Полное руководство по установке или обновлению PHP 8.3 на Fedora, RHEL, CentOS, Alma Linux, Rocky Linux и другие.