Telegram Web
Repository Pattern в PHP

Сегодня мы узнаем про шаблон проектирования «Репозиторий» («Repository Pattern»), его особенности и сферы применения, а также сравнение его с другими подходами к доступу к данным, такими как ORM (Object-Relational Mapping).

Шаблон «Репозиторий» представляет собой абстракцию источника данных, который ведет себя как коллекция, содержащая объекты доменной модели. Эта абстракция представлена интерфейсом Repository и обычно содержит методы для получения, сохранения и удаления объектов.

Репозиторий считается единственным источником правды для извлечения и сохранения объектов доменной модели.

Чем Репозиторий НЕ является?

🏭 Не является фабрикой, так как не создает объекты, а только содержит их.
🗄️ Не ORM, не зависит от способа получения объектов (через базу данных, файлы и т. д.).

🖋️ Различия между Репозиториями для Чтения и Записи:

✍️ Репозитории для записи используются для сохранения, обновления и удаления объектов.
📖 Репозитории для чтения предоставляют контекстно-специфичные модели объектов для целей чтения.

Другие аспекты включают в себя соглашения по именованию методов (например, get vs. find), использование ViewModel для представления объектов в различных контекстах, а также возможность замены технической реализации репозитория, например, для доступа к данным через внешние сервисы.

🤔 Когда НЕ использовать Репозиторий?

🚫 Для небольших CRUD-приложений.
🚫 Для создания больших отчетов.

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

👉 Читать полностью
🤔10👍1
static-php-cli — сборка в бинарный файл

Инструмент для сборки PHP-приложений в один бинарный файл без дополнительных зависимостей.

Он имеет множество фич:

👜 Сборка однофайлового исполняемого файла php, без каких-либо зависимостей
🍔 Сборка самораспаковывающегося исполняемого файла phpmicro (склеивание бинарного и исходного кода php в один файл)
💊 Автоматическая проверка окружения сборки (модуль Doctor)
Поддержка Linux, macOS, FreeBSD, Windows
🔧 Настраиваемые исправления исходного кода
📚 Управление зависимостями сборки
📦 Предоставление собственного автономного исполняемого файла spc (собранного spc и box)
🔥 Поддержка многих популярных расширений
💾 Интеграция UPX (значительно уменьшает размер бинарных файлов)

🔗 Github

Библиотека пхпшника #инструменты
👍43🔥2
😱 Вся правда об увольнениях в IT в 2025-м

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

Но для этого нам нужна ваша помощь! Мы собираем данные от разработчиков, тестировщиков, менеджеров и всех, кто работает в ИТ, чтобы создать честное исследование о:

— реальных причинах массовых увольнений
— судьбе тех, кто остался за бортом IT-рынка
— том, сколько времени сейчас нужно на поиск работы

Почему это важно? Потому что сила в правде. Зная реальную ситуацию, вы сможете лучше понимать тренды рынка и планировать карьеру.

⚡️Пройдите опрос и помогите всему сообществу: https://clc.to/yJ5krg
1😁1
🔥 Статический анализ в PHP — ваш секретный оружейник в борьбе с багами!

🔸 Проверяет код без запуска — ловит типы, мертвый код и ошибки логики

🔸 PHPStan, Psalm и Rector — тройка инструментов для проверки, безопасности и рефакторинга

🔸 Автоматизация в CI и моментальный фидбек в IDE — код становится чище и надёжнее

🔸 Легко начать, постепенно повышать уровень и модернизировать даже legacy проекты

Хочешь узнать, как настроить и использовать этот мощный набор?

👉 Читай полную статью на Medium
5🔥3
👾 AI-агенты — настоящее, о котором все говорят

На днях мы анонсировали наш новый курс AI-агенты для DS-специалистов 🎉

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

На обучении вы соберете полноценные LLM-системы с учётом особенностей доменных областей, получите hands-on навыки RAG, Crew-AI / Autogen / LangGraph и агентов.

