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

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

@dev_notes_ru

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

https://www.dev-notes.ru

@snakenf
Subscribers
458
Photos
740
Videos
4
Links
1.2K

Showing posts older than #363 · Back to latest

Older Posts 20 shown
Post #362 16
Клонирование readonly свойств в PHP 8.3

В PHP 8.3 добавлена возможность перезаписи значения readonly свойств при клонировании объекта. Не заблуждайтесь: вы не можете клонировать любой объект и перезаписывать его readonly значения из любого места. Эта функция касается только очень специфического (но важного) пограничного случая.

https://www.dev-notes.ru/articles/php/cloning-readonly-properties-in-php-83/
Заметки разработчика Клонирование readonly свойств в PHP 8.3 В PHP 8.3 добавлена возможность перезаписи readonly свойств при клонировании объекта. Эта функция касается только очень специфического, пограничного, случая.
Post #361 15
SQL-инъекции: UNION атаки

Когда приложение уязвимо для SQL-инъекций и результат запроса возвращаются в ответах приложения, можно использовать ключевое слово UNION для извлечения данных из других таблиц базы данных. Это приводит к SQL-инъекции с UNION атакой.

https://www.dev-notes.ru/articles/security/sql-injection-union-attacks/
Заметки разработчика SQL-инъекции: UNION атаки Когда приложение уязвимо для SQL-инъекций и можно использовать UNION для извлечения данных из других таблиц. Это приводит к SQL-инъекции с UNION атакой.
Post #360 16
Один из лучших способов стабилизировать устаревшую кодовую базу Laravel:

1. Исправьте code style. Необходимо навести порядок в хаосе. Для этого требуется хорошая коммуникация с командой. Потому что Git конфликты — кошмар.
2. Создайте отсутствующие миграции. Часто бывают проекты, в которых отсутствуют некоторые миграции, потому что разработчики сами редактировали базу данных.
3. Создайте недостающие фабрики. Нужен обширный набор случайных фейковых данных для локальной разработки.
4. Начните писать тесты для таких простых вещей, как GET маршруты. Это станет большим шагом вперёд. Фабрики в этом помогут.
5. Создайте среду непрерывной интеграции CI. Лучше всего для этого подходят GitHub Actions, и существует множество примеров с открытым исходным кодом.
6. Переложите как можно больше работы на фреймворк. Если вы начали писать хорошие тесты, теперь вы можете перейти от чьей-то ненужной реализации к Laravel пути. Разработчики, изобретающие велосипед, часто делают это, потому что им не хватает знаний о фреймворке.
Post #358 16
SQLi: Шпаргалка по SQL-инъекциям

Эта шпаргалка по SQL-инъекциям содержит примеры полезного синтаксиса, который можно использовать для различных задач, часто возникающих при выполнении атак с помощью SQL-инъекций.

https://www.dev-notes.ru/articles/security/sql-injection-cheat-sheet/
Заметки разработчика SQLi: Шпаргалка по SQL-инъекциям Эта шпаргалка по SQL-инъекциям содержит примеры полезного синтаксиса, который можно использовать для различных задач, часто возникающих при выполнении атак.
Post #357 13
SQLi: Что такое SQL-инъекция

В этой статье мы объясним, что такое SQL-инъекции (SQLi), опишем несколько распространённых примеров, объясним, как находить и использовать различные виды уязвимостей SQL-инъекций, а также подведём итоги, как предотвратить SQL-инъекции.

https://www.dev-notes.ru/articles/security/sql-injection/
Заметки разработчика SQL-инъекция В этой статье мы рассмотрим, что такое SQL-инъекции, как находить и использовать различные виды уязвимостей SQL-инъекций, а также как предотвратить SQL-инъекции.
Post #356 14
Laravel совет.

Вы можете использовать один и тот же класс запроса формы From Request для нескольких действий контроллера, используя match или switch в методе rules()
Post #355 15
Laravel совет.

Вы можете указать класс Seeder не только с помощью php artisan db:seed --class=XXXXX, но и с помощью php artisan migrate:fresh --seed --seeder=XXXXX
Post #354 16
Python: Понимание объекта NoneType

В этом руководстве вы узнаете об NoneType объекте None, который действует в Python как null. Этот объект представляет собой пустоту, и вы можете использовать его, чтобы отменить параметры по умолчанию и даже показать, когда у вас нет результата. None — это инструмент для того, чтобы делать всё из ничего!

https://www.dev-notes.ru/articles/python/understanding-nonetype-object/
Заметки разработчика Null в Python: Понимание объекта Python NoneType В этой статье вы узнаете о NoneType — объекте None, выполняющем роль null в Python. None — инструмент, позволяющий делать все из ничего!
Post #353 16
Пересобрал модули. Сайт работает в прежнем режиме с поддержкой сжатия brotli.
Post #352 17
Вышел nginx 1.24.0.

Выпущена стабильная версия nginx-1.24.0, включающая новые функции и исправления ошибок из основной ветки 1.23.x.

