Telegram Web
🧩 Упакуйте свой код правильно

В предыдущей статье «Как организовать структуру приложения» рассматривались различные подходы к организации кода, включая монолитную архитектуру, многослойную архитектуру и принципы чистой архитектуры. Особое внимание уделялось важности понятной структуры кода, способствующей упрощению его понимания, внедрению новых функций и снижению вероятности ошибок. Были рассмотрены критерии понятности, такие как чёткое назначение файлов и папок, разделение логики по модулям или функциональным зонам, использование самодокументируемых названий и соблюдение стандартов кодирования. Также поднимались проблемы, возникающие при неструктурированной организации кода, включая сложность навигации, отсутствие модульности и нарушение принципов SOLID и GRASP.

👉Читать полностью
Forwarded from Библиотека программиста | программирование, кодинг, разработка
📊 Как себя чувствует IT-рынок в 2025 году?

Друзья, запускаем важное исследование рынка труда в IT!

Нам очень важно понять:
• Как изменились зарплаты
• Что происходит с наймом
• Есть ли сокращения или рост

🔐 Опрос полностью анонимный
⏱️ Займёт всего 3-5 минут
📈 Результаты опубликуем в подробной статье

Ваши ответы помогут составить реальную картину происходящего в индустрии.

👉 Пройти опрос
🧑‍💻 Статьи для IT: как объяснять и распространять значимые идеи

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

Что: семь модулей, посвященных написанию, редактированию, иллюстрированию и распространению публикаций.

Для кого: для авторов, копирайтеров и просто программистов, которые хотят научиться интересно рассказывать о своих проектах.

👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.
This media is not supported in your browser
VIEW IN TELEGRAM
🛠️ navi — утилита для командной строки

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

➡️ Как использовать

1️⃣ Устанавливаем через Homebrew:
brew install navi

2️⃣ Запускаем командой:
navi — доступ ко всем шпаргалкам

3️⃣ Встраиваем как shell-виджет или tmux-виджет для быстрого доступа

4️⃣ Создаем свои шпаргалки или импортируем из других источников (например, tldr или cheat.sh)

🌻 Что еще умеет

▪️ Поддерживает кастомные конфиги, цвета и пути для шпаргалок

▪️ Работает в любом терминале или через Tmux

▪️ Можно использовать как скриптовый инструмент или даже через Alfred

🔗 Репозиторий
👍41
Автотесты | Как мокировать классы с помощью PHPUnit

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

👉Читать статью
👍31
⬆️ Используйте состояния фабрик

Знаете ли вы, что фабрики Laravel позволяют определять состояния? Вы можете использовать несколько состояний для описания объекта и применять к нему различные модификации. Это также делает код более читабельным 🚀

#совет
👍81🔥1🌚1
PVM — менеджер версий PHP

Простой bash-скрипт для управления несколькими версиями PHP в Unix-системах(в том числе MacOS).

Установка через Curl:
curl -o /usr/local/bin/pvm https://raw.githubusercontent.com/smoqadam/pvm/main/pvm
chmod +x /usr/local/bin/pvm
export PATH="$HOME/.pvm/current:$PATH"

🔗Github

#инструменты
👍29😁41
Как использовать кэширование в Laravel?

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

1. Конфигурация: Сначала убедитесь, что ваше приложение Laravel правильно настроено для кэширования. Файл конфигурации находится в config/cache.php, где вы можете указать драйвер кэша по умолчанию и другие параметры. Laravel поддерживает различные драйверы кэша, такие как file, database, redis, memcached и другие.

2. Хранение данных в кэше: Вы можете хранить данные в кэше, используя фасад Cache или вспомогательную функцию cache(). Например, чтобы сохранить значение в кэше на 10 минут, вы можете использовать:

Cache::put('key', 'value', 600);

3. Извлечение данных из кэша: Чтобы получить данные из кэша, вы можете использовать метод get:

$value = Cache::get('key');

// или используя вспомогательную функцию
$value = cache('key');

4. Проверка наличия данных: Перед извлечением данных вы можете проверить, существуют ли они в кэше:

Cache::has('key');

5. Удаление данных из кэша: Чтобы удалить данные из кэша, используйте метод forget:

Cache::forget('key');

6. Очистка всего кэша: Если вам нужно очистить весь кэш, вы можете использовать метод flush:

Cache::flush();

#вопросы_с_собеседований
👍8
RFC: Поддержка замыканий в константных выражениях

В PHP 8.5 появится возможность использовать замыкания в:

🔸В параметрах атрибутов,
🔸В значениях по умолчанию свойств и параметров.
🔸В константах и константах классов.