🎓 В рамках курса вы научитесь:
— адаптировать LLM под разные предметные области и данные
— собирать свою RAG-систему: от ретривера и реранкера до генератора и оценки качества
— строить AI-агентов с нуля — на основе сценариев, функций и взаимодействия с внешней средой

Разберете реальные кейсы и научитесь применять похожие подходы в разных доменных областях, получите фундамент для уверенного прохождения NLP system design интервью и перехода на следующий грейд.

Старт 5 июля, а при оплате до 1 июня действует дополнительная скидка и бонус — эксклюзивный лонгрид по API и ML от Proglib.

Начните осваивать тему уже сейчас 👉 https://clc.to/Cttu7A
🥱21
Библиотека пхпшника | PHP, Laravel, Symfony, CodeIgniter pinned «👾 AI-агенты — настоящее, о котором все говорят На днях мы анонсировали наш новый курс AI-агенты для DS-специалистов 🎉 Это продвинутая программа для тех, кто хочет получить прикладной опыт с LLM и решать сложные задачи! На обучении вы соберете полноценные…»
Представим, что сейчас 2035 год. В IT больше не входа — есть только выход.

Мир полностью автоматизировал простые задачи: тесты, вёрстку, бэкенд, фронтенд, дизайн, продуктовые решения. GPT-10 собирает MVP по голосовому описанию, Midjourney Designer Suite создаёт UI лучше лучших дизайнеров. Стартапы запускаются за 10 минут с кредиткой.

Компании перестали брать джунов — зачем, если ИИ закрывает всё? Мидлы ушли следом. Остались только сеньоры — те, кто управляет ИИ и решает сложные задачи. Остальные — лишь наблюдают, как вход в IT становится мифом.

Государства ничего не могли предложить. Они сами автоматизировали свои ИТ-отделы. Бигтехи держали элитные стажировки, но туда отбирали только тех, кто ещё в 15 лет делал open-source фреймворки и выигрывал олимпиаду по архитектуре ПО.

Иван — пример такого поколения. Он начал учиться в 2025-м, когда казалось: достаточно стараться и всё получится. Но каждый раз он упирался в стену: «Ты не работал в реальных проектах». А реальных проектов ему не давали.

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

И всё равно — он чувствовал, что где-то была ошибка. Не в себе. Не в коде. В системе, где лестница исчезла, а потолок остался.

Как думаете, возможен ли такой сценарий в будущем? Ведь мир меняется, и нужно только успевать к нему адаптироваться.

Библиотека пхпшника #междусобойчик
5😁2💯1
😀 Самые полезные хоткеи в VS Code

Хотите писать код быстрее и кайфовать от процесса? Вот подборка горячих клавиш, которые реально облегчают жизнь:

🔥 Общие команды

🔹 Ctrl + Shift + N — создать новый проект за пару секунд.

🔹 Ctrl + O — мгновенно открыть нужный файл.

🔹 Ctrl + S — сохранить изменения одним нажатием.

🔹 Ctrl + Shift + S — сохранить всё сразу, чтобы не потерять ни строчки.

🔹 Ctrl + Z / Ctrl + Y — отменить или вернуть последнее действие без лишних движений.

💬 А какие хоткеи у вас самые любимые? Может, есть свои "скрытые фишки" работы в VS Code? Делитесь в комментариях👇

Библиотека пхпшника #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
😁1
Команды Artisan, которые вы не используете (но определенно должны)

Если вы думали, что Artisan — это только для запуска сервера и миграций, пора взглянуть шире. Этот мощный CLI-инструмент может значительно ускорить разработку, упростить отладку и помочь лучше понять Laravel.

📌 Полезные команды для работы с маршрутами:
php artisan route:list --method=POST — показывает только POST-маршруты (удобно при отладке форм или API)
php artisan route:list --path=admin — фильтрует маршруты по пути, например, для админки
php artisan route:list --only-vendor — список маршрутов от сторонних пакетов

️ Крутые make: команды для генерации кода:
php artisan make:controller PostController --model=Post --requests --test — создаёт контроллер с привязкой к модели, запросами валидации и тестами
php artisan make:model Post --all — генерация модели, миграции, фабрики, сидера, политики и контроллера одним махом!
Сокращённые флаги: php artisan make:model Product -mcfs (migration, controller, factory, seeder)

🛠️ Создавайте свои Artisan команды и автоматизируйте рутину:

php artisan make:command CleanOldPosts

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

👉 Читать статью
4👍1🌚1
Последние 2 дня скидки на курс «AI-агенты для DS-специалистов»

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

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

🎁 Что вы получите при оплате курса до 1 июня:
— Промокод PROGLIBAIна 10 000 ₽ на курс, чтобы изучать AI-агентов еще выгоднее
— Эксклюзивный лонгрид по API и ML от Proglib

💡Что разберем на курсе «AI-агенты для DS-специалистов»:
— Реализацию памяти в цепочках langchain
— Полный пайплайн RAG-системы с оценкой качества
— Основы мультиагентных систем (MAS)
— Протокол MCP и фреймворк FastMCP

Промокод также действует на курсы «Математика для Data Science» и «Алгоритмы и структуры данных».

👉 Успейте до 1 июня: https://clc.to/Cttu7A
👍1
Опишите свое состояние к концу рабочей недели с помощью трёх эмодзи.

Библиотека пхпшника #междусобойчик
😢5🤩2🥱1🌚1👾1
This media is not supported in your browser
VIEW IN TELEGRAM
SPX — удобный профилировщик

Простое и понятное расширение для профилирования PHP со встроенным веб-интерфейсом. От других подобных расширений оно отличается тем, что:

🟢полностью бесплатное и ограниченное вашей инфраструктурой (т.е. никаких утечек данных в SaaS).
🟢Очень прост в использовании: просто установите переменную окружения (командная строка) или включите радиокнопку (веб-запрос) для профилирования вашего скрипта. Таким образом, вы освобождаетесь от необходимости ручного инструментирования кода (поддерживается даже Ctrl-C долго работающего скрипта командной строки).
🟢возможность получения множества метрик: в настоящее время поддерживается 22 метрики (различные метрики времени и памяти, включенные файлы, используемые объекты, ввод-вывод...).

🔗 Github

Библиотека пхпшника #инструменты
👍64
🚨 Что на самом деле происходит с увольнениями в ИТ

Каждый день в чатах разработчиков появляются сообщения «ищу работу», «команду сократили», «проект закрыли». Но никто не говорит о причинах и масштабах катастрофы. Мы запустили большое исследование, чтобы раскрыть правду!

🎯 Что мы выясним:
→ Реальные причины увольнений
→ Сколько времени нужно на поиск работы
→ Самые безумные истории смены работы

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

👉 Пройдите опрос за 3 минуты и помогите всему сообществу: https://clc.to/yJ5krg
Переменной $a было задано значение 5, затем объявлена переменная $b=&$a, после чего $b была приравнена к 10. Чему равны переменные $a и $b?
Anonymous Quiz
3%
5, 5
21%
5, 10
76%
10, 10
⌨️ Топ-вакансий по PHP за неделю

Backend Developer (Sheet Music Plus) — 5 000 —‍ 6 000 €, удалёнка (США)

Fullstack developer (PHP+JS) — от 2000 до 3000 $, удалёнка (Москва)

PHP-разработчик (Digital) — от 240 000 ₽, удалёнка (Москва)

PHP Backend-разработчик (Middle+)— от 180 000 ₽, Гибрид (Москва)

➡️ Еще больше топовых вакансий — в нашем канале PHP Jobs
🥱1
Преобразование JSON в типизированные коллекции с помощью функции Laravel AsCollection::of()

Если вы когда-либо сохраняли сложные структуры данных в JSON-колонках и потом пытались с этим работать — вы знаете, как легко всё превратить в кашу из массивов. Но Laravel снова на шаг впереди. Встречайте: AsCollection::of() 🎉

Теперь можно автоматически превращать JSON-данные в коллекции объектов нужного класса. Это значит — типы, методы, читаемость и никаких костылей!

🔗 Полная статья
👍6🌚2👾1
2025/07/09 02:41:10
Back to Top
HTML Embed Code: