TGViewer
Channel Public Channel
Заметки разработчика

Заметки разработчика

@dev_notes_ru

Заметки о Frontend, Backend и немного DevOps. В основном о #PHP, #Laravel, #JavaScript, #HTML, #CSS, тестировании и настройке серверов.

https://www.dev-notes.ru

@snakenf
Subscribers
457
Photos
740
Videos
4
Links
1.2K

Showing posts older than #1145 · Back to latest

Older Posts 20 shown
Post #1144 178
#php #tips

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

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

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

📱 @dev_notes_ru
  • ❤ 1
  • 👍 1
  • 🔥 1
Post #1143 179
#backend #php #PSR4

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

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

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

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

📱 @dev_notes_ru
  • 👍 1
  • 🔥 1
Post #1142 189
#laravel #php #tips

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

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

📱 @dev_notes_ru
  • ❤ 2
  • 👍 1
Post #1141 182
#react #hook #JavaScript #js

👩‍💻 useEffect в React

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

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

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

📱 @dev_notes_ru
  • ❤ 1
  • 👍 1
  • 🔥 1
Post #1140 178
#laravel #php #tips

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

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

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

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

📱 @dev_notes_ru
  • ❤ 2
  • 👍 2
  • 🔥 2
Post #1139 197
#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
  • 👍 2
  • ❤ 1
  • 🔥 1
Post #1138 212
#joke
  • 😁 1
  • 🤣 1
Post #1137 212
#TypeScript #null #never #tips

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

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

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

📱 @dev_notes_ru
  • ❤ 1
  • 👍 1
  • 🔥 1
Post #1136 194
#laravel #php #tips

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

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

📱 @dev_notes_ru
  • ❤ 1
  • 👍 1
  • 🔥 1
Post #1135 188
#backend #security #headers

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

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

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

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

📱 @dev_notes_ru
  • ❤ 1
  • 👍 1
  • 🔥 1
Post #1134 168
#joke
  • 😁 1
  • 🤣 1
Post #1133 186
#laravel #php #typehint

🤔 Разве было бы не здорово, если бы появился type-hint в цикле foreach?

📱 @dev_notes_ru
  • 👍 5
  • ❤ 2
  • 👎 1
  • 🔥 1
Post #1132 185
#laravel #php #tips

💡 Совет по Laravel: Улучшенный implode

Все пользовались функцией PHP implode, но знаете ли вы о хелпере join? Он делает то же самое, но при этом позволяет настроить последний разделитель 🚀.

📱 @dev_notes_ru
  • 👍 2
  • ❤ 1
  • 🔥 1
Post #1131 180
#frontend #css #css3 #tricks

👩‍💻 Фоны для блочной модели (и чем она может быть полезна)

Можно ограничить распространение background-image элемента с помощью background-clip. Это означает, что можно применить различные фоны, скажем, к padding и border.

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

📱 @dev_notes_ru
  • ❤ 1
  • 👍 1
  • 🔥 1
Post #1130 162
#joke #github
  • 😁 3
  • 🔥 1
  • 🤣 1
Post #1129 188
#laravel #model #carbon #problem

🤔 Небольшая проблема, с которой столкнулся при использовании в Laravel стандартного каста datetime в модели, заключается в том, что он возвращает простые экземпляры Carbon вместо CarbonImmutable, поэтому при преобразовании даты они применяются к тому же экземпляру, а не к новому.

Это редкие случаи, но, может быть, они должны быть иммутабельными по умолчанию? Что вы думаете по этому поводу?

📱 @dev_notes_ru
  • ❤ 1
  • 👍 1
  • 🔥 1
Post #1128 201
#laravel #tips

💡Совет по Laravel: Фильтруйте только реальные электронные письма

Устали от высокого процента отказов из-за неверных адресов электронной почты? Laravel поставляется с правилом проверки dns, чтобы гарантировать, что вы получаете реальные электронные письма. Это не устранит проблему волшебным образом, но определенно улучшит доставляемость 🚀.

📱 @dev_notes_ru
  • 👍 3
  • ❤ 1
  • 🔥 1
Post #1127 158
#JavaScript

👩‍💻 AggregateError в JavaScript

AggregateError был добавлен в ECMAScript 2021 (ES12). Он призван помочь в тех случаях, когда необходимо обработать сразу несколько ошибок. Это очень удобно в таких сценариях, как работа с промисами, когда требуется обработать все ошибки вместе, а не по одной.

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

📱 @dev_notes_ru
  • 👍 2
  • ❤ 1
  • 🔥 1
Post #1126 153
#joke #feature
  • 😁 6
  • 🔥 1
  • 🤣 1
Post #1125 167
#laravel #Carbon #php #tips

🤔 Вероятно, для многих это очевидно, но я, например, продолжаю случайно строго типизировать даты Carbon в Carbon вместо CarbonInterface, поэтому они не могут принимать экземпляры CarbonImmutable 🙃.

📱 @dev_notes_ru
  • ⚡ 1
  • ❤ 1
  • 👍 1
Older posts →
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →