Массивы являются неотъемлемой частью TypeScript, позволяя разработчикам хранить и манипулировать коллекциями данных. Объект
В этой статье мы рассмотрим, что такое
https://www.dev-notes.ru/articles/typescript/understanding-flatmap-other-typescript-arrays/
Array поставляется с различными методами, облегчающими работу с массивами. Одним из таких методов является метод flatMap().В этой статье мы рассмотрим, что такое
flatMap() и как он работает. Мы также объясним, как объявить массив в TypeScript, и приведём список других полезных методов работы с массивами, доступных в TypeScript, таких, как concat(), copyWithin(), every(), fill(), filter(), flat(), forEach(), shift(), includes() и reduce(). Давайте приступим!https://www.dev-notes.ru/articles/typescript/understanding-flatmap-other-typescript-arrays/
Заметки разработчика
Понимание flatMap() и других массивов TypeScript
В TypeScript объект Array поставляется с различными методами, облегчающими работу с массивами, включая метод flatmap().
Недавно команда Laravel выпустила Laravel Folio — мощный страничный маршрутизатор, предназначенный для упрощения маршрутизации в приложениях Laravel. Следом они выпустили Volt — элегантно выполненный функциональный API для Livewire, позволяющий PHP-логике компонента и шаблонам Blade сосуществовать в одном файле с минимальным количеством шаблонов.
Хотя их можно использовать по отдельности, я считаю, что их совместное применение — это новый, невероятно продуктивный способ создания приложений на Laravel.
В этой статье я расскажу как создать простое приложение, в котором перечисляются эпизоды подкаста Laravel News и пользователи могут их воспроизводить, причём плеер может плавно продолжать воспроизведение при загрузке страницы.
https://www.dev-notes.ru/articles/laravel/livewire-volt-and-folio/
Хотя их можно использовать по отдельности, я считаю, что их совместное применение — это новый, невероятно продуктивный способ создания приложений на Laravel.
В этой статье я расскажу как создать простое приложение, в котором перечисляются эпизоды подкаста Laravel News и пользователи могут их воспроизводить, причём плеер может плавно продолжать воспроизведение при загрузке страницы.
https://www.dev-notes.ru/articles/laravel/livewire-volt-and-folio/
Заметки разработчика
Изучение Livewire 3, Volt и Folio на примере создания плеера подкастов
В этом руководстве мы познакомимся с основами Livewire 3, Volt и Folio и создадим простое приложение, в котором будут отображаться эпизоды подкаста Laravel News
SSH (Secure Shell) — широко распространённый протокол для безопасного удалённого доступа и управления Linux-серверами. По умолчанию SSH прослушивает порт 22. Изменение порта SSH по умолчанию может обеспечить дополнительный уровень безопасности сервера, затруднив проведение автоматизированных атак или сканирования.
В этом пошаговом руководстве мы покажем, как изменить порт SSH по умолчанию в системе Linux. Выполнив эти действия, вы повысите безопасность своего сервера и снизите вероятность несанкционированного доступа.
https://www.dev-notes.ru/articles/devops/how-to-change-the-default-ssh-port-in-linux/
В этом пошаговом руководстве мы покажем, как изменить порт SSH по умолчанию в системе Linux. Выполнив эти действия, вы повысите безопасность своего сервера и снизите вероятность несанкционированного доступа.
https://www.dev-notes.ru/articles/devops/how-to-change-the-default-ssh-port-in-linux/
Заметки разработчика
Как изменить порт SSH по умолчанию в Linux
Изменение порта SSH по умолчанию может обеспечить дополнительный уровень безопасности сервера, затруднив проведение автоматизированных атак или сканирования.
Все, что нужно знать о TypeScript, в одной удобной шпаргалке
https://www.dev-notes.ru/articles/typescript/typescript-cheatsheet/
https://www.dev-notes.ru/articles/typescript/typescript-cheatsheet/
Заметки разработчика
Шпаргалка по TypeScript
Все, что вам нужно знать о TypeScript, в одной удобной шпаргалке
В Laravel валидация возвращает ошибку в виде JSON-ответа с сообщениями об ошибке в строгом стандартном формате. Что делать, если вы хотите изменить его на совершенно другую структуру, потому что ваши фронтендеры запрашивают определённые пары ключ-значение?
https://www.dev-notes.ru/articles/laravel/laravel-validation-completely-customize-error-message-format/
https://www.dev-notes.ru/articles/laravel/laravel-validation-completely-customize-error-message-format/
Заметки разработчика
Валидация Laravel: Как настроить формат сообщений об ошибках
В Laravel валидация возвращает ошибку в виде JSON-ответа с сообщениями об ошибке в строгом стандартном формате. Что делать, если вы хотите изменить его
Сетевое взаимодействие — это основа современных технологий, необходимая для подключения устройств и служб. В этой статье вы узнаете о ключевых понятиях, терминологии и протоколах, которые используются в сетевых технологиях.
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.