Сетевое взаимодействие — это основа современных технологий, необходимая для подключения устройств и служб. В этой статье вы узнаете о ключевых понятиях, терминологии и протоколах, которые используются в сетевых технологиях.
https://www.dev-notes.ru/articles/devops/networking-101/
https://www.dev-notes.ru/articles/devops/networking-101/
Заметки разработчика
Основы сетевых технологий
В этой статье вы узнаете о ключевых понятиях, терминологии и протоколах, которые используются в сетевых технологиях.
Если вы читаете эту статью, то, скорее всего, вы использовали систему доменных имён (DNS), даже не подозревая об этом. DNS — фундаментальная часть интернета, которая позволяет нам получать доступ к веб-сайтам и онлайн-услугам, используя вместо цифровых адресов удобные для человека имена. Но как именно она работает? В этой статье я расскажу об основах DNS и о том, как она помогает нам ориентироваться в Интернете.
https://www.dev-notes.ru/articles/devops/everything-you-need-to-know-about-dns/
https://www.dev-notes.ru/articles/devops/everything-you-need-to-know-about-dns/
Заметки разработчика
Все, что нужно знать о DNS
В этой статье я расскажу об основах DNS и о том, как она помогает нам ориентироваться в Интернете.
Со свойствами фона CSS можно сделать очень многое. В этой статье мы рассмотрим, как использовать свойство
https://www.dev-notes.ru/articles/css/how-to-use-css-background-size-and-background-position/
background-size для установки размера фонового изображения, а также изучим варианты позиционирования фонового изображения с помощью background-position.https://www.dev-notes.ru/articles/css/how-to-use-css-background-size-and-background-position/
Заметки разработчика
Как использовать CSS background-size и background-position
Узнайте, как задать размер фонового изображения с помощью свойства CSS background-size и как расположить его с помощью background-position.
PHP поддерживает замену значений PHP INI на переменные окружения с помощью синтаксиса строковой интерполяции PHP. Если указанная переменная окружения недоступна, парсер INI использует пустую строку. В PHP 8.3 этот синтаксис расширен для поддержки объявления запасного/fallback значения, если переменная окружения не установлена.
https://www.dev-notes.ru/articles/php/php-83-php-ini-envar-fallback-value-syntax/
https://www.dev-notes.ru/articles/php/php-83-php-ini-envar-fallback-value-syntax/
Заметки разработчика
PHP 8.3: Поддержка запасного/fallback значения для синтаксиса переменных окружения PHP INI
PHP поддерживает замену значений PHP INI на переменные окружения. В PHP 8.3 этот синтаксис расширен для поддержки объявления запасного/fallback значения.
Для разработчика важно иметь твёрдое представление, что такое интернет и как он работает. Это фундамент, на котором строится большинство современных программных приложений. Чтобы создавать эффективные, безопасные и масштабируемые приложения и сервисы, необходимо хорошо понимать, как работает интернет и как использовать его возможности и связи.
В этой статье мы рассмотрим основы интернета, в том числе, что это такое, как он работает, основные понятия, терминологию и общие протоколы, используемые для создания приложений и услуг в интернете.
https://www.dev-notes.ru/articles/devops/how-does-internet-work/
В этой статье мы рассмотрим основы интернета, в том числе, что это такое, как он работает, основные понятия, терминологию и общие протоколы, используемые для создания приложений и услуг в интернете.
https://www.dev-notes.ru/articles/devops/how-does-internet-work/
Заметки разработчика
Как работает Интернет
Чтобы создавать эффективные, безопасные и масштабируемые приложения и сервисы, необходимо понимать, как работает интернет и как использовать его возможности.
В PHP CLI предусмотрена функция линтинга, которая проверяет переданное имя файла на наличие синтаксических ошибок. Это удобно для быстрой проверки PHP-файла или фрагмента перед выполнением.
До версии PHP 8.3 не было возможности проверять несколько PHP-файлов в одном вызове; независимо от количества файлов, PHP CLI проверял только первый файл.
https://www.dev-notes.ru/articles/php/php-83-cli-lint-multiple-files/
До версии PHP 8.3 не было возможности проверять несколько PHP-файлов в одном вызове; независимо от количества файлов, PHP CLI проверял только первый файл.
https://www.dev-notes.ru/articles/php/php-83-cli-lint-multiple-files/
Заметки разработчика
PHP 8.3: PHP CLI Lint (php -l) поддерживает одновременную проверку нескольких файлов
В CLI PHP предусмотрена функция линтинга, проверяющая переданное имя файла на наличие синтаксических ошибок. Это удобно для быстрой проверки.
В этой статье мы рассмотрим несколько способов стилизации полосы прокрутки в CSS, в разных браузерах, чтобы вы могли настроить полосу прокрутки по умолчанию в соответствии с вашим брендом или дизайном.
Полоса прокрутки или скроллбар браузера по умолчанию в большинстве случаев работает хорошо. Однако, если оставить её как есть, даже самые красивые сайты могут выглядеть незавершёнными и неотшлифованными. С помощью стилизации полосы прокрутки можно создать более визуально привлекательный сайт, который будет лучше соответствовать вашему бренду или дизайну. В этом руководстве мы рассмотрим несколько различных способов стилизации полосы прокрутки в CSS.
https://www.dev-notes.ru/articles/css/guide-styling-css-scrollbars/
Полоса прокрутки или скроллбар браузера по умолчанию в большинстве случаев работает хорошо. Однако, если оставить её как есть, даже самые красивые сайты могут выглядеть незавершёнными и неотшлифованными. С помощью стилизации полосы прокрутки можно создать более визуально привлекательный сайт, который будет лучше соответствовать вашему бренду или дизайну. В этом руководстве мы рассмотрим несколько различных способов стилизации полосы прокрутки в CSS.
https://www.dev-notes.ru/articles/css/guide-styling-css-scrollbars/
Заметки разработчика
Руководство по стилизации скроллбара (полосы прокрутки) в CSS
В этой статье мы рассмотрим несколько способов стилизации скроллбара в CSS, в разных браузерах.
PHP-функция
До версии PHP 8.3 попытка присвоить псевдоним встроенному классу PHP приводила к исключению
https://www.dev-notes.ru/articles/php/php-83-class_alias-php-built-in-classes-supported/
class_alias() создаёт псевдоним для заданного класса. Псевдоним ведёт себя точно так же, как и оригинальный класс.До версии PHP 8.3 попытка присвоить псевдоним встроенному классу PHP приводила к исключению
ValueError.https://www.dev-notes.ru/articles/php/php-83-class_alias-php-built-in-classes-supported/
Заметки разработчика
PHP 8.3: class_alias() создание псевдонимов встроенных классов
PHP-функция class_alias() может создавать псевдоним для заданного класса. Псевдоним ведёт себя точно так же, как и оригинальный класс.
Как очистить базу данных удалив ненужные данные с помощью встроенной функции Laravel для повышения производительности запросов.
По понятным причинам таблицы баз данных со временем имеют тенденцию к увеличению размеров. Поэтому для поддержания производительности запросов время от времени требуется их настройка.
Среди распространённых методов — создание индексов, переписывание запросов и даже перепроектирование базы данных.
Но есть и другое очевидное решение, которое также может быть применено, — это очистка данных.
В Laravel для этого есть встроенная функция, которая может быть использована двумя различными способами: Очистка и Массовая очистка.
https://www.dev-notes.ru/articles/eloquent/schedule-periodic-database-clean-up-on-laravel/
По понятным причинам таблицы баз данных со временем имеют тенденцию к увеличению размеров. Поэтому для поддержания производительности запросов время от времени требуется их настройка.
Среди распространённых методов — создание индексов, переписывание запросов и даже перепроектирование базы данных.
Но есть и другое очевидное решение, которое также может быть применено, — это очистка данных.
В Laravel для этого есть встроенная функция, которая может быть использована двумя различными способами: Очистка и Массовая очистка.
https://www.dev-notes.ru/articles/eloquent/schedule-periodic-database-clean-up-on-laravel/
Заметки разработчика
Планирование периодической очистки базы данных на Laravel
Как очистить базу данных удалив ненужные данные с помощью встроенной функции Laravel для повышения производительности запросов
PHP предоставляет функции
Помимо разбора текста, парсер INI поддерживает наследование значений системного окружения и констант PHP, объявленных к моменту разбора текста. Начиная с версии PHP 8.3, он также поддерживает синтаксис запасных (fallback) значений для переменных окружения.
Хотя эти усовершенствования полезны для конфигурирования PHP с помощью переменных окружения и использования доступных PHP-констант, использование встроенного PHP-парсера для анализа INI-значений, предоставленных пользователем, может стать уязвимостью безопасности, поскольку PHP можно обманом заставить раскрыть переменные окружения и PHP-константы, которые, скорее всего, содержат конфиденциальные данные, не подлежащие раскрытию.
https://www.dev-notes.ru/articles/php/php-83-parse_ini_string-file-security-considerations/
parse_ini_string и parse_ini_file, которые повторно используют встроенный в PHP синтаксический анализатор, применяемый для собственных конфигурационных файлов PHP на основе INI.Помимо разбора текста, парсер INI поддерживает наследование значений системного окружения и констант PHP, объявленных к моменту разбора текста. Начиная с версии PHP 8.3, он также поддерживает синтаксис запасных (fallback) значений для переменных окружения.
Хотя эти усовершенствования полезны для конфигурирования PHP с помощью переменных окружения и использования доступных PHP-констант, использование встроенного PHP-парсера для анализа INI-значений, предоставленных пользователем, может стать уязвимостью безопасности, поскольку PHP можно обманом заставить раскрыть переменные окружения и PHP-константы, которые, скорее всего, содержат конфиденциальные данные, не подлежащие раскрытию.
https://www.dev-notes.ru/articles/php/php-83-parse_ini_string-file-security-considerations/
Заметки разработчика
PHP 8.3: Проблемы безопасности парсинга INI-строк и файлов
Вопросы безопасности при разборе пользовательских INI-строк и файлов с помощью функций `parse_ini_string` и `parse_ini_file`.
Исследуем тип
В информатике запись — это структура данных, содержащая набор полей, возможно, разных типов. В TypeScript тип
Другими словами, тип
https://www.dev-notes.ru/articles/typescript/level-up-typescript-record-types/
Record в TypeScript, чтобы лучше понять, как он работает. Также рассмотрим примеры его использования, например, использование с дженериками.В информатике запись — это структура данных, содержащая набор полей, возможно, разных типов. В TypeScript тип
Record просто позволяет нам определять словари, также называемые парами ключ/значение, с фиксированным типом для ключей и фиксированным типом для значений.Другими словами, тип
Record позволяет определить тип словаря, то есть имена и типы его ключей. В этой статье мы рассмотрим тип Record в TypeScript, чтобы лучше понять, что это такое и как он работает. Также рассмотрим, как использовать его для обработки случаев перечисления, как использовать его с дженериками для понимания свойств возвращаемого значения при написании многократно используемого кода.https://www.dev-notes.ru/articles/typescript/level-up-typescript-record-types/
Заметки разработчика
Повышение уровня TypeScript с помощью типов Record
Исследуем тип Record в TypeScript, чтобы лучше понять, как он работает. Также рассмотрим примеры его использования, например, использование с дженериками.
Недавно Тейлор выложил бета-версию Laravel Folio на YouTube в видеоролике с ключевой конференции Laracon. В настоящее время документация состоит только из файла readme, что отражает простоту пакета. Благодаря своей простоте мы можем легко догадаться о его внутреннем устройстве. Я решил углубиться в эту тему, и в этой статье мы отправимся на поиски его внутренних механизмов.
https://www.dev-notes.ru/articles/laravel/folio-deep-dive/
https://www.dev-notes.ru/articles/laravel/folio-deep-dive/
Заметки разработчика
Глубокое погружение в Laravel Folio
Пока документация Folio состоит из файла readme, что отражает простоту пакета. Я решил углубиться и в этой статье мы будем изучать его внутренние механизмы.
Многие веб-сайты и веб-приложения, с которыми вы ежедневно взаимодействуете, предоставляют информацию в режиме реального времени. Например, при использовании приложения для обмена сообщениями сообщения появляются на экране сразу после их отправки, не требуя обновления страницы в браузере.
Как правило, подобная функциональность реального времени реализуется в веб-приложениях с помощью WebSockets.
В этой статье мы рассмотрим, что такое WebSockets, где они могут понадобиться, а также альтернативные подходы к использованию WebSockets. Затем мы расскажем, как реализовать WebSockets в приложениях Laravel с помощью Pusher. Рассмотрим, как настроить бэкенд на отправку широковещательных сообщений через WebSockets, а также как настроить фронтенд на прослушивание этих сообщений. Наконец, рассмотрим использование приватных каналов, каналов присутствия, классов каналов и клиентских событий.
https://www.dev-notes.ru/articles/laravel/a-guide-to-using-websockets-in-laravel/
Как правило, подобная функциональность реального времени реализуется в веб-приложениях с помощью WebSockets.
В этой статье мы рассмотрим, что такое WebSockets, где они могут понадобиться, а также альтернативные подходы к использованию WebSockets. Затем мы расскажем, как реализовать WebSockets в приложениях Laravel с помощью Pusher. Рассмотрим, как настроить бэкенд на отправку широковещательных сообщений через WebSockets, а также как настроить фронтенд на прослушивание этих сообщений. Наконец, рассмотрим использование приватных каналов, каналов присутствия, классов каналов и клиентских событий.
https://www.dev-notes.ru/articles/laravel/a-guide-to-using-websockets-in-laravel/
Заметки разработчика
Руководство по использованию Websockets в Laravel
Узнайте, как можно использовать WebSockets и Pusher для добавления функциональности реального времени в приложения Laravel.
В программировании на Node.js модули — это самодостаточные единицы функциональности, которые можно совместно использовать и переиспользовать в разных проектах. Они облегчают нам жизнь как разработчикам, поскольку мы можем использовать их для дополнения наших приложений функциональностью, которую нам не пришлось писать самим. Они также позволяют упорядочить и разделить код, что приводит к созданию приложений, которые легче понять, отладить и поддерживать.
В этой статье я рассмотрю, как работать с модулями в Node.js, уделяя особое внимание их экспорту и использованию.
https://www.dev-notes.ru/articles/javascript/understanding-module-exports-exports-node-js/
В этой статье я рассмотрю, как работать с модулями в Node.js, уделяя особое внимание их экспорту и использованию.
https://www.dev-notes.ru/articles/javascript/understanding-module-exports-exports-node-js/
Заметки разработчика
Понимание module.exports и exports в Node.js
Рассмотрим, как работать с модулями в Node.js, уделяя особое внимание их экспорту и использованию, а также объясняя разницу между module.exports и exports.
TLS 1.3 имеет ряд улучшений по сравнению со своим предшественником TLS 1.2, включая повышенную безопасность и более быстрое время соединения. Однако его включение требует тщательной настройки веб-сервера. Если вы используете Apache или Nginx, то в этом руководстве мы пошагово рассмотрим процесс включения TLS 1.3 в Apache и Nginx на двух популярных дистрибутивах Linux (Ubuntu и CentOS).
Прежде чем перейдём к рассмотрению данного руководства, необходимо отметить, что оно предполагает, что вы обладаете базовым пониманием интерфейса командной строки Linux и знакомы с администрированием веб-серверов. Кроме того, на вашем сервере Ubuntu или CentOS уже должны быть установлены Apache или Nginx.
Помните, что тип выбранного хостинга также может повлиять на производительность сервера. Будь то выделенный сервер, VPS-сервер, облачный или виртуальный хостинг, каждый из них имеет свои преимущества и особенности.
Теперь давайте приступим к включению TLS 1.3 на вашем сервере Apache или Nginx.
https://www.dev-notes.ru/articles/devops/how-to-enable-tls-1-3-in-apache-and-nginx-on-ubuntu-and-centos/
Прежде чем перейдём к рассмотрению данного руководства, необходимо отметить, что оно предполагает, что вы обладаете базовым пониманием интерфейса командной строки Linux и знакомы с администрированием веб-серверов. Кроме того, на вашем сервере Ubuntu или CentOS уже должны быть установлены Apache или Nginx.
Помните, что тип выбранного хостинга также может повлиять на производительность сервера. Будь то выделенный сервер, VPS-сервер, облачный или виртуальный хостинг, каждый из них имеет свои преимущества и особенности.
Теперь давайте приступим к включению TLS 1.3 на вашем сервере Apache или Nginx.
https://www.dev-notes.ru/articles/devops/how-to-enable-tls-1-3-in-apache-and-nginx-on-ubuntu-and-centos/
Заметки разработчика
Как включить TLS 1.3 в Apache и Nginx на Ubuntu и CentOS
Администраторам серверов важно быть в курсе новейших протоколов и технологий. Одной из таких технологий является Transport Layer Security.
Веб-серверы представлены в различных формах, каждая из которых имеет свои уникальные особенности, достоинства и недостатки. От мощного Apache с открытым исходным кодом до высокопроизводительного и эффективного Nginx, от удобного интерфейса IIS от Microsoft до лёгкого и быстрого LiteSpeed — выбор разнообразен и зачастую просто ошеломляет.
Независимо от того, ведёте ли вы небольшой блог или являетесь транснациональной платформой электронной коммерции, выбор правильного программного обеспечения для веб-сервера — это критически важное решение, которое может существенно повлиять на производительность, безопасность и масштабируемость вашего сайта.
В этом руководстве мы приводим подробное сравнение лучших вариантов, доступных в 2023 году. Наша цель — помочь понять нюансы каждого сервера, их пригодность для различных типов веб-сайтов и, в конечном счёте, помочь принять взвешенное решение, максимально соответствующее конкретным потребностям.
https://www.dev-notes.ru/articles/devops/best-web-server-2023/
Независимо от того, ведёте ли вы небольшой блог или являетесь транснациональной платформой электронной коммерции, выбор правильного программного обеспечения для веб-сервера — это критически важное решение, которое может существенно повлиять на производительность, безопасность и масштабируемость вашего сайта.
В этом руководстве мы приводим подробное сравнение лучших вариантов, доступных в 2023 году. Наша цель — помочь понять нюансы каждого сервера, их пригодность для различных типов веб-сайтов и, в конечном счёте, помочь принять взвешенное решение, максимально соответствующее конкретным потребностям.
https://www.dev-notes.ru/articles/devops/best-web-server-2023/
Заметки разработчика
Лучшие веб-сервера в 2023 году
Всесторонний анализ и сравнение программного обеспечения для веб-серверов. Найдите оптимальное серверное решение, соответствующее вашим потребностям в хостинге.
Миксины SCSS обеспечивают эффективный способ повторного использования CSS-кода. Миксины уменьшают дублирование и улучшают структуру кода за счёт инкапсуляции стилей в блоки многократного использования. Благодаря возможности принимать аргументы, миксины становятся невероятно адаптивными и универсальными. В этой статье мы расскажем о том, как SCSS-миксины улучшают разработку фронтенда, способствуя модульности и согласованности кода, и упрощая написание CSS.
Миксины SCSS очень важны для более эффективной разработки CSS. Они позволяют повторно использовать код, что уменьшает дублирование и улучшает организацию. Миксины превращают стили в многократно используемые блоки, что способствует модульности. Они принимают аргументы и в то же время повышают гибкость и расширяют возможности настройки. Многократно используемые стили упрощают разработку CSS, облегчая управление и обновление таблиц стилей. Они помогают в создании согласованного дизайна и улучшении структуры кода, и в итоге вы получаете более качественную таблицу стилей.
https://www.dev-notes.ru/articles/css/reuse-code-master-scss-mixins/
Миксины SCSS очень важны для более эффективной разработки CSS. Они позволяют повторно использовать код, что уменьшает дублирование и улучшает организацию. Миксины превращают стили в многократно используемые блоки, что способствует модульности. Они принимают аргументы и в то же время повышают гибкость и расширяют возможности настройки. Многократно используемые стили упрощают разработку CSS, облегчая управление и обновление таблиц стилей. Они помогают в создании согласованного дизайна и улучшении структуры кода, и в итоге вы получаете более качественную таблицу стилей.
https://www.dev-notes.ru/articles/css/reuse-code-master-scss-mixins/
Заметки разработчика
Повторное использование кода: Освоение SCSS-миксинов
В этой статье мы расскажем о том, как SCSS-миксины улучшают разработку фронтенда, обеспечивая модульность и согласованность кода и упрощая написание CSS.
Сравнение объектов в JavaScript не так просто, как сравнение примитивных типов данных. В статье рассматриваются пять способов глубокого сравнения объектов в JS.
В JavaScript существует 7 примитивных типов данных. Мы можем сравнивать значения любого из этих типов с помощью оператора равенства. Однако сравнение не примитивных типов, таких как объекты, сопряжено с определёнными трудностями, поскольку обычные операторы равенства не сравнивают значения объектов, как можно было бы ожидать.
https://www.dev-notes.ru/articles/javascript/five-different-ways-to-deep-compare-objects/
В JavaScript существует 7 примитивных типов данных. Мы можем сравнивать значения любого из этих типов с помощью оператора равенства. Однако сравнение не примитивных типов, таких как объекты, сопряжено с определёнными трудностями, поскольку обычные операторы равенства не сравнивают значения объектов, как можно было бы ожидать.
https://www.dev-notes.ru/articles/javascript/five-different-ways-to-deep-compare-objects/
Заметки разработчика
Пять различных способов глубокого сравнения JavaScript объектов
Сравнение объектов в JavaScript не так просто, как сравнение примитивных типов данных. В статье рассматриваются пять способов глубокого сравнения объектов в JS.
#Laravel Совет: после изменения записи Eloquent вы можете получить исходные атрибуты, вызвав
getOriginal()Следование стандартным соглашениям об именовании повышает читабельность и облегчает понимание кода. Однако многие разработчики не знают, как правильно использовать соглашения об именовании, и иногда усложняют ситуацию.
В этой статье я расскажу о 10 лучших практиках использования соглашений об именовании JavaScript, которых следует придерживаться.
https://www.dev-notes.ru/articles/javascript/ten-js-naming-conventions-every-developer-should-know/
В этой статье я расскажу о 10 лучших практиках использования соглашений об именовании JavaScript, которых следует придерживаться.
https://www.dev-notes.ru/articles/javascript/ten-js-naming-conventions-every-developer-should-know/
Заметки разработчика
Десять основных соглашений об именовании JavaScript
В этой статье перечислены 10 соглашений об именовании JavaScript, которые должен знать каждый разработчик JavaScript, чтобы писать понятный код.