P.S. У кого стоят модули собранные под 1.23, есть большая вероятность, что они отваляться и nginx не перезапуститься пока вы их не пересоберёте под новую версию или полностью не отключите все связанные с ними директивы из конфигов.

У меня отвалился brotli filter и brotli static, пришлось срочно отключать в конфигах ибо сайт лёг.
Post #351 17
Python: Идентичность и равенство объектов

В этом кратком и практическом руководстве вы узнаете, когда использовать операторы Python is, is not, == и !=. Вы увидите, что эти операторы сравнения делают под капотом, погрузитесь в некоторые особенности идентификации объекта и интернирования, а также определите пользовательский класс.

https://www.dev-notes.ru/articles/python/is-identity-vs-equality/
Заметки разработчика Python: Идентичность и равенство объектов В этом практическом руководстве вы узнаете, когда использовать операторы Python is, is not, == и !=. Вы увидите, что эти операторы сравнения делают под капотом.
Post #350 15
Laravel: Моделирование бизнес процессов

Как разработчики, мы часто сопоставляем бизнес процессы с цифровыми процессам, от отправки электронного письма до чего-то довольно сложного. Давайте посмотрим, как взять более сложный процесс и написать чистый и элегантный код

https://www.dev-notes.ru/articles/laravel/modelling-busines-processes/
Заметки разработчика Laravel: Моделирование бизнес процессов Как разработчики, мы часто сопоставляем бизнес процессы с цифровыми процессам, от отправки электронного письма до чего-то довольно сложного.
Post #349 13
Laravel совет.
Вы можете создать отдельные «глобальные» сидеры, а не только основную DatabaseSeedeer.
Например, если вы хотите иметь набор сидеров для тестирования производительности с большим количеством данных:
1. Создайте отдельные сидеры в подкаталоге
2. Создайте основной сидер
3. Запустите его с помощью php artisan db:seed –class=XXXX
Post #348 14
CSS: Что такое color-mix() и как смешивать цвета

CSS функция color-mix() появилась в Chrome 111. В этой статье объясняется, как использовать эту функцию для смешивания цветов в таблицах стилей.

https://www.dev-notes.ru/articles/css/color-mix/
Заметки разработчика CSS: Что такое color-mix() и как смешивать цвета CSS функция color-mix() появилась в Chrome 111. В этой статье объясняется, как использовать эту функцию для смешивания цветов в таблицах стилей.
Post #347 14
Laravel: Всё, что вы можете протестировать в приложении

Общая проблема при тестировании заключается не в том, как что-то протестировать, а в том, что вы можете протестировать. Я составил список всего, что мне нравиться тестировать в своих приложениях.

https://www.dev-notes.ru/articles/laravel/everything-you-can-test/
Заметки разработчика Laravel: Всё, что вы можете протестировать в приложении Общая проблема при тестировании не в том, как что-то протестировать, а в том, что вы можете протестировать. Я составил список, что мне нравиться тестировать.
Post #346 15
Laravel: Поговорим о запросах формы / Form Request

Запросы формы наиболее известны тем, что переносят логику проверки из контроллеров в класс, который будет выполнять предварительную проверку. Они фантастические, и я постоянно опираюсь на них. Что ещё мы можем сделать с запросами форм?

https://www.dev-notes.ru/articles/laravel/form-request/
Заметки разработчика Laravel: Поговорим о запросах формы / Form Request Запросы формы известны тем, что переносят логику проверки из контроллеров в класс, который будет выполнять предварительную проверку. Я постоянно опираюсь на них
  • 👍 1
Post #345 16
Laravel: Хелперы массива которые нужно знать

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

https://www.dev-notes.ru/articles/laravel/array-helpers-you-need-to-know/
Заметки разработчика Laravel: Хелперы массива которые нужно знать Одна из самых мощных возможностей Laravel — хелперы. В этой статье будут рассмотрены некоторые хелперы массива Laravel, которые должен знать каждый разработчик.
Post #344 17
Laravel: Как написать хелпер

Хотите написать собственный хелпер в Laravel? Узнайте, как создавать собственные вспомогательные функции (хелперы) с помощью этого руководства.

https://www.dev-notes.ru/articles/laravel/custom-helper-functions/
Заметки разработчика Laravel: Как написать хелпер Хотите написать собственный хелпер в Laravel? Узнайте, как создавать собственные вспомогательные функции (хелперы) с помощью этого руководства.
Post #343 14
Laravel: Беспарольная аутентификация

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

https://www.dev-notes.ru/articles/laravel/passwordless-authentication/
Заметки разработчика Laravel: Беспарольная аутентификация Иногда мы не хотим, чтобы у пользователей были пароли. Иногда мы хотим отправить волшебную ссылку на email пользователя, чтобы он кликнул и получил доступ.
Post #342 16
Совет Laravel: если вы хотите обновить одну запись по ее идентификатору, лучше использовать where()->update(), чем find()->update().

Это вопрос одного дополнительного и бесполезного SQL-запроса.
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 →