Библиотека пхпшника | PHP, Laravel, Symfony, CodeIgniter
11.3K subscribers
1.33K photos
21 videos
26 files
4.02K links
Все самое полезное для пхпшника в одном канале.

По рекламе: @proglib_adv

Учиться у нас: https://proglib.io/w/bca892d6

Для обратной связи: @proglibrary_feeedback_bot

РКН: https://gosuslugi.ru/snet/67a5d13cd6fa92100ee6f68b
Download Telegram
Видео: Как установить Laravel с Svelte, Inertia.js и Vite

Svelte, Inertia.js и Vite не обязательны в Laravel, но они могут быть полезными инструментами для разработки современных веб-приложений с помощью Laravel.

Svelte — это среда JavaScript, которая позволяет вам писать эффективные и реактивные внешние компоненты с упрощенным синтаксисом.

Inertia.js — это библиотека, которая позволяет создавать одностраничные приложения (SPA) с помощью Laravel и Vue.js или React.

Vite — это инструмент сборки, который можно использовать для оптимизации процесса разработки и сборки интерфейсных приложений.

При совместном использовании эти инструменты могут улучшить процесс разработки с помощью Laravel, позволяя разработчикам создавать быстрые, современные и интерактивные веб-приложения.

https://youtu.be/kkmVPKcnC-g
👍6
Phinx

Недавно мы провели опрос про инструменты миграций и заметили, что никто не упомянул Phinx, тогда как на англоязычных форумах достаточно часто проскакивает эта тулза, поэтому мы решили вам про него рассказать

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

Некоторые ключевые особенности Phinx включают в себя:

1. Поддержка нескольких типов баз данных, включая MySQL, PostgreSQL, SQLite и SQL Server.

2. Простой и интуитивно понятный синтаксис для определения изменений схемы базы данных и миграции данных.

3. Возможность отката и отмены изменений в вашей базе данных

4. Встроенная поддержка версий и управления схемой базы данных и изменениями данных с течением времени.

5. Интеграция с популярными фреймворками PHP, такими как Laravel, Symfony и Zend Framework.

С Phinx вы можете создавать миграции баз данных и управлять ими с помощью простого интерфейса командной строки. Вы можете создавать новые миграции, запускать их в локальной среде разработки, а затем развертывать их в других средах по мере необходимости, гарантируя, что схема вашей базы данных и данные останутся согласованными во всех средах.

https://phinx.org/
👍91
Active record: неправильный подход

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

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

https://shawnmc.cool/2023-02-13_active-record-how-we-got-persistence-perfectly-wrong
👍6
#хочу_спросить

Задавайте любые вопросы о программировании и получайте ответы от пользователей. В комментариях под постом укажите #язык, #стек и/или #библиотеку, по которым задаете вопрос.
Троичные состояния контроля доступа Drupal: разрешено, запрещено, нейтрально.

В этой статье обсуждается концепция тройных состояний в управлении доступом Drupal, где доступ к ресурсу может быть предоставлен, запрещен или оставлен в нейтральном состоянии. Автор объясняет, как эта концепция реализована в системе управления доступом Drupal и как она может быть полезна в определенных сценариях.

https://mglaman.dev/blog/trinary-states-drupal-access-control-allowed-forbidden-neutral
👍3🌚2
Forwarded from Библиотека программиста | программирование, кодинг, разработка
#перевод

Больше 10 лет автор статьи был одним из тех, кто рассказывал всем о пользе Big Data. Он был инженером‑основателем Google BigQuery.

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

Он переносил петабайт данных прямо стоя на сцене, показывая, что какими бы огромными и ужасными ни были ваши данные, вместе мы сможем справиться с ними!

В своей статье он резюмирует тем, что больших данных (почти) нет. Нам нужно сосредоточиться не на их объеме, а на том, как выделять из них действительно полезную и важную информацию.

Читать
👍5
Оптимизация на основе профиля (PGO) с PHP

В статье обсуждаются преимущества использования Profile-Guided Optimization (PGO) для оптимизации PHP-кода и повышения производительности веб-приложений.

PGO — это метод, используемый компиляторами для создания оптимизированного кода на основе профиля выполнения программы. Другими словами, PGO помогает компилятору оптимизировать код на основе того, как он фактически используется на практике, а не просто оптимизировать для наиболее распространенных вариантов использования. Автор статьи утверждает, что PGO может значительно повысить производительность PHP-кода, особенно для веб-приложений со сложной кодовой базой.

В статье подробно объясняется, как работает PGO и как его можно использовать с PHP. Автор описывает процесс использования PGO для оптимизации приложения PHP, включая сбор данных профилирования, использование данных для оптимизации кода и проверку повышения производительности.

В целом, статья представляет собой полезное введение в концепцию PGO и то, как ее можно применить к коду PHP для повышения производительности. Он предназначен для разработчиков, которые заинтересованы в оптимизации производительности своих веб-приложений и ищут способы добиться этого.

https://medium.com/@dev.nest/profile-guided-optimization-pgo-with-php-820b7d1bfdcd
❤‍🔥2
👔 Middle+ PHP-разработчик
⛳️ LANGAME
💼🥁 Работав офисе
💵 200 000 - 500 000 рублей

Подробнее: https://proglib.io/vacancies/middle-php-razrabotchik-langame-75a2ade7-2023-03-02
🍌3👍2
ParaTest

Цель ParaTest — поддерживать параллельное тестирование в PHPUnit. Если у вас есть хорошо написанные тесты PHPUnit, вы можете добавить paratest в свой проект и начать использовать его без дополнительной начальной загрузки или настройки

https://github.com/paratestphp/paratest
👍3
Видео: Обзор пакета Fortify для Laravel

Fortify - это пакет для Laravel, который предоставляет удобный интерфейс для аутентификации пользователей в приложении. Он предоставляет готовые компоненты и методы для регистрации пользователей, входа в систему, восстановления пароля и других функций, связанных с аутентификацией.

Пакет Fortify использует встроенную систему аутентификации Laravel, что обеспечивает совместимость с другими пакетами и инструментами Laravel. Он также предоставляет возможность для расширения и настройки, чтобы соответствовать требованиям конкретного приложения.

https://youtu.be/CoTPZeyqBQM
👍3
Какие инструменты/библиотеки используете для анализа кода и используете ли вообще?⬇️⬇️⬇️
🍌2👍1
Manticore Buddy: проблемы и решения

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

https://manticoresearch.com/blog/manticoresearch-buddy-challenges-and-solutions/
👍2
Как вы определяете и измеряете производительность вашего приложения?⬇️
🍌3👍1
OpenAI PHP

Библиотека OpenAI-PHP Client - это PHP-клиент для OpenAI API, который позволяет взаимодействовать с платформой OpenAI и использовать ее функциональность в приложениях, написанных на PHP.

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

Библиотека OpenAI-PHP Client позволяет легко подключиться к OpenAI API и использовать его функции, такие как обработка естественного языка (Natural Language Processing), машинное обучение (Machine Learning) и глубокое обучение (Deep Learning) для создания различных приложений.

https://github.com/openai-php/client
🔥10👍5😁32
👔 Junior Web-разработчик Backend
⛳️ DELTA
💼🥁 Удаленка
💵 до 60 000 рублей

Подробнее: https://proglib.io/vacancies/junior-web-razrabotchik-backend-delta-3b63562f-2023-03-08
😁10👍3
Построение реактивных систем, управляемых сообщениями

Рассказывается о том, как использовать реактивное программирование для построения систем, основанных на сообщениях, на языке программирования PHP. Автор описывает, как создать реактивные компоненты, и как использовать их для обработки и передачи сообщений в системе. Также автор рассматривает некоторые примеры использования реактивности в PHP, такие как реализация шаблона "Наблюдатель" и обработка входящих HTTP-запросов

https://blog.devgenius.io/building-reactive-message-driven-systems-in-php-ba185697becf
👍7