👉Читать на сайте PHP
🤔11🤩10👾2
🐋 История создания идеального Docker для Laravel

Казалось бы, упаковать PHP в контейнер и настроить GitHub Actions — дело пяти минут. Однако, как это часто бывает, реальность оказалась сложнее. Это история о возвращении к разработке на PHP и решении накопившихся проблем с деплоем Laravel-проекта. О том, как готовился Docker-образ, несколько раз переписывался процесс деплоя, находились компромиссы там, где это было возможно, и полностью перестраивалась архитектура там, где компромиссы были неприемлемы.

💻 Хабр
👍8
Знакомство с новыми стартовыми наборами Laravel

Laravel 12 представил три новых стартовых набора для React, Vue и Livewire. Каждый из них также доступен в варианте с WorkOS AuthKit. Эти наборы обеспечивают удобное начало работы как с кодом, так и с пользовательским интерфейсом.

💬 Официальный сайт
👍41
Офер от Сбера за один клик 💼

Мечтаешь работать в Сбере, теперь это проще, чем когда-либо!

💡 AI-интервью за 15 минут – и ты уже на шаг ближе к своей новой работе.

Как получить офер?

📌 Зарегистрируйся
📌 Пройди AI-интервью
📌 Получи обратную связь сразу же!

После прохождения твои ответы получат рекрутеры и свяжутся с тобой в течение нескольких дней! 🚀

Реклама. ПАО СБЕРБАНК, ИНН 7707083893. Erid 2VtzqxS96Na
🥱4😢2🤔1👾1
🥰 PHP developer
Удаленно/Офис (Санкт-Петербург)
от 250 000 до 350 000 ₽
#php@proglib_jobs

SoftWise — компания в сфере adtech, которая создает сложные программные решения для бизнеса: programmatic-платформы для рекламных бирж, мобильные игры, технологии ретаргетинга, интерфейсы для пользователей ПО.

Требования:
— Знание одного из PHP-фреймворков, Symfony/Laravel (пишем бизнес-код, используем компоненты фреймворков).
— Работа с СУБД PostgreSQL, на уровне оптимизации таблиц и написания запросов как простых, так и сложных (приветствуются знания ОRM Doctrine, Active Record).
— Английский на уровне чтения технической документации.

➡️ Подробнее о вакансии на hh.ru

➡️ А избранные IT-вакансии вы найдете в нашем канале IT Job Hub
Please open Telegram to view this post
VIEW IN TELEGRAM
1🤔1
Что выведет код?
Anonymous Quiz
49%
PHP
7%
__LINE__
19%
3
26%
Fatal error
🌚23👍8😁4🤔4
🔧 Рефакторинг PHP-кода: промт для ИИ

Ловите промт для ChatGPT, который поможет сделать код чище, быстрее и безопаснее за пару кликов 🚀

💡 Скопируй и вставь этот промт в ChatGPT или Claude:

«Refactor the following PHP code to improve readability, performance, and adherence to modern coding standards (PSR-12).

Remove code duplication
Replace outdated constructs with modern alternatives
Enforce strict typing (declare(strict_types=1);)
Break down long functions into smaller, more manageable ones
Add comments and PHPDoc for better documentation
Improve security (e.g., prevent SQL injections)
Here is the code:

// Paste your code here

Return the updated code with explanations on what was improved and why

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

Библиотека пхпшника #буст
🥱5👍4
php-ext — Расширение для хрома, показывающее консоль PHP (Laravel) devtools

Простое расширение Chrome для создания фрейма консоли PHP. Этот пакет использует пакет Spaties Laravel Web Tinker и помещает его в панель devtools, делая его доступным из любой точки панели.

🔗Github

#инструменты
3🥰1
ℹ️ Laravel: фильтрация моделей через whereRelation

Как это работает

Метод whereRelation упрощает фильтрацию моделей на основе атрибутов их связей. Вместо сложных подзапросов и джойнов — читаемый и поддерживаемый код.

Этот подход особенно полезен при построении сложных фильтров в e-commerce, CMS и других приложениях, где важно учитывать связанные данные.

Пример: получение одобренных комментариев:
Post::whereRelation('comments', 'is_approved', true)->get();


Как использовать

1. Используйте whereRelation в Eloquent-запросах
2. Укажите связь, поле и условие
3. Комбинируйте с orWhereRelation и другими методами запроса

Где применять

— Фильтрация товаров в интернет-магазинах
— Отбор статей по комментариям и реакциям
— Работа с вложенными структурами данных

💬 Уже используете этот метод? Делитесь опытом.

Библиотека пхпшника #буст
👍4
2025/07/14 00:48:41
Back to Top
HTML Embed Code: