Заметки разработчика
472 subscribers
668 photos
4 videos
1.16K links
Заметки о Frontend, Backend и немного DevOps. В основном о #PHP, #Laravel, #JavaScript, #HTML, #CSS, тестировании и настройке серверов.

https://www.dev-notes.ru

@snakenf
Download Telegram
#backend #security #headers

👩‍💻 Руководство по User Agent

User Agent — это текстовая строка, отправляемая веб-браузером или другим клиентом на веб-сервер вместе с каждым HTTP-запросом. Эта строка содержит информацию об операционной системе клиента, типе браузера, механизме рендеринга, а иногда и другие сведения, например модель устройства или версию используемого программного обеспечения. Строка User Agent позволяет серверу идентифицировать клиента и соответствующим образом адаптировать ответы.

Термин User Agent также может относиться к программному обеспечению, выполняющему запрос, например веб-браузеру, мобильному приложению или боту. Однако в статье мы сосредоточимся на строке User Agent применительно к HTTP-запросам.

🖥 Читать статью

📱 @dev_notes_ru
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍1🔥1
#laravel #php #tips

💡 Совет по Laravel: Массовая отправка

Хотя Laravel предлагает пакетную отправку заданий, иногда требуется просто отправить задание и забыть. В этом случае можно отправлять задания массово, а не по отдельности 🚀.

📱 @dev_notes_ru
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍1🔥1
#TypeScript #null #never #tips

💡 Забавный факт из TypeScript: В любую функцию можно передать null!

! - это утверждение о non-nullable, а null - это null, так что вместе они составляют never.

А never можно передать чему угодно!

📱 @dev_notes_ru
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍1🔥1
#MySQL #GroupBy #DB #DataBase

👩‍💻 MySQL GROUP BY

Оператор GROUP BY в MySQL является одним из самых мощных инструментов агрегирования данных в SQL. Он позволяет группировать строки, имеющие общее значение поля, и выполнять для этих групп такие агрегатные функции, как SUM(), COUNT(), AVG(), MAX() и MIN(). Несмотря на свою простоту, GROUP BY может вызвать затруднения у новичков в SQL и даже у опытных разработчиков из-за различных нюансов и потенциальных подводных камней. Мы рассмотрим GROUP BY в MySQL, предоставим исчерпывающее объяснение, многочисленные примеры, типичные ошибки и лучшие практики, чтобы убедиться, что вы используете его эффективно.

🖥 Читать статью

📱 @dev_notes_ru
Please open Telegram to view this post
VIEW IN TELEGRAM
👍21🔥1
#laravel #php #tips

Laravel предоставляет множество правил валидации, позволяя с легкостью проверять входящие данные.

Среди всех этих интересных правил валидации одно из них - prohibited.

Как следует из названия, если это правило применяется к вводимым данным, оно выбрасывает Validation Exception, если значение не пустое.

Например, вот сценарий, в котором необходимо запретить принимать адреса, если способ доставки - самовывоз, а не доставка на дом, и наоборот.

📱 @dev_notes_ru
Please open Telegram to view this post
VIEW IN TELEGRAM
2👍2🔥2
#react #hook #JavaScript #js

👩‍💻 useEffect в React

Хук useEffect позволяет выполнять побочные эффекты в компонентах. Побочные эффекты — это операции, влияющие на что-то вне области действия выполняемой функции, например, получение данных, обновление DOM или настройка подписок.

До появления хуков побочные эффекты в компонентах React обрабатывались в методах жизненного цикла класса, таких как componentDidMount, componentDidUpdate и componentWillUnmount. С помощью хуков useEffect предоставляет унифицированный API для обработки этих сценариев в компонентах функций.

🖥 Читать статью

📱 @dev_notes_ru
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍1🔥1
#laravel #php #tips

💡 Совет по Laravel: Более безопасные пароли для пользователей

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

📱 @dev_notes_ru
Please open Telegram to view this post
VIEW IN TELEGRAM
2👍1
#backend #php #PSR4

👩‍💻 Стандарт автозагрузки PSR-4 в PHP

По мере роста размера и сложности PHP проектов, управление файлами, классами и пространствами имён становится всё более сложной задачей. Без надлежащей структуры разработчики будут тратить много времени на ручное включение файлов или решение конфликтов с именованием классов. Для решения этих проблем PHP-FIG представила стандарт автозагрузки PSR-4, ставший де-факто способом автозагрузки классов в современных PHP-приложениях.

В статье мы рассмотрим преимущества принятия стандарта автозагрузки PSR-4, способы его применения в проектах и причины, по которым он необходим для создания масштабируемого и поддерживаемого кода. Мы рассмотрим всё, начиная с основ и заканчивая более сложными случаями использования, включая организацию пространств имён, настройку Composer и решение проблем с автозагрузкой.

🖥 Читать статью

📱 @dev_notes_ru
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1🔥1
#php #tips

🤔 А вы знаете, что в PHP можно пропустить выражение инициализации в традиционном цикле for, если переменная уже была инициализирована?

Например, переменная передана в качестве параметра в функцию, с помощью которой нужно инициализировать цикл for.

Небольшой синтаксический нюанс, но интересный для понимания языка.

📱 @dev_notes_ru
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍1🔥1
#React #Vite #JavaScript

👩‍💻 Руководство по использованию Vite в React

Vite, разработанный Evan You (создателем Vue.js), создан для обеспечения молниеносной среды разработки. Для этого он обслуживает файлы с помощью нативных модулей ES и использует оптимизированный сервер разработки. Всё это позволяет ускорить запуск сервера и сделать разработку более отзывчивой.

React, одна из популярных библиотек для создания пользовательских интерфейсов, легко работает с Vite. Его компонентная архитектура идеально подходит для разработки динамических одностраничных приложений (SPA).

В статье мы рассмотрим, как создать проект React с помощью Vite, изучим структуру проекта, покажем, как работать с ресурсами и развернуть приложение. В конце мы рассмотрим, как Vite может улучшить опыт разработки React.

🖥 Читать статью

📱 @dev_notes_ru
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1🔥1
#laravel #php #testing #pest #tips

💡 Совет по Laravel: Запускайте сидеры во время тестов

Знаете ли вы, что сидеры баз данных можно запускать из тестов? Это позволит сохранить чистоту тестов, переместив логику настройки в сидеры 🚀.

📱 @dev_notes_ru
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1🔥1
#NodeJS #npm #yarn

👩‍💻 npm vs. yarn: Ключевые различия и сравнение

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

🖥 Читать статью

📱 @dev_notes_ru
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1🔥1
#laravel #php #tips

💡 Совет по Laravel: Трэйт Conditionable

Пишете множество операторов if для вызова методов в классе? Подумайте о том, чтобы сделать свой класс «условным» с помощью трейта Laravel Conditionable 🚀.

📱 @dev_notes_ru
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1🔥1
#NodeJS #React

👩‍💻 Что означает гидратация

Термин гидратация часто встречается в разговорах о JavaScript фреймворках.

Короткий ответ: это процесс, в ходе которого JavaScript выполняет, согласовывает и делает интерактивным HTML, уже находящийся в DOM, посредством рендеринга на стороне сервера (SSR).

🖥 Читать статью

📱 @dev_notes_ru
Please open Telegram to view this post
VIEW IN TELEGRAM
2👍2🔥1
#laravel #php #tips

🤔А вы знали... о методе skip в планировщике Laravel?

Внутри skip() можно определить, когда команда не должна выполняться:

📱 @dev_notes_ru
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3👍1
#git

👩‍💻 Руководство по merge, rebase, squash и cherry-pick

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

В статье рассмотрим основные команды Git, позволяющие эффективно объединять ветви и реагировать на различные ситуации. Рассмотрим основные различия между merge и rebase, а также то, когда следует использовать каждую из них. Также рассмотрим, как использовать cherry pick для добавления определённых коммитов в одну или несколько ветвей, и почему следует объединять связанные коммиты в один, для сохранения чистоты ветви. Наконец, обсудим, как предотвратить некоторые распространённые проблемы при работе с ветвями.

🖥 Читать статью

📱 @dev_notes_ru
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍1🔥1