<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/">
  <channel>
    <language>ru</language>
    <title>Laravel</title>
    <description>Laravel - это веб-фреймворк с выразительным, элегантным синтаксисом. Веб-фреймворк предоставляет структуру и отправную точку для создания вашего приложения, позволяя вам сосредоточиться на создании чего-то удивительного, пока мы заботимся о деталях.</description>
    <link>https://tproger.ru/tag/laravel</link>
    <atom:link href="https://tproger.ru/tag/laravel/feed" rel="self" type="application/rss+xml"/>
    <lastBuildDate>Fri, 18 Sep 2026 01:33:38 GMT</lastBuildDate>
    <sy:updatePeriod>hourly</sy:updatePeriod>
    <sy:updateFrequency>12</sy:updateFrequency>
    <image>
      <title>Laravel</title>
      <link>https://tproger.ru</link>
      <url>https://tproger.ru/apple-touch-icon.png</url>
    </image>
    <item>
      <title>Denwer SE: Возрождение легендарного локального веб-сервера на современном стеке</title>
      <link>https://tproger.ru/articles/denwer-se-vozrozhdenie-legendarnogo-lokalnogo-veb-servera-na-so</link>
      <comments>https://tproger.ru/articles/denwer-se-vozrozhdenie-legendarnogo-lokalnogo-veb-servera-na-so?scrollTo=tproger-comments</comments>
      <dc:creator><![CDATA[Александр Тишов]]></dc:creator>
      <guid isPermaLink="true">https://tproger.ru/articles/denwer-se-vozrozhdenie-legendarnogo-lokalnogo-veb-servera-na-so</guid>
      <description><![CDATA[<p>Помните диск Z:, иконку джентльмена и магию Run.exe? Денвер вернулся. Denwer SE: Python вместо Perl, HTTPS без красных экранов, свежий PHP и портативность. И да, он всё ещё помещается на флешку.</p><p>— Читать дальше «<a rel="follow" href="https://tproger.ru/articles/denwer-se-vozrozhdenie-legendarnogo-lokalnogo-veb-servera-na-so">Denwer SE: Возрождение легендарного локального веб-сервера на современном стеке</a>»</p>]]></description>
      <category><![CDATA[C++]]></category>
      <category><![CDATA[Веб-разработка]]></category>
      <category><![CDATA[Опрос]]></category>
      <category><![CDATA[Python]]></category>
      <category><![CDATA[MySQL]]></category>
      <category><![CDATA[PHP]]></category>
      <category><![CDATA[SQL]]></category>
      <category><![CDATA[Браузеры]]></category>
      <category><![CDATA[Windows]]></category>
      <category><![CDATA[Работа]]></category>
      <category><![CDATA[Microsoft]]></category>
      <category><![CDATA[Боты]]></category>
      <category><![CDATA[Базы данных]]></category>
      <category><![CDATA[Node.js]]></category>
      <category><![CDATA[HR]]></category>
      <category><![CDATA[Docker]]></category>
      <category><![CDATA[Для продвинутых]]></category>
      <category><![CDATA[Разработка]]></category>
      <category><![CDATA[Сервер]]></category>
      <category><![CDATA[CMS]]></category>
      <category><![CDATA[Laravel]]></category>
      <category><![CDATA[Статьи]]></category>
      <slash:comments>0</slash:comments>
      <pubDate>Tue, 05 May 2026 10:11:34 GMT</pubDate>
      <content:encoded><![CDATA[<p>Если вы начинали веб-разработку в середине 2000-х, то наверняка помните Denwer — «джентльменский набор веб-разработчика». Иконка в виде человека в шляпе, виртуальный диск Z:, папка <i>home/localhost/www</i> — всё это было ритуалом, который упрощал жизнь тысячам разработчиков. Но оригинальный Denwer безнадёжно устарел: Perl-скрипты, 32-битные сборки, поддержка только древних версий PHP и MySQL. Ему на смену пришли громоздкие комбайны вроде Open Server или сложные для новичков Docker-контейнеры.</p><p>Однако недавно проект получил второе дыхание. Разработчик Александр Тишов (Amro) — создатель <a href="https://seditio.org" rel="nofollow">CMS Seditio</a> и основатель веб-студии <a href="https://avego.org" rel="nofollow">«Авего»</a>  — выпустил <a href="https://seditio.org/dev/denwer-se-lokalnyj-veb-stek-dlya-windows-apache-php-mysql-mariadb" rel="nofollow">Denwer SE (Second Edition)</a>. Это не просто обновление, а полный реинжиниринг с сохранением классической философии: портативность, скорость работы и привычная структура каталогов.</p><p>В этой статье разберём, что изменилось под капотом, почему панель управления переехала с Perl на Python, как работает автоматический HTTPS с собственным корневым сертификатом и зачем нужен зоопарк версий PHP от 5.6 до 8.5.</p><h2>Краткий экскурс: от Denwer 3 до Denwer SE</h2><p>Оригинальный Denwer (сокращение от Джентельменский Набор Веб-разработчика) появился в начале 2000-х. Он представлял собой связку Apache + PHP + MySQL, упакованную в самораспаковывающийся архив. Главные фишки:</p><ul><li>Виртуальный диск (по умолчанию Z:), который монтировался через subst.</li><li>Автоматическое создание виртуальных хостов по именам папок в home.</li><li>Консольные exe-файлы (Run, Stop, Restart) без графического окна.</li></ul><p>Проблемы оригинала:</p><ul><li>Управление на Perl — медленно, тяжело поддерживать в Windows.</li><li>Только 32-битные компоненты.</li><li>Невозможно быстро переключать версии PHP или БД.</li><li>Отсутствие нормального HTTPS (только самоподписанные сертификаты с ошибками в браузере).</li><li>Поддержка прекратилась в 2016 году.</li></ul><p>Denwer SE решает все эти проблемы, оставаясь при этом таким же портативным — достаточно скопировать папку на флешку или в облачный каталог.</p><h2>Архитектура: Python вместо Perl</h2><p>Denwer SE — панель управления написана на Python и скомпилирована в один EXE-файл (через PyInstaller).</p><p>Внутри служебной папки <b>denwer\</b> лежат:</p><ul><li>DLL-версия Python — интерпретатор, который использует основной исполняемый файл.</li><li>Скомпилированные модули .pyd — в том числе GUI на базе Tcl/Tk для оконного интерфейса и системного трея.</li><li>Минимальный набор библиотек для управления службами, правки hosts и генерации сертификатов.</li></ul><p>Это даёт несколько преимуществ:</p><ul><li>Портативность — панель ищет соседние папки home и usr, поэтому каталог со стеком можно переносить куда угодно без переустановки.</li><li>Скорость — Python-скрипты запускаются быстрее, чем Perl, особенно на холодном старте.</li><li>Читаемость кода — разработчику проще поддерживать и расширять функционал.</li></ul><h2>Полный переход на x64</h2><p>Оригинальный Denwer навсегда остался 32-битным, что в современных реалиях просто неприемлемо. Denwer SE собирается исключительно под x64:</p><ul><li>Apache (версия 2.4.x) — 64-битный.</li><li>Все модули PHP (от 5.6 до 8.5) — Thread Safe x64.</li><li>MySQL / MariaDB — 64-битные сборки.</li></ul><p>Системные требования — Windows 7/8/10/11 (x64). Для работы компонентов потребуются Microsoft Visual C++ Redistributable (VC11, VC12, VC14, VC15). Разработчик положил установщики этих пакетов в папку <b>vcredist\</b> — при необходимости можно доустановить вручную.</p><h2>Структура каталогов: преемственность и гибкость</h2><p>Denwer SE сохранил классическую структуру, чтобы старые пользователи не ломали голову:</p><p>Главный конфиг — usr\configuration.txt. В нём задаются пути без жёсткой привязки к букве диска, например:</p><p>При старте панель монтирует виртуальный диск (по умолчанию Z:) и динамически подставляет путь через переменную <b>subst_drive</b>.</p><h2>Управление версиями PHP и БД без танцев с бубном</h2><p>В Denwer SE встроен менеджер версий. Вы просто выбираете из выпадающего списка нужную версию PHP (например, 8.3 или 5.6) — панель сама правит конфигурацию Apache.</p><p>Как это работает под капотом:</p><p>В папке usr/local/apache/php лежат подкаталоги php5.6, php7.4, php8.3 и т.д..</p><p>В каждом из них есть файл php-denwer.conf— шаблон для подключения модуля к Apache. При выборе версии этот файл копируется в <b>conf/extra/httpd-denwer.conf</b>, который затем включается в основной httpd.conf.</p><p>Если вы хотите добавить свою сборку PHP (например, PHP 8.4-rc), достаточно:</p><ul><li>Распаковать x64 Thread Safe версию в отдельный каталог внутри php\.</li><li>Создать php-denwer.conf по образцу.</li><li>Убедиться, что все DLL от VC++ установлены.</li></ul><p>Аналогично для баз данных: переключение между MySQL 5.7 и MariaDB 11.8 происходит через тот же интерфейс. В каталоге СУБД может лежать файл <b>db-denwer.conf</b>, который при старте копируется в <b>my.ini</b>.</p><h2>HTTPS, который не бесит: локальный Root CA</h2><p>Самое болезненное место при локальной разработке это самоподписанные сертификаты. Браузеры постоянно ругаются, приходится кликать «Принять риск». Для командной разработки это вообще катастрофа: каждый участник должен сгенерировать свой сертификат и добавить в исключения.</p><p>Denwer SE решает проблему элегантно — он создаёт собственный корневой центр сертификации (CA) и подписывает им сертификаты для всех ваших локальных доменов.</p><p>Как это работает:</p><ol><li>При первом запуске (если найден OpenSSL) панель генерирует ключи denwer-ca.key и сертификат denwer-ca.crt в папку usr/local/apache/conf/cert/denwer-ca/.</li><li>Для каждого виртуального хоста (папки в home/) автоматически создаётся сертификат в conf/cert/&lt;domain&gt;/.</li><li>Все сертификаты хостов подписаны локальным CA.</li></ol><p>Чтобы браузер доверял им, нужно один раз установить <b>denwer-ca.crt</b> в хранилище «Доверенные корневые центры сертификации» Windows. Для этого в панели есть специальная кнопка (требует прав администратора).</p><p>После этого любые HTTPS-запросы к локальным хостам работают без единого предупреждения.</p><h2>Удобства для разработчика (DX)</h2><p>В версии 1.2.4 добавили несколько фич, которые экономят время каждый день:</p><ul><li>Лог с таймштампами — каждая строка в окне панели имеет префикс [чч:мм:сс]. Теперь видно, сколько секунд сервер поднимается и где возможны задержки.</li><li>Прямой доступ к php.ini и my.cnf — рядом со списками версий появились кнопки, открывающие конфигурацию именно активной версии.</li><li>Автоматическое ведение hosts — панель в реальном времени сканирует home/, находит новые домены и прописывает их в C:\Windows\System32\drivers\etc\hosts. Журнал добавляемых записей сохраняется в usr\AddedHosts.txt. При остановке стека лишние строки удаляются.</li><li>Для смены версии PHP или базы данных панель требует полной остановки всех служб. Вы нажимаете «Стоп», меняете версию в списке, затем «Старт» — и стек поднимается уже с новыми настройками. Автоматический перезапуск без вашего участия работает только для Apache: когда вы добавляете новый домен в папку home/, панель сама переписывает vhosts.conf и перезапускает веб-сервер, не трогая БД.</li></ul><h2>Почему не Open Server или Docker?</h2><p>Этот вопрос закономерно возникает у всех, кто видит очередной локальный веб-сервер. Ведь есть уже давно Open Server Panel, Laragon, XAMPP, а для продвинутых — Docker. Зачем ещё один?</p><p><b>Open Server</b> — мощный и удобный комбайн с десятками версий PHP и настройками «на века». Но он разворачивается в системе не портативно: создаёт папки в ProgramData, пишет в реестр, а запуск может занимать 5–10 секунд. Denwer SE, напротив, полностью переносим: скопировал папку на флешку или в облачный каталог — и всё работает. Запуск стека — буквально 1–2 секунды, что критично, когда вы десятки раз за день перезапускаете сервер для тестов.</p><p><b>Docker</b> — индустриальный стандарт для изоляции и воспроизводимости окружений. Но для локальной разработки простого сайта он часто избыточен. Вам нужно разобраться в образах, контейнерах, пробросе портов, volume’ах и docker-compose.yml. А в Denwer SE вы просто создали папку в home/ — и готово. Никакой работы с командной строкой, никакого потребления гигабайт ОЗУ на фоновую службу Docker Desktop.</p><p><b>Laragon</b> — быстрый, портативный, поддерживает не только PHP, но и Node.js, Python, Go. Но он ориентирован на современные фреймворки, особенно Laravel. Denwer SE же сделан для тех, кто вырос на классическом Денвере: виртуальный диск Z:, папка home/имя_домена/www, минимум настроек. Не нужно переучиваться — просто распаковал и работаешь как 10 лет назад, но с новыми версиями PHP и HTTPS.</p><h2>Как начать пользоваться Denwer SE</h2><ol><li>Скачать архив с <a href="https://seditio.org/dev/denwer-se-lokalnyj-veb-stek-dlya-windows-apache-php-mysql-mariadb" rel="nofollow">официального сайта автора</a>.</li><li>Распаковать в любое место, например C:\web\DenwerSE\.</li><li>Запустить DenwerSE.exe — если нет прав администратора, попросит их для монтирования диска и правки hosts.</li><li>Нажать «Запустить» — появится виртуальный диск Z:, а в системном трее иконка.</li><li>Создать папку сайта — например, home\myproject.local и положить туда index.php.</li><li>Открыть в браузере http://myproject.local/ (или https://myproject.local/). HTTPS будет работать сразу после установки корневого сертификата (кнопка в панели).</li></ol><p>По умолчанию пароль к MySQL/MariaDB — пустая строка (пользователь <b>root</b>). При желании его можно сменить через phpMyAdmin.</p><h2>Заключение</h2><p>Denwer SE — это не просто ностальгический проект. Это действительно современный инструмент, который доказывает, что концепция «локального сервера в одну папку» всё ещё актуальна. Отказ от Perl в пользу Python, менеджер версий PHP/БД, нормальный HTTPS, портативность и мгновенный запуск — всё это делает его отличным выбором для быстрого прототипирования, тестирования легаси-кода или обучения веб-разработке.</p><p>Если вы устали ждать, пока Open Server применит настройки, или не хотите разбираться в Docker Compose — попробуйте <b>Denwer SE</b>. Вероятно, он напомнит вам старые добрые времена, но уже без боли устаревших технологий.</p><ul><li>Автор проекта: Александр Тишов
	(Amro), разработчик CMS Seditio.</li><li>Лицензия: Freeware.</li><li>Совместимость: Windows 7/8/10/11 x64.</li></ul><p>Исходники панели управления не открыты (распространяется скомпилированный EXE), но архитектура и конфиги полностью прозрачны. В планах — добавить поддержку Nginx в качестве альтернативы. Следите за обновлениями.</p>]]></content:encoded>
    </item>
    <item>
      <title>Уволили? Отлично. Как разработчик запустил конкурента hh.ru — Hirify.me и начал зарабатывать</title>
      <link>https://tproger.ru/articles/uvolili--otlichno--kak-razrabotchik-zapustil-konkurenta-hh-ru---hirify-me-i-nachal-zarabatyvat</link>
      <comments>https://tproger.ru/articles/uvolili--otlichno--kak-razrabotchik-zapustil-konkurenta-hh-ru---hirify-me-i-nachal-zarabatyvat?scrollTo=tproger-comments</comments>
      <dc:creator><![CDATA[Валерия Турчак]]></dc:creator>
      <guid isPermaLink="true">https://tproger.ru/articles/uvolili--otlichno--kak-razrabotchik-zapustil-konkurenta-hh-ru---hirify-me-i-nachal-zarabatyvat</guid>
      <description><![CDATA[<p>История Laravel-разработчика с 14-летним стажем, который после сокращения за полтора месяца создал Hirify.me, вошел в топ-4 рынка вакансий РФ и вышел на доход до $5000 в месяц.​</p><p>— Читать дальше «<a rel="follow" href="https://tproger.ru/articles/uvolili--otlichno--kak-razrabotchik-zapustil-konkurenta-hh-ru---hirify-me-i-nachal-zarabatyvat">Уволили? Отлично. Как разработчик запустил конкурента hh.ru — Hirify.me и начал зарабатывать</a>»</p>]]></description>
      <category><![CDATA[Быстрый старт]]></category>
      <category><![CDATA[Стартапы]]></category>
      <category><![CDATA[Laravel]]></category>
      <category><![CDATA[Бизнес]]></category>
      <category><![CDATA[Разработка]]></category>
      <category><![CDATA[Статьи]]></category>
      <slash:comments>0</slash:comments>
      <pubDate>Fri, 16 Jan 2026 12:20:03 GMT</pubDate>
      <content:encoded><![CDATA[<p>Игорь Алентьев — Laravel-разработчик с четырнадцатилетним опытом, который в 2025 году одновременно потерял основную работу и фриланс-проект. Вместо рассылки резюме он за полтора месяца создал <a href="https://hirify.me/">Hirify.me</a> — агрегатор вакансий из Telegram-каналов с AI-функциями для соискателей. Сейчас проект приносит $3000–4500 в месяц, обслуживает 60 000 уникальных пользователей ежемесячно и победил на Product Radar. В большом интервью Игорь рассказал, почему Laravel идеален для стартапов, как он жил четыре месяца на деньги от сокращения, почему отказался монетизировать боль поиска работы и какие три ошибки чаще всего делают инди-разработчики.</p><figure><img src="https://media.tproger.ru/user-uploads/99854/2026-01-15/422631ef-c8a5-4dd2-8e28-0f43af8eda22.png" alt="" /><figcaption>Главная страница Hirify.me</figcaption></figure><p>О технологиях, ИИ, айтишке, инди-хакерстве, играх и жизни вне найма Игорь классно и подробно рассказывает в своём Telegram-канале <a href="https://t.me/indie_nomad">Indie Nomad</a>.</p><h2>«Мне выплатили деньги при сокращении — и мы решили, что хватит на 2–3 месяца»</h2><h3>Тебя сократили на работе, и дальше был выбор: искать новую работу или поставить всё на карту со своим стартапом. Как ты принимал это решение?</h3><p>Проблема была в том, что меня одновременно сократили на основной работе и закрылся фриланс‑проект, в котором я работал пять лет. Не могу сказать, что я принял решение именно в тот момент. При сокращении мне выдали денег, мы с женой прикинули, что если ужаться, хватит на 2–3 месяца — смогли растянуть почти на пять. К тому моменту у меня уже примерно год жила в продах MVP‑версия Hirify, и я решил, что нужно попробовать пойти в all‑in — дорастить этот MVP до полноценного стартапа для поиска работы Hirify.me.​</p><p>Изначальная стратегия не предполагала монетизации соискателей, только рекрутеров. Но в какой-то момент я понял, что не успею, и решил сфокусироваться на том, что есть, начал думать, что я могу предложить и за что совесть мне позволит брать деньги.</p><p>Сделал большой опрос пользователей и сформулировал два направления: международные вакансии и AI-фичи, которые помогают с резюме и откликами. В июне запустил международные вакансии, а в сентябре полностью заработали все AI-фичи.</p><p>Hirify.me начал приносить сравнимый с одной моей предыдущей работой доход, мы поняли, что денег вроде хватает на оплату квартиры и еду, и в этот момент я перестал откликаться на вакансии и проходить собесы. Но я с самого начала верил, что всё получится, поскольку делал Hirify.me для себя и точно знал, что это нужно всем.</p><h3>Была ли у тебя подушка безопасности или какие-то активы, которыми можно было смягчить удар в случае провала стартапа?</h3><p>За исключением того, что выплатили при сокращении, — нет, ничего не было. Все накопления, включая машину, мы ещё летом 2024‑го потратили на переезд в Сербию и обратно в Армению, так что у меня не осталось ни машины, ни квартиры, ни какого‑то другого актива на случай провала.​</p><h3>Расскажи про свой опыт до Hirify.me. Запускал ли ты что-то или участвовал в запусках?</h3><p>Нет, Hirify.me был моим первым продуктом, который я смог довести до релиза. После него были Chillify и Flowfeed, но это скорее фан, чем реальные продукты.</p><figure><img src="https://media.tproger.ru/user-uploads/99854/2026-01-15/77d2046f-97b0-4a7b-9625-80771bf96d95.png" alt="" /><figcaption>Trello-доска Игоря с идеями</figcaption></figure><h3>Помимо Hirify.me были идеи для запуска? Если да, то какие и почему ты их не выбрал?</h3><p>Было множество идей, у меня целый борд в Trello, посвящённый идеям стартапов. Было несколько попыток, но все упирались в то, что я бросал. Скорее всего, потому что не чувствовал настоящего потенциала и быстро надоедало.</p><h3>Расскажи про одну забракованную идею — возможно, кто-то из читателей захочет её реализовать.</h3><p>По большей части все они или сильно нишевые, или исключительно мои хотелки.</p><p>Я уже лет 20 играю в Dota и одним из первых продуктов, который я хотел делать, был аналитический сервис, который помогал бы объективно оценивать свой импакт в игре. Я смог сделать технический прототип, но не смог реализовать UI. На тот момент AI ещё не было, а моего собственного скилла не хватило. Там же должен был быть оверлей, помогающий с таймингами и всяким таким. Да и в целом со временем я потерял интерес к соревновательной Dota, так что забил.</p><p>Ещё из примеров: я хотел читать Telegram-каналы в более привычном мне интерфейсе бесконечной хронологической ленты. Этот проект я сделал и довёл до релиза, но сейчас он сломался, поскольку был построен на абузе free-tier Gemini API, а с недавних пор это прикрыли. Так что я пока решил его закрыть, тем более что практически перестал там прокрастинировать из-за нехватки времени.</p><h2>«Я открыл для себя рынок Telegram-вакансий — конверсия оказалась невероятной»</h2><h3>Ты довольно жёстко отзываешься о классических джоббордах. Что именно тебя больше всего бесило, когда ты сам искал работу?</h3><p>Ооо, они все ужасны. Но есть даже более серьёзная проблема — нет одного места, где были бы все хорошие вакансии, и самое важное, чтобы было удобно их искать и получать уведомления.</p><p>Я открыл для себя рынок Telegram-вакансий. Оказалось, там тусуется огромное количество рекрутеров и постят вакансии со своими контактами. Это значит — никаких автоотказов, никаких устаревших морально и физически ATS (так называются рекрутерские CRM-ки).</p><p>Ты откликаешься напрямую человеку, и человек читает твоё резюме и сопроводительное письмо. Конверсия оказалась невероятной — из 10 откликов мне отвечали 7. Но была проблема: нужно быть подписанным на десятки каналов, нужно отсматривать глазами каждый пост, нужно скипать рекламу. Это огромная когнитивная нагрузка и стресс, потому что ты не можешь отключить уведомления, иначе, когда откликнешься, там уже навалят откликов и тебя заигнорят.</p><p>Решение пришло быстро — у меня на тот момент уже был прототип тулы, которая умела «читать» Telegram‑каналы, это и был мой MVP 2024 года, и за пару недель я накидал из него то, что стало Hirify.me.​</p><p>Я точно понимал, что это будет полноценное приложение, а не Telegram-бот или мини-апп, поэтому начал думать, что меня бесит больше всего в существующих платформах.</p><figure><img src="https://media.tproger.ru/user-uploads/99854/2026-01-15/2e5a8460-d422-4b55-b288-587b31f6ce19.png" alt="" /><figcaption>Пример вакансии</figcaption></figure><p>Самый простой пример: я Laravel-разработчик и очень не люблю Symfony. Почему я не могу поставить фильтр, который исключал бы этот фреймворк и заодно что-то ещё, что мне не интересно, например вакансии в аутсорсе?</p><p>Я живу в Ереване и не рассматриваю работу с зарплатой в рублях, почему я не могу исключить такие вакансии?</p><p>Хотел искать вакансии, в которых нужно работать с AI и Laravel, хотел получать уведомления, хотел иметь несколько разных поисков под направления. Например, я был готов свичнуться в JS/TS и искал вакансии с AI в стартапах, и отдельно их же, но именно с должностью Product Engineer.</p><p>В общем, я хотел очень гибкий и при этом мощный поиск + уведомления. Собственно, это и стало ядром Hirify.me, поверх которого уже накручивались дополнительные фичи.</p><h2>«Laravel — это opinionated fullstack-фреймворк, там из коробки есть вообще всё»</h2><h3>Какой технический стек ты выбрал для Hirify.me? Как вообще была устроена система разработки и выбор технологий?</h3><p>Я выбрал Laravel (PHP) для бэкенда — не пожалел, Nuxt для фронта — пожалел, и Python как вспомогательный язык.</p><p>На Laravel я писал последние шесть лет, отлично знаю его, но самое важное — когда вы пилите стартап, тем более в соло, скорость и DX (developer experience) становятся не просто важными, но критическими. Корпорации могут себе позволить пилить продукты годами, а у меня было полтора месяца.</p><p>В отличие от большинства популярных сейчас фреймворков — Flask и FastAPI на Python или Django (который хорош, но морально устарел), Express/Fastify/Nest (энтерпрайз) на Node — Laravel — это opinionated fullstack‑фреймворк, в том смысле, что там из коробки есть вообще всё, что нужно для работы: очереди, авторизация, social‑авторизация, тулы для мониторинга плюс огромная экосистема вокруг.​</p><p>Это идейный наследник Ruby on Rails, поэтому идеально подходит для стартапов. В комьюнити разработчиков есть ошибочное мнение, что на Laravel сложно писать что-то крупнее, чем MVP, но это skill issue плюс непонимание, насколько современный PHP (а особенно Laravel) шагнул вперёд как язык и экосистема.</p><figure><img src="https://media.tproger.ru/user-uploads/99854/2026-01-15/472f8165-4cf0-4d51-a698-bdaf98818abb.png" alt="" /><figcaption>Ориентировочная (по словам Игоря) архитектурная схема Hirify.me с сервисами</figcaption></figure><p>Сейчас у меня есть основной модульно-монолитный бэкенд, фронтенд, отдельный поисковый сервер (Typesense, это что-то типа Elasticsearch), сервис, который занимается процессингом из Telegram (TG-лоадер), и сервис, который занимается парсингом международных вакансий (парсер). Последние два написаны на Python, поскольку у него самая богатая экосистема для этих задач, хотя лично мне писать на питоне крайне сложно из-за отсутствия скобочек.</p><h3>Какой ты видел изначально core-функционал? Парсинг Telegram → база данных → фронтенд → деплой? Где застревал? Как технически обходишь ограничения API и риски бана Telegram?</h3><p>Именно так я его и видел, только ещё должен был быть рекрутерский кабинет, с которого и планировалась монетизация, но его пришлось отложить.</p><p>Сложности у меня по большей части в области дизайна и маркетинга. В плане разработки я довольно опытный плюс у меня очень хорошо получается работать с AI — он ускоряет меня примерно в пять раз, и это не преувеличение.</p><p>Ограничения API и Telegram не обхожу, поскольку не нарушаю никаких правил и использую только официальное API.</p><h2>«AI-фичи стоят около $1000 в месяц, но пока для меня это бесплатно — гранты от Azure и Google»</h2><h3>AI-фичи для сопроводительных и резюме — это ChatGPT API, собственная модель или что-то ещё? Сколько стоит поддержка AI-функционала в месяц? Окупается?</h3><p>На Hirify.me нет какой-то стандартной модели, для каждой задачи используется что-то своё, суммарно их около 10, и часто они работают каскадом, друг за другом.</p><p>Основных группы две — это Gemini и ChatGPT, в основном линейки 4.1.</p><p>Gemini серии 2 и 2.5 — это идеальные рабочие лошадки с достаточным уровнем интеллекта для моих задач и при этом с адекватными ценами. ChatGPT мне нравится значительно меньше, но у меня гранты от Azure.</p><p>Суммарно все AI-фичи стоят около $1000 в месяц, но пока ещё для меня это бесплатно, поскольку гранты. Это собственно то, почему Plus стоит так мало (399 ₽/месяц).</p><figure><img src="https://media.tproger.ru/user-uploads/99854/2026-01-15/31c4aa1e-8b83-4dbf-8ab7-51cc365df822.png" alt="" /><figcaption>Пример работы AI — генерация сопроводительного письма</figcaption></figure><p>Собственная модель в моём случае нецелесообразна и нереалистична — это дорого и очень сложно плюс долго. Нужно иметь огромный объём данных для обучения и железо, своё или облачное, на котором всё это нужно крутить, а ещё — желание и опыт.</p><p>Я рассматриваю в будущем вариант файнтюна для узкой категории задач, типа модерации и защиты от скамеров, но это тоже требует времени.</p><h3>В какой момент Hirify.me перестал быть инструментом, который ты сделал для себя, и стал бизнесом?</h3><p>В июле 2024 года я подключил первую монетизацию и заработал 785 $. Основной проблемой стала Robokassa: сервис плохо обрабатывал международные карты — а это половина всех оплат — и платежи из Беларуси. В августе удалось подключить Polar, и финансовые показатели выросли до 1 676 $, но уверенности в завтрашнем дне всё ещё не было: 70% текущего функционала (мэтчи, сопроводительные письма и «прожарка») находились в разработке. Денег на жизнь не хватало, поэтому я продолжал фоном просматривать вакансии и присматриваться к рынку найма.​</p><p>В сентябре ситуация резко изменилась: я зарелизил все Plus‑фичи и в тот же день опубликовал пост, который взлетел как ракета — за первые два дня его увидели 120 000 человек, а на сайте одновременно находилось 1 200 пользователей. Повторять мой опыт не советую — я был в шоке, инфраструктура не справлялась, а чат поддержки разрывался из‑за багов, которые я не успел пофиксить перед экстренным релизом. Более того, я забыл сделать UI для управления профилем: его можно было создать, но нельзя было отредактировать, и сотни людей писали мне об этом лично.​</p><p>Количество оплат оказалась такой, что в почтовом сервисе быстро закончилась квота на отправку приветственных писем.</p><p>Суммарно за сентябрь доход составил 4 879 $, а с учётом многочисленных оплат в криптовалюте сумма превысила 5 000 $. Именно в этот момент я окончательно понял, что можно прекратить поиски работы и на 200% погрузиться в развитие собственного продукта.​</p><h2>«Если прикинуть, лендинг для Plus у меня занял примерно месяц. Для сравнения, за полтора месяца я сделал весь core-функционал Hirify.me»</h2><h3>Ты один в проекте и совмещаешь все роли: разработка, продукт, маркетинг, продажи, поддержка. Что оказалось самым тяжёлым в таком режиме "один за всех"?</h3><p>Однозначно дизайн и около-маркетинговое.</p><p>Я технарь и очень плохо умею делать интерфейсы для не-технарей, классическая история. Приходится очень-очень много времени тратить на поиск референсов и переделки — я не умею в Figma, поэтому реализовываю сразу всё в коде и в процессе много раз переделываю, пока не получу результат, за который не стыдно.</p><p>В маркетинге у меня почти нет опыта — я большую часть карьеры провёл в корпоративной разработке, где потребитель — это твой коллега, и не то чтобы у него был выбор. Поэтому я замечательно научился пилить фичи, но вообще не научился их продавать.</p><p>Самым, пожалуй, сложным за всю историю Hirify.me стала разработка <a href="https://hirify.me/plus">лендинга для Plus</a>. А особенно тексты для него. Если прикинуть, это всё у меня заняло примерно месяц. Для сравнения, за полтора месяца я сделал весь core-функционал всего Hirify.me (без платных фич).</p><figure><img src="https://media.tproger.ru/user-uploads/99854/2026-01-15/5df9a98f-d218-4628-9484-9a2a2957fe21.png" alt="" /><figcaption>Тот самый лендинг Hirify Plus</figcaption></figure><p>И я не могу сказать, что я совсем один. Есть замечательная жена, которая очень помогает размещать вакансии от рекрутеров (пока нет кабинета для них) и находит международные компании для парсинга. Да и в целом она постоянно участвует в процессе — первая слышит и даёт фидбек на какие-то идеи или предлагает свои.</p><p>И есть очень много пользователей Hirify.me, с которыми мы подружились. Они помогают и в принятии решений — дают свой фидбек и в целом постоянно что-то предлагают или находят баги.</p><h3>Давай представим идеальное будущее. Какой видишь идеальную команду для Hirify.me? Может быть, это будут чисто AI или полноценная команда с маркетингом, дизайном и так далее?</h3><p>Это совершенно точно должна быть небольшая гибридная команда из людей и AI, что-то типа меня, только в других областях.</p><p>AI — это отличный исполнитель и помощник, но ему нужен человек, который будет направлять.</p><p>Как уже говорил, мне катастрофически не хватает скилла в дизайне и маркетинге/SMM, поэтому первым наймом будут именно эти два специалиста.</p><h2>«Мне это стало интереснее, чем играть. Всю жизнь я очень много играл в игры»</h2><h3>На запуске ты говорил, что четыре месяца жил в режиме: "встал, кофе, работа до ночи". Как ты сейчас оцениваешь этот период — геройство, ошибка, необходимость или всё сразу? Что бы ты поменял в этом подходе, если бы стартовал заново?</h3><p>А я в целом всё ещё в таком режиме живу. Разве что последние полтора месяца чуть расслабился.</p><p>Это совершенно точно не ошибка — только так можно сделать что-то действительно масштабное, когда ты солофаундер.</p><p>Тут важный момент в том, что мне это нравится.</p><p>Всю свою жизнь я очень много играл в игры. И в момент, когда я начал серьёзно делать Hirify.me, мне это стало интереснее, чем играть. Это ещё очень удачно наложилось на период, когда все старые игры затёрты до дыр, а новые хорошие игры выходят в штучных экземплярах за год.</p><h3>Что стало самым дорогим побочным эффектом: здоровье, нервы, откладывание личных планов или невозможность просто забить и уйти в отпуск? Какие здесь твои размышления предпринимателя и того, кто работал долго в найме?</h3><p>Хах, я весь год почти не играл в игры, не смотрел аниме и не прочитал ни одной книги.</p><p>В целом я довольно интровертный человек, поэтому не могу сказать, что это как-то негативно сказалось на психике или физическом состоянии (разве что окончательно потерял форму).</p><p>Самая большая проблема — я всегда должен быть на связи, поскольку общаюсь с юзерами лично, поэтому у меня нет выходных, и работаю я с момента, как сел за комп, и до момента, как я лёг спать.</p><h2>«Пи**ец — вот была моя первая мысль, потому что к лончу я готовился всю прошлую неделю»</h2><h3>Ты пришёл на Product Radar уже с хорошим трафиком и пользователями. Зачем тебе было идти на площадку и в комьюнити, если и так всё "летело"? Что ты получил от запуска?</h3><p>О, я изначально планировал<a href="https://productradar.ru/product/hirify/#subscribe-telegram"> запуск на Радаре</a>. Мне было интересно, я вообще не представлял, что там будет и какой эффект может быть, поэтому я пришёл без ожиданий.</p><figure><img src="https://media.tproger.ru/user-uploads/99854/2026-01-15/638d2065-80f2-4e08-a986-8f281fc827fc.png" alt="" /></figure><p>Я получил, конечно же, трафик, нетворк с кучей крутых ребят и самое важное — много-много напутствий выиграть hh.ru. И, конечно же, какую-то медийность и постоянный входящий поток контактов.</p><figure><img src="https://media.tproger.ru/user-uploads/99854/2026-01-15/43748e73-9a9f-4dd5-8be1-68a4611e8178.png" alt="" /></figure><p>И, конечно, почёт и уважение, как минимум в глазах самого себя. Побеждать — всегда приятно.</p><h3>В день запуска на Product Radar ты проснулся с неработающим сервером. Что ты почувствовал в первую минуту, когда понял, что проект лежит?</h3><p>Пи**ец — вот была моя первая мысль, потому что к лончу я готовился всю прошлую неделю и судорожно допиливал международные вакансии и монетизацию, был план выкатить это в день релиза на Радаре.</p><p>На тот момент у меня не было бэкап-системы (технически она была, но бэкапы лежали на том же сервере), и вообще только по чистой случайности я скачал бэкап в субботу себе на комп.</p><p>В общем, я просто сел и начал восстанавливать серверное окружение (не люблю Docker и прочее, поэтому работаю напрямую на сервере), переносить то, что было в бэкапе, и поднимать всё. Если правильно помню, опоздал я буквально на 10 минут, то есть в целом на релизе это никак не сказалось. Разве что потерялись вакансии за пару дней и некоторое количество кода, которое я забыл закоммитить в воскресенье перед сном.</p><h3>Если бы сейчас ты мог перемотать время назад к этому запуску на Радаре, что бы ты изменил в подготовке и упаковке проекта?</h3><p>Вообще ничего не менял бы, всё прошло отлично.</p><h3>Почему ты решил стать охотником на Радаре и самому поддерживать других резидентов?</h3><p>Всю свою сознательную жизнь я хотел быть стартапером/предпринимателем и тяготел к таким комьюнити. У меня достаточно уникальный микс технической и продуктовой экспертизы, я с большим удовольствием готов ею делиться.</p><p>Я хотел бы, чтобы я 10 лет назад мог бы пообщаться с собой сегодняшним. Это уже невозможно, но я могу выступить в таком качестве как ментор для других.</p><h3>Какую одну ошибку ты видишь чаще всего у начинающих инди-разработчиков на Радаре?</h3><p>Топ-1 — это, конечно, продукты, которые не решают никакую реальную проблему, не закрывают боль. Они при этом могут быть технически крутые или просто прикольные, но без решения проблемы не получится зарабатывать.</p><p>Или это потенциально неплохие продукты, но без чёткого позиционирования — не понятно, для кого они и чем отличаются от конкурентов. Сюда же могу отнести продукты на очень конкурентных или сложных рынках.</p><p>Но это моё имхо, могу заблуждаться.</p><h2>«Монетизация — это проверка ценности, а не её замена»</h2><h3>На разборе "Выход из долины смерти" ты жёстко держался за идею: "Сначала продукт, потом монетизация". Почему это для тебя было так принципиально?</h3><p>И всё ещё держусь за неё, да. Я не разделяю подход, который стал популярным последние 5–7 лет, где нормой считается монетизировать обещание, а не работающий продукт.</p><p>Мой предпринимательский майндсет формировался раньше — из книг Zero to One, Lean Startup, ReWork, Company of One, биографий великих предпринимателей, которые сначала решали проблему.</p><p>Либо идея «брать деньги за то, чего ещё нет» тогда просто не была мейнстримом, либо тогдашний я её неосознанно не принял.</p><p>Я исхожу из того, что монетизация — это проверка ценности, а не её замена. Поэтому сначала продукт, потом деньги.</p><h3>Ты сравнивал свой подход с Patreon-моделью: "Я пришёл дать пользу, а деньги — как благодарность". Как после первых реальных продаж изменилось твоё отношение к тому, что люди платят за Hirify.me?</h3><p>Мммм, и да, и нет. С одной стороны, параллели прослеживаются, но мне кажется, что моя модель больше похожа на классический SaaS — есть какой-то функционал, он платный. И в целом всем понятно, почему.</p><p>Patreon-модель подразумевала бы полностью бесплатный для всех функционал с необязательными донатами. Мне такая идея близка, но монетизация была нужна, чтобы выживать и заниматься продуктом, поэтому я пошёл в более предсказуемый вариант.</p><h3>Ты сознательно переворачиваешь классическую модель джобборда и делаешь ставку на оплату со стороны соискателей, а не работодателей. В чём твоё главное обоснование этого "перевёртыша"?</h3><p>Ахахах, нет, это случайно появилось. Я общался с опытным человеком из банка, и он мне сказал: «Игорь, у тебя крутой проект, который любят пользователи, почему бы тебе не попробовать их монетизировать». Какое-то время я думал, потом понял, что я физически не успею сделать рекрутерскую часть, на которую изначально был план, до момента, когда у меня кончатся деньги на жизнь.</p><p>К тому моменту у меня уже сформировался план, какие фичи я могу сделать, чтобы было не стыдно брать за них деньги.</p><p>Главное моё правило — не резать фичи в угоду монетизации, поэтому на самом деле даже бесплатный Hirify.me даёт огромную ценность, которую можно было бы монетизировать. Но я не хочу — только новое. А ядро должно оставаться бесплатным для всех и без ограничений.</p><figure><img src="https://media.tproger.ru/user-uploads/99854/2026-01-15/bf46ebc9-2169-47cb-a5b0-c57fc5d81c21.png" alt="" /></figure><h3>Где граница между "это должно быть бесплатным" и "за это можно брать деньги"? Как определял эту линию?</h3><p>Граница определялась не абстрактно, а очень утилитарно. Я изначально отталкивался от того, что не хочу зарабатывать на боли поиска работы как таковой. Поэтому всё, что относится к базовому доступу к рынку — вакансии, поиск, фильтры, навигация — осталось бесплатным.</p><p>Это ядро, без которого продукт просто перестаёт быть честным. А дальше я смотрел на вещи, которые:</p><ul><li>не обязательны для всех</li><li>не ухудшают опыт бесплатных пользователей</li><li>дают пользу тем, кто готов за них платить</li></ul><p>Отсюда и линия — я не беру деньги за возможность искать работу, я беру деньги за расширение возможностей и снижение трения. Международные вакансии и AI-инструменты появились ровно потому, что это дополнительные слои ценности, а не барьеры.</p><p>По сути, это не вопрос «что платно», а вопрос «что нельзя делать платным». Всё, что превращает продукт в paywall над рынком, для меня сразу было красной линией. Всё остальное — предмет эксперимента и диалога с пользователями.</p><p>Так что никакого идеологического «переворота модели» тут нет. Это скорее аккуратная эволюция продукта под реальные ограничения и обратную связь, без попытки монетизировать сам факт того, что человеку нужна работа.</p><h3>Что для тебя было самым полезным в первых бизнес-разборах в клубе "Друзей Радара": чужой взгляд со стороны, советы по монетизации, смена фокуса, поддержка, мотивация извне?</h3><p>Это помогло мне не поменять стратегию, а убедиться, что я понимаю, почему её не меняю. <b>Скажу честно, фидбек со стороны не всегда полезен — иногда он может подтолкнуть отказаться от выбранного пути. </b>Но если ты способен внятно аргументировать свои решения, такой фидбек, наоборот, даёт ещё больше уверенности.</p><h2>«Трафик в районе 60 000 уникальных пользователей в месяц, в среднем 400–800 новых платных пользователей появляется»</h2><h3>Сколько сейчас у тебя бесплатных и платных пользователей? Сколько сервис приносит денег в месяц? Это уже сопоставимо с работой в найме?</h3><p>Я не особо заморачиваюсь по метрикам, но базовые числа знаю: трафик сейчас в районе 60 000 уникальных пользователей в месяц, а каждый месяц появляется 400–800 новых платных пользователей.</p><p>Если смотреть шире на рынок, сейчас Hirify.me входит в топ‑4 продуктов для поиска работы в РФ: по трафику и объёму рынка я уступаю только hh.ru, Хабр Карьере и Getmatch, причём от Getmatch меня отделяет примерно 20%, так что я его почти догнал.​</p><figure><img src="https://media.tproger.ru/user-uploads/99854/2026-01-15/be74592f-e4bb-4e3f-b2dd-16e6559e33a5.png" alt="" /><figcaption>Рейтинг топ-4 продуктов для поиска работы в РФ</figcaption></figure><p>У меня долгое время не было необходимости регистрироваться для большинства базовых действий, поэтому регистраций было мало.</p><p>Денег приносит в диапазоне от $3000 до $4500 в последние месяцы. На выходе из-за комиссий платёжек, налогов и расходов получается меньше, но позволяет жить и заниматься только продуктом, не отвлекаясь на поиск работы.</p><h2>«Решать реальную проблему. Идеально, если это ваша собственная проблема»</h2><h3>Если к тебе придёт разработчик, которого только что уволили, и он хочет "поставить всё на карту" со своим продуктом, какие три честных предупреждения ты ему дашь на основе истории Hirify.me?</h3><p><b>Решать реальную проблему.</b> Идеально, если это ваша собственная проблема и вы точно знаете, что она болит ещё много у кого. Обязательно самому быть пользователем своего продукта и лично взаимодействовать с клиентами/пользователями.</p><p><b>НЕ делать B2C-продукты без чёткого понимания</b>, зачем и как. B2B-продукты зачастую намного проще для монетизации. Там, где B2C-клиент высосет из вас душу за 1000 рублей, B2B-клиент заплатит 10 000 и не поморщится, потому что это не его личные деньги (но только если вы решаете его боль).</p><p><b>НЕ делать маркетплейсы</b>, это чертовски сложно, долго и дорого. Делать только в том случае, если есть очень хорошее понимание, как вы будете решать проблему курицы и яйца.</p><p>История Игоря и его Hirify.me доказывает, что сокращение может стать не концом карьеры, а дверью в топ-4 рынка IT-вакансий. Главное — найти то, что вас по-настоящему драйвит, и быть готовым к долгому марафону в режиме соло-фаундера.​</p><figure><img src="https://media.tproger.ru/user-uploads/99854/2026-01-15/7476ce5d-9705-4329-bf2a-c37f6353238f.png" alt="" /><figcaption>Отзывы пользователей</figcaption></figure><p><b>Интервью написала Валерия Турчак, главред Tproger.</b></p><p><i>Если вы тоже запустили свой IT-проект, прошли путь от идеи до первых продаж и хотите рассказать об этом в нашем медиа — пишите на почту <a rel="nofollow noopener">valeriia.t@tproger.ru</a>. Мы всегда ищем интересные истории от инди-разработчиков и команд.</i></p>]]></content:encoded>
    </item>
    <item>
      <title>ТОП-18 курсов Laravel: онлайн-обучение программированию в фреймворке Laravel</title>
      <link>https://tproger.ru/articles/kursy-laravel</link>
      <comments>https://tproger.ru/articles/kursy-laravel?scrollTo=tproger-comments</comments>
      <dc:creator><![CDATA[Анастасия Шишкина]]></dc:creator>
      <guid isPermaLink="true">https://tproger.ru/articles/kursy-laravel</guid>
      <description><![CDATA[<p>Лучшие онлайн-курсы Laravel. Список школ, осуществляющих обучение на бесплатной или платной основе, а так же цены на курсы по фреймворку Laravel</p><p>— Читать дальше «<a rel="follow" href="https://tproger.ru/articles/kursy-laravel">ТОП-18 курсов Laravel: онлайн-обучение программированию в фреймворке Laravel</a>»</p>]]></description>
      <category><![CDATA[JavaScript]]></category>
      <category><![CDATA[Для начинающих]]></category>
      <category><![CDATA[Веб-разработка]]></category>
      <category><![CDATA[Инструменты]]></category>
      <category><![CDATA[Обучающие курсы]]></category>
      <category><![CDATA[Laravel]]></category>
      <category><![CDATA[Статьи]]></category>
      <slash:comments>0</slash:comments>
      <pubDate>Tue, 01 Apr 2025 18:00:03 GMT</pubDate>
      <content:encoded><![CDATA[<p>Углубить знания в веб-разработке, научиться создавать сайты и сервисы разной специализации можно с помощью курсов Laravel. Фреймворк позволяет ускорить процесс веб-программирования за счет готовых шаблонов и других продвинутых инструментов. А в силу того, что Laravel занимает лидирующую позицию в направлении PHP-разработки, специалисты, умеющие работать с ним, широко востребованы среди российских и зарубежных IT-компаний. Их средний уровень дохода зачастую превышает 150 000 рублей в месяц.</p><p>Вместе с экспертами <a href="https://kursfinder.ru/">Kursfinder</a> я рассмотрела более 30 предложений, чтобы отобрать 18 актуальных курсов по Laravel. Для удобства я разделила их по тематическим блокам. В начале статьи вы найдете 7 лучших, по моему мнению, курсов для изучения фреймворка. Далее представлена небольшая подборка из 4 дополнительных программ обучения. А в конце рейтинга я собрала бесплатные материалы по теме. Еще больше <a href="https://kursfinder.ru/laravel/">курсов по Laravel</a> ищите на платформе Kursfinder.</p><h2>ТОП-7 лучших курсов по Laravel в 2026 году</h2><ol><li><a href="https://experts2.ru/eKXamt?sub1=tproger-kf&amp;sub2=laravel-kursy&amp;sub4=1">Framework Laravel</a> от OTUS — интерактивные вебинары с экспертами из IT-индустрии.</li><li><a href="https://experts2.ru/hRarJe?sub1=tproger-kf&amp;sub2=laravel-kursy&amp;sub4=2">Веб-разработка на Laravel</a> от Хекслета — большой объем практики по использованию фреймворка в создании сайтов и веб-сервисов.</li><li><a href="https://experts2.ru/fcQaVv?sub1=tproger-kf&amp;sub2=laravel-kursy&amp;sub4=3">Уроки Laravel</a> от itProger —  бесплатный доступ к теоретическим материалам по разработке на Laravel.</li><li><a href="https://experts2.ru/QyJcan?sub1=tproger-kf&amp;sub2=laravel-kursy&amp;sub4=4">Курс PHP: Разработка на Laravel</a> от Хекслета — углубленное изучение веб-программирования для PHP-разработчиков с опытом.</li><li><a href="https://experts2.ru/mAfubY?sub1=tproger-kf&amp;sub2=laravel-kursy&amp;sub4=5">Курс Laravel фреймворк — изучаем с нуля</a> от beONmax — интенсивное обучение основным инструментам Laravel.</li><li><a href="https://experts2.ru/cApMub?sub1=tproger-kf&amp;sub2=laravel-kursy&amp;sub4=6">Laravel</a> от Михаила Русакова — готовое руководство по разработке сайта на базе Laravel для новичков.</li><li><a href="https://experts2.ru/rsMSdi?sub1=tproger-kf&amp;sub2=laravel-kursy&amp;sub4=7">PHP8. Разработка приложений на Laravel</a> от Специалист.ru — поэтапная разработка приложения по управлению виртуальной витриной магазина на PHP и Laravel.</li></ol><p>Программы обучения из этого рейтинга рассчитаны как на опытных IT-специалистов, у которых есть знания и навыки в области PHP-программирования, так и на новичков. С их помощью вы не только познакомитесь с возможностями Laravel, но и сможете попрактиковаться в разработке простых и сложных веб-проектов.</p><h2>Онлайн-курсы по Laravel</h2><p><b>1. </b><a href="https://experts2.ru/eKXamt?sub1=tproger-kf&amp;sub2=laravel-kursy&amp;sub4=1">Framework Laravel</a> | <b>OTUS</b></p><p>Практический курс, с помощью которого вы освоите востребованный фреймворк Laravel и сможете использовать его в разработке коммерческих сайтов или сервисов. Во время обучения вы напишете свой первый базовый функционал, узнаете, с помощью каких инструментов можно усложнить архитектуру проекта, и научитесь работать со Stateless-логикой. Подготовите проект на базе Laravel и сможете презентовать его практикующим IT-специалистам. А для дополнительного общения с экспертами курса вам будет предоставлен доступ к регулярным вебинарам — онлайн-занятия проходят два раза в неделю по расписанию.</p><figure><img src="https://media.tproger.ru/user-uploads/108137/2025-03-31/00034278-cd69-410e-b11e-1d53df23a403.png" alt="" /></figure><ul><li>Стоимость: от 7 083 рублей в месяц</li><li>Длительность: 3 месяца</li><li>Формат обучения: интерактивные вебинары с экспертами, практические задания, проектная работа</li><li>Сертификат: удостоверение о повышении квалификации</li></ul><p><b>Кому подойдет: </b>разработчикам, которые хотят оптимизировать рабочий процесс; PHP-разработчикам, желающим повысить свой уровень до middle+ и senior+; специалистам с опытом работы в Laravel.</p><p><b>Преимущества:</b></p><ul><li>интерактивные вебинары с опытными IT-специалистами по расписанию;</li><li>домашние задания во всех учебных модулях;</li><li>индивидуальная разработка итогового проекта;</li><li>быстрая работа службы поддержки обучающихся;</li><li>помощь по карьерным вопросам от HR-экспертов.</li></ul><p><b>Недостатки:</b></p><ul><li>онлайн-встречи с преподавателями проводятся в позднее время суток — в 20:00 по МСК.</li></ul><p><b>Программа обучения:</b></p><ul><li>Знакомство с фреймворком Laravel и написание базового функционала;</li><li>Усложнение логики проекта;</li><li>Работа с API;</li><li>Подготовка и защита дипломного проекта.</li></ul><p><a href="https://experts2.ru/eKXamt?sub1=tproger-kf&amp;sub2=laravel-kursy&amp;sub4=1">Ознакомиться с полной программой &gt;&gt;&gt;</a></p><p><b>2.</b> <a href="https://experts2.ru/hRarJe?sub1=tproger-kf&amp;sub2=laravel-kursy&amp;sub4=2">Веб-разработка на Laravel</a> | <b>Хекслет</b></p><p>Программа обучения, в ходе прохождения которой вы узнаете, как создавать удобные и многофункциональные сайты на базе Laravel. Подробно познакомитесь с возможностями популярного PHP-фреймворка, маршрутизацией, шаблонизатором Blade и ORM Eloquent. К концу курса вы будете уметь создавать сайты и пользовательские сервисы на Laravel, интегрировать базы данных, изменять структуру проекта, использовать систему шаблонов для ускорения рабочих процессов. С нуля спроектируете продвинутый менеджер задач — установите связи между сущностями, настроите трекинг ошибок и нормализуете обработку информации из БД.</p><figure><img src="https://media.tproger.ru/user-uploads/108137/2025-03-31/d5fff93d-f78f-49d3-8e2b-3c955f0126fb.png" alt="" /></figure><ul><li>Стоимость: 3 900 рублей в месяц</li><li>Длительность: от 2 месяцев</li><li>Формат обучения: теоретические материалы, тесты, практические тренажеры</li><li>Сертификат: отсутствует</li></ul><p><b>Кому подойдет: </b>программистам, которые хотят повысить свой профессиональный уровень; людям, знающим язык программирования PHP.</p><p><b>Преимущества:</b></p><ul><li>комфортное обучение в своем темпе без дедлайнов;</li><li>обратная связь по урокам от службы поддержки;</li><li>неограниченный доступ к учебным материалам;</li><li>тесты для закрепления знаний в каждом уроке;</li><li>создание проекта менеджера задач для портфолио.</li></ul><p><b>Недостатки:</b></p><ul><li>нет документа, подтверждающего обучение на курсе.</li></ul><p><b>Программа обучения:</b></p><ul><li>Основы PHP и разработки на Laravel;</li><li>Знакомство с PHP Eloquent;</li><li>Проектирование менеджера задач.</li></ul><p><a href="https://experts2.ru/hRarJe?sub1=tproger-kf&amp;sub2=laravel-kursy&amp;sub4=2">Ознакомиться с полной программой &gt;&gt;&gt;</a></p><p><b>3.</b> <a href="https://experts2.ru/fcQaVv?sub1=tproger-kf&amp;sub2=laravel-kursy&amp;sub4=3">Уроки Laravel</a> |<b> itProger</b></p><p>Этот вводный курс предназначен для начинающих программистов, которые хотят познакомиться с платформой Laravel и научиться создавать сайты разной сложности на ее базе. В рамках обучающей программы вы изучите все тонкости построения архитектуры веб-проектов — от создания форм и страниц до подключения к серверу. Важная особенность курса — вся теория по теме доступна совершенно бесплатно. Практические задания можно получить после оформления ежемесячной подписки.</p><figure><img src="https://media.tproger.ru/user-uploads/108137/2025-03-31/9cc6ed2e-ccce-44ce-9764-bffbaa789a9b.png" alt="" /></figure><ul><li>Стоимость: от 700 рублей в месяц</li><li>Длительность: от 1 месяца</li><li>Формат обучения: теоретические материалы, тесты, практические задания, онлайн-конструктор сайтов</li><li>Сертификат: отсутствует</li></ul><p><b>Кому подойдет: </b>начинающим программистам, которые только учатся работе с Laravel.</p><p><b>Преимущества:</b></p><ul><li>дополнительные возможности при оплате подписки сразу на несколько месяцев;</li><li>доступ к теоретическим материалам бесплатный;</li><li>чат для консультаций с экспертами в личном кабинете;</li><li>бесплатный справочник по PHP;</li><li>дополнительные практические задачи и консультации в расширенной подписке.</li></ul><p><b>Недостатки:</b></p><ul><li>ограниченные возможности подписки на один месяц.</li><li>нет сертификата.</li></ul><p><b>Программа обучения:</b></p><ul><li>Знакомство с фреймворком Laravel;</li><li>Создание страниц сайтов и веб-форм;</li><li>Валидация и контроллеры;</li><li>Создание моделей и работа с массивами данных;</li><li>Извлечение информации из баз данных;</li><li>Редактирование и удаление записей;</li><li>Выгрузка проекта на сервер.</li></ul><p><a href="https://experts2.ru/fcQaVv?sub1=tproger-kf&amp;sub2=laravel-kursy&amp;sub4=3">Ознакомиться с полной программой &gt;&gt;&gt;</a></p><p><b>4. </b><a href="https://experts2.ru/QyJcan?sub1=tproger-kf&amp;sub2=laravel-kursy&amp;sub4=4">Курс PHP: Разработка на Laravel</a> | <b>Хекслет</b></p><p>Онлайн-курс с большим количеством практических заданий в разных форматах позволит вам изучить инструментарий фреймворка Laravel. Вы узнаете, что такое роутинг и контроллеры, освоите шаблонизатор Blade и познакомитесь с CRUD. Поймете, как система готовых шаблонов и лейаутов ускоряет веб-программирование, а также научитесь конфигурировать фреймворк с помощью переменных окружений. Помимо основной теории и практики, в курсе также содержатся дополнительные материалы и практические задания для более полного погружения в тему.</p><figure><img src="https://media.tproger.ru/user-uploads/108137/2025-03-31/73457ced-f2ff-412d-b856-3db3f88ab3fa.png" alt="" /></figure><ul><li>Стоимость: 3 900 рублей в месяц</li><li>Длительность: от 2 месяцев</li><li>Формат обучения: видеоуроки, текстовые материалы, тесты, упражнения в тренажере</li><li>Сертификат: отсутствует</li></ul><p><b>Кому подойдет:</b> начинающим и практикующим PHP-разработчикам, которые хотят научиться создавать сайты на Laravel.</p><p><b>Преимущества:</b></p><ul><li>большой объем практики в формате тестов и упражнений в тренажере;</li><li>бессрочный доступ к теории;</li><li>асинхронный формат обучения без расписания и дедлайнов;</li><li>ежемесячная подписка действует сразу на несколько курсов.</li></ul><p><b>Недостатки:</b></p><ul><li>полностью самостоятельный формат занятий;</li><li>не выдают документ об обучении.</li></ul><p><b>Программа обучения:</b></p><ul><li>Установка и настройка фреймворка Laravel;</li><li>Создание и обработка маршрутов;</li><li>Знакомство с шаблонизатором Blade;</li><li>Конфигурация в Laravel;</li><li>Основы организации разработчиков в группы;</li><li>Генерация форм и валидация;</li><li>Обновление и удаление сущностей;</li><li>Автоматизация создания маршрутов и контроллеров для CRUD.</li></ul><p><a href="https://experts2.ru/QyJcan?sub1=tproger-kf&amp;sub2=laravel-kursy&amp;sub4=4">Ознакомиться с полной программой &gt;&gt;&gt;</a></p><p><b>5. </b><a href="https://experts2.ru/mAfubY?sub1=tproger-kf&amp;sub2=laravel-kursy&amp;sub4=5">Курс Laravel фреймворк — изучаем с нуля</a> | <b>beONmax</b></p><p>Дистанционное обучение посвящено комплексному изучению возможностей и сферы практического применения Laravel. Вы научитесь устанавливать фреймворк и конфигурировать его под свои цели, разберетесь в маршрутизации, а также узнаете, как ускорить веб-разработку с помощью шаблонизатора Blade. Для лучшего понимания материалов курса рекомендуется изучить базовые инструменты языка PHP и основы работы с базами данных SQL.</p><figure><img src="https://media.tproger.ru/user-uploads/108137/2025-03-31/4c4742af-7d9f-487a-815e-cedf0a9c0f78.png" alt="" /></figure><ul><li>Стоимость: от 1 249 рублей в месяц</li><li>Длительность: от 1 месяца</li><li>Формат обучения: видеоуроки, тесты, практикумы, проект</li><li>Сертификат: отсутствует</li></ul><p><b>Кому подойдет:</b> IT-специалистам с базовыми знаниями PHP и MySQL, которые хотят изучить фреймворк для веб-разработки.</p><p><b>Преимущества:</b></p><ul><li>масштабный проект для портфолио;</li><li>актуальная теория и большое количество полезных инструкций;</li><li>скидки на ежемесячную подписку.</li></ul><p><b>Недостатки:</b></p><ul><li>нет обратной связи от автора курса.</li></ul><p><b>Программа обучения:</b></p><ul><li>Ознакомиться с содержанием образовательной программы можно по запросу.</li></ul><p><a href="https://experts2.ru/mAfubY?sub1=tproger-kf&amp;sub2=laravel-kursy&amp;sub4=5">Ознакомиться с полной программой &gt;&gt;&gt;</a></p><p><b>6.</b> <a href="https://experts2.ru/cApMub?sub1=tproger-kf&amp;sub2=laravel-kursy&amp;sub4=6">Laravel</a> | <b>Михаил Русаков</b></p><p>Авторский курс поможет вам изучить ключевые инструменты Laravel и научиться использовать их в PHP-разработке сайтов, веб-сервисов и онлайн-платформ. Вы освоите широкий перечень опций фреймворка — от маршрутизации до шаблонизатора, научитесь работать с базами данных, создавать модели и формы, регистрировать и подключать пользователей через Laravel Breeze, а также задействовать дополнительные возможности для усложнения проектов. В качестве бонуса получите подробный чек-лист по созданию сайта с нуля.</p><figure><img src="https://media.tproger.ru/user-uploads/108137/2025-03-31/3394c66a-3439-4f1c-9f2a-57393f50b8d1.png" alt="" /></figure><ul><li>Стоимость: 5 970 рублей</li><li>Длительность: от 1 месяца</li><li>Формат обучения: видеоуроки, практические упражнения, проектная работа</li><li>Сертификат: электронный сертификат</li></ul><p><b>Кому подойдет: </b>новичкам и опытным специалистам в PHP-разработке.</p><p><b>Преимущества:</b></p><ul><li>разработка многофункционального сайта на базе Laravel для портфолио;</li><li>возврат денежных средств в течение 30 дней, если содержание курса не устроит;</li><li>большое количество упражнений разной сложности;</li><li>скидка на покупку дополнительных курсов от автора.</li></ul><p><b>Недостатки:</b></p><ul><li>долгие ответы от службы поддержки.</li></ul><p><b>Программа обучения:</b></p><ul><li>Установка Laravel и особенности фреймворка;</li><li>Основы работы с Laravel;</li><li>Работа с массивами данных и БД;</li><li>Создание и настройка моделей;</li><li>Обработка веб-форм;</li><li>Регистрация пользователей и авторизация аккаунтов;</li><li>Дополнительные инструменты Laravel.</li></ul><p><a href="https://experts2.ru/cApMub?sub1=tproger-kf&amp;sub2=laravel-kursy&amp;sub4=6">Ознакомиться с полной программой &gt;&gt;&gt;</a></p><p><b>7.</b> <a href="https://experts2.ru/rsMSdi?sub1=tproger-kf&amp;sub2=laravel-kursy&amp;sub4=7">PHP8. Разработка приложений на Laravel</a> | <b>Специалист.ru</b></p><p>Образовательная программа с очным и дистанционным форматом обучения рассчитана на IT-специалистов, желающих повысить свою квалификацию в области веб-программирования. Из этого курса вы узнаете, как установить Laravel и подготовить фреймворк к работе, создать архитектуру веб-приложения и спроектировать безопасные пользовательские сервисы. Практическая часть обучения предусматривает поэтапную разработку веб-проекта — софта по управлению виртуальной витриной магазина, с последующей защитой перед командой IT-экспертов.</p><figure><img src="https://media.tproger.ru/user-uploads/108137/2025-03-31/766e41f2-b988-443f-848e-de4041d20c54.png" alt="" /></figure><ul><li>Стоимость: от 2 294 рублей в месяц</li><li>Длительность: 1 месяц</li><li>Формат обучения: очно в московском лекториуме или онлайн на специализированной платформе</li><li>Сертификат: удостоверение о повышении квалификации и сертификат международного образца</li></ul><p><b>Кому подойдет: </b>PHP-специалистам с опытом веб-разработки.</p><p><b>Преимущества:</b></p><ul><li>два формата занятий на выбор — очно или онлайн;</li><li>ускоренное повышение квалификации с официальным удостоверением;</li><li>сертификат международного образца дополнительно к основному документу;</li><li>несколько программ с разным расписанием — в будние, выходные или по вечерам.</li></ul><p><b>Недостатки:</b></p><ul><li>высокая стоимость при разовой оплате всей стоимости курса.</li></ul><p><b>Программа обучения:</b></p><ul><li>Установка и конфигурация Laravel;</li><li>Создание роутов и контроллеров;</li><li>Обработка массивов данных;</li><li>Создание компонентов и работа с шаблонизатором Blade;</li><li>Введение в Eloquent ORM;</li><li>Создание провайдеров и посредников;</li><li>Аутентификация и валидация;</li><li>Расширенные опции фреймворка.</li></ul><p><a href="https://experts2.ru/rsMSdi?sub1=tproger-kf&amp;sub2=laravel-kursy&amp;sub4=7">Ознакомиться с полной программой &gt;&gt;&gt;</a></p><h2>Еще 3 курса по Laravel</h2><p>В этой подборке я собрала курсы по веб-разработке, в содержании которых также есть модули по изучению возможностей фреймворка Laravel.</p><ul><li><a href="https://experts2.ru/sUCzup?sub1=tproger-kf&amp;sub2=laravel-kursy&amp;sub4=netop">Профессия «PHP-разработчик» с нуля до PRO</a> от Skillbox. Комплексный курс по PHP-разработке, на котором вы с нуля научитесь создавать сайты и веб-приложения, в том числе с использованием фреймворка Laravel. Под руководством преподавателей-практиков напишите облачное хранилище и разработаете сервис для бронирования номеров в отелях.</li><li><a href="https://experts2.ru/FMakqr?sub1=tproger-kf&amp;sub2=laravel-kursy&amp;sub4=netop">Веб-разработчик с нуля</a> от SkillFactory. Программа обучения веб-разработке включает теорию и практику по frontend- и backend-программированию сайтов и пользовательских приложений. Изучите языки JavaScript и PHP, научитесь работать с фреймворками Laravel и React, освоите обработку больших массивов данных в MySQL и создадите трекер трафика для привлечения посетителей или клиентов на веб-ресурс.</li><li><a href="https://experts2.ru/WpqnhV?sub1=tproger-kf&amp;sub2=laravel-kursy&amp;sub4=netop">Бэкенд-разработчик</a> от HTML Academy. Курс с индивидуальным форматом обучения посвящен профессиональному веб-программированию на PHP, JavaScript, Yii и Laravel. Вы изучите синтаксис ключевых языков, используемых в разработке сайтов, познакомитесь с дополнительными IT-инструментами, освоите принципы объектно-ориентированного программирования и научитесь создавать сложную архитектуру для веб-проектов любого предназначения.</li></ul><h2>Бесплатные курсы по Laravel</h2><p>Бесплатные курсы Laravel — это отличная возможность для того, чтобы погрузиться в основы фреймворка и испытать свои силы в PHP-разработке сайтов и сервисов без каких-либо затрат. Программы обучения из этой подборки помогут вам сделать первый шаг в изучении веб-программирования и сформировать «фундамент знаний» для дальнейшего погружения в тему.</p><p><b>1. </b><a href="https://experts2.ru/eKXamt?sub1=tproger-kf&amp;sub2=laravel-kursy&amp;sub4=netop">Framework Laravel</a> — <b>OTUS</b></p><p>Видеокурс на платформе YouTube включает записи вебинаров, эксперты которых подробно рассматривают инструменты Laravel. Вы узнаете, как создавать и запускать браузерные тесты, научитесь настраивать фреймворк и использовать его возможности в базовой и профессиональной веб-разработке.</p><p><b>Главное о курсе:  </b></p><ul><li>спикеры вебинаров — профессиональные программисты в области создания сайтов и пользовательских сервисов;</li><li>основы конфигурации Laravel, проведения браузерного тестирования и практического применения Laravel Dusk.</li></ul><p><b>2. </b><a href="https://experts2.ru/cApMub?sub1=tproger-kf&amp;sub2=laravel-kursy&amp;sub4=netop">Основы Laravel</a> —<b> Михаил Русаков</b></p><p>Подборка обучающих видеоуроков от опытного IT-специалиста, из которых вы узнаете об инструментах и возможностях фреймворка Laravel в разработке сайтов и веб-сервисов. Слушателям программы доступны как теоретические материалы, так и практические задания для закрепления знания. В курсе также есть ссылки на исходники с полезной информацией для самостоятельного изучения.</p><p><b>Главное о курсе: </b></p><ul><li>интерактивные задания практически в каждом учебном блоке;</li><li>ссылки на исходники и дополнительные материалы по теме.</li></ul><p><b>3. </b><a href="https://www.youtube.com/playlist?list=PL0lO_mIqDDFX3vIw4mSilTVihgL98y3e4">Уроки Laravel для начинающих</a> — <b>Гоша Дударь</b></p><p>Плейлист из видеороликов, в которых автор рассказывает, с чего начать работу с Laravel, и как запустить свой первый веб-сайт на базе фреймворка. Для лучшего восприятия материала в каждом видеоуроке есть демонстрация экрана с описанием каждого действия. Вы научитесь создавать страницы и формы, а также погрузитесь в валидацию, работу с контроллерами и обработку данных.</p><p><b>Главное о курсе:  </b></p><ul><li>создание форм и страниц для сайтов и веб-приложений;</li><li>демонстрация экрана с пошаговыми инструкциями в каждом видеоуроке.</li></ul><p><b>4. </b><a href="https://www.youtube.com/watch?v=OM2q5KrUKcE">PHP Laravel</a> — <b>IT-ЛЭТИ</b></p><p>Видеокурс в формате записанных онлайн-вебинаров, тема которых связана с изучением инструментария Laravel 9. В каждом видеоролике представлена демонстрация экрана с подробной подачей информации. В описании есть ссылки на источники, которые использовались автором при подготовке лекций.</p><p><b>Главное о курсе:  </b></p><ul><li>демонстрация экрана с подробными объяснениями для лучшего восприятия информации;</li><li>ссылки на источники учебных материалов.</li></ul><p><b>5. </b><a href="https://www.youtube.com/watch?v=bsil8XwFGjY">Курс Laravel с нуля</a> — <b>Просто о Laravel. CutCode</b></p><p>Короткие, но емкие видеоролики, из которых вы узнаете, как создавать сайты со встроенной административной панелью на базе Laravel 8. Научитесь устанавливать и настраивать фреймворк, продумывать архитектуру веб-проектов, подключать базы данных и многое другое.</p><p><b>Главное о курсе:  </b></p><ul><li>детальное объяснение веб-разработки на базе Laravel 8;</li><li>в каждом видеоролике есть разбивка на тайминги для удобной навигации.</li></ul><p><b>6. </b><a href="https://www.youtube.com/watch?v=OM2q5KrUKcE">Laravel создание Блога</a> — <b>Laravel Creative</b></p><p>Видеокурс на YouTube состоит из небольших видеоуроков по главным инструментам Laravel. Вы узнаете, как создавать и настраивать формы для сайтов и веб-приложений, научитесь интегрировать базы данных в готовые проекты, выполнять различные действия со встроенными категориями и так далее.</p><p><b>Главное о курсе:  </b></p><ul><li>короткие видеоролики с полезной теоретической выжимкой;</li><li>основы разработки и администрирования сайта на базе Laravel.</li></ul><p><b>7. </b><a href="https://www.youtube.com/playlist?list=PLXCVm4GFpx5CZf4X5ppNJTPsaGwSlBXLX">Laravel (полный курс 2023)</a> — <b>One Code</b></p><p>Подробные видеолекции по практическому применению Laravel в веб-программировании. Автор роликов рассказывает обо всех этапах работы с фреймворком — от установки до конфигурации готового проекта.</p><p><b>Главное о курсе:  </b></p><ul><li>демонстрация экрана в каждом видеоуроке с понятными примерами;</li><li>пошаговая инструкция по установке, настройке и использованию Laravel.</li></ul><h2>Для чего используется Laravel</h2><p><b>Laravel </b>— это продвинутый и полностью бесплатный фреймворк с открытым исходным кодом, функционирующий на базе языка программирования PHP. IT-инструмент был создан с целью упрощения разработки сложных сайтов и пользовательских веб-приложений. Используя Laravel, веб-разработчики ускоряют процессы, связанные с аутентификацией, кэшированием данных, структуризацией проекта и выстраиванием систем маршрутизации.</p><h2>Что можно сделать на базе Laravel</h2><p>Laravel считается универсальным IT-инструментом в веб-разработке. С его помощью можно легко и быстро создать посадочные страницы и лендинги, онлайн-магазины, системы управления контентом, пользовательские приложения любой сложности и API-интерфейсы.</p><h2>Преимущества Laravel перед другими фреймворками</h2><p><b>Среди основных преимуществ Laravel перед другими, похожими фреймворками можно выделить: </b></p><ol><li>Простота использования за счет понятной и четкой структуры разрабатываемого проекта.</li><li>Большое количество продвинутых инструментов и готовых решений для разных направлений веб-программирования.</li><li>Встроенная система автоматизации рутинных задач и процессов.</li><li>Поддержка тестирования и опции для написания автоматических тестов.</li><li>Высокие показатели защищенности проектов от хакерских атак и утечек конфиденциальных данных.</li><li>Активное сообщество разработчиков для общения и обмена профессиональным опытом.</li><li>Поддержка мультиязычности и возможность создания сайтов и сервисов сразу для нескольких регионов.</li></ol><h2>Сколько зарабатывает Laravel-разработчик</h2><p>Уровень дохода веб-разработчика, у которого есть навыки работы с Laravel, зачастую зависит от его профессионального опыта и количества рабочих задач. Junior-специалисты могут претендовать на заработную плату от <a href="https://hh.ru/vacancy/118703395?query=laravel&amp;hhtmFrom=vacancy_search_list">60 000 рублей</a>. Middle-разработчики с опытом работы от года, в среднем, получают от <a href="https://hh.ru/vacancy/118004825?query=laravel&amp;hhtmFrom=vacancy_search_list">100 000 рублей</a>. Профессионалы в PHP-программировании зарабатывают <a href="https://hh.ru/vacancy/110098566?query=laravel&amp;hhtmFrom=vacancy_search_list">190 000 рублей</a> и выше.</p><h2>Заключение</h2><p>Курсы Laravel могут помочь вам повысить свою квалификацию в области веб-программирования и выйти на более сложные и интересные проекты, а вместе с тем — на более высокую оплату труда. PHP-фреймворк предоставляет широкий перечень продвинутых инструментов для создания удобных сайтов, платформ, сервисов и других веб-ресурсов, а также ускоряет процесс разработки. Именно поэтому наличие знаний и навыков практического применения Laravel может стать основой для того, чтобы стать востребованным IT-специалистом с хорошим уровнем дохода и перспективами профессионального развития в индустрии.</p><p><b>Подборки по схожим темам:</b><b></b></p><ol><li><a href="https://tproger.ru/articles/top-61-kursov-veb-razrabotchika--luchwee-onlajn-obuchenie-programmirovaniyu-besplatno-i-platno">Лучшие курсы веб-разработчика</a></li><li><a href="https://tproger.ru/articles/top-hh-kursov-ios-razrabotchikov--onlajn-obuchenie-razrabotki-mobilnyh-prilozhenij-dlya-iphone">Лучшие курсы iOS-разработчиков</a></li><li><a href="https://tproger.ru/articles/top-30-kursov-android-razrabotchikov--onlajn-obuchenie-razrabotki-mobilnyh-prilozhenij-pod-android">Лучшие курсы Android-разработчиков</a></li></ol><p><i>Если вы обнаружили неактуальную или неточную информацию в рейтинге, пожалуйста, сообщите об этом в комментариях. Также вы можете поделиться опытом обучения на других курсах по Laravel, чтобы мы обновили подборку. </i></p>]]></content:encoded>
    </item>
    <item>
      <title>Как перевести проект на Laravel: пошаговый план перехода</title>
      <link>https://tproger.ru/articles/kak-perevesti-proekt-na-laravel--powagovyj-plan-perehoda</link>
      <comments>https://tproger.ru/articles/kak-perevesti-proekt-na-laravel--powagovyj-plan-perehoda?scrollTo=tproger-comments</comments>
      <dc:creator><![CDATA[Вадим Егорцев]]></dc:creator>
      <guid isPermaLink="true">https://tproger.ru/articles/kak-perevesti-proekt-na-laravel--powagovyj-plan-perehoda</guid>
      <description><![CDATA[<p>Как перевести проект на Laravel. Показываем основные преимущества использования Ларавел. Рассматриваем пошаговую инструкцию нюансы переноса ✔ Tproger</p><p>— Читать дальше «<a rel="follow" href="https://tproger.ru/articles/kak-perevesti-proekt-na-laravel--powagovyj-plan-perehoda">Как перевести проект на Laravel: пошаговый план перехода</a>»</p>]]></description>
      <category><![CDATA[API]]></category>
      <category><![CDATA[JavaScript]]></category>
      <category><![CDATA[Java]]></category>
      <category><![CDATA[Тестирование]]></category>
      <category><![CDATA[Git]]></category>
      <category><![CDATA[Производительность]]></category>
      <category><![CDATA[JSON]]></category>
      <category><![CDATA[MySQL]]></category>
      <category><![CDATA[PHP]]></category>
      <category><![CDATA[IDE]]></category>
      <category><![CDATA[CSS]]></category>
      <category><![CDATA[SQL]]></category>
      <category><![CDATA[HTML]]></category>
      <category><![CDATA[GitHub]]></category>
      <category><![CDATA[Сервисы]]></category>
      <category><![CDATA[React]]></category>
      <category><![CDATA[Фронтенд]]></category>
      <category><![CDATA[QA]]></category>
      <category><![CDATA[Приложение]]></category>
      <category><![CDATA[Сервер]]></category>
      <category><![CDATA[Библиотеки]]></category>
      <category><![CDATA[Vue]]></category>
      <category><![CDATA[Laravel]]></category>
      <category><![CDATA[Бизнес]]></category>
      <category><![CDATA[Разработка]]></category>
      <category><![CDATA[CI/CD]]></category>
      <category><![CDATA[DPI]]></category>
      <category><![CDATA[Статьи]]></category>
      <slash:comments>0</slash:comments>
      <pubDate>Sun, 30 Mar 2025 09:00:02 GMT</pubDate>
      <content:encoded><![CDATA[<p>Когда код устаревает, его поддержка превращается в борьбу с хаосом. После пересмотра архитектуры приходит пугающее осознание: нужно переезжать на более современный стек. Однако непонятно, с чего начать.</p><p><i>В этой статье пошагово разберем перенос вашего проекта на Laravel. Вы узнаете, как мигрировать с минимальными рисками для разработки и пользователей.</i></p><h2>Шаг 1. Готовимся к миграции</h2><p>Посмотрите структуру проекта, чтобы выявить слабые места.</p><p>Архитектура далека от идеала, если проект вырос на хаотичных добавлениях новых функций.</p><p>Проанализируйте:</p><ul><li><b>Вид проекта</b>. Ваша разработка — это монолит, модульная система, API, микросервис?</li><li><b>Зависимости</b>. Определите, какие библиотеки использует проект. Совместимы ли они с Laravel?</li><li><b>Базу данных</b>. Если в БД встречаются дубли, отсутствуют ограничения, это нужно исправить заранее.</li></ul><p>В качестве теста на совместимость перепишите небольшую часть на Laravel. Возьмите один простой модуль и посмотрите, насколько это жизнеспособно.</p><h2>Стратегии перехода</h2><p>Выберем стратегию перехода:</p><ul><li>Big Bang,</li><li>Поэтапный перенос.</li></ul><p><b>Стратегия Big Bang</b> — это полная остановка текущего проекта и создание новой версии на Ларавел с нуля.</p><p>Подход идеален для устаревших и запутанных систем.</p><p>Из минусов — высокие риски. Во время разработки текущая версия может растерять пользователей. К тому же сроки реализации могут затянуться.</p><p><b>Стратегия с постепенным переходом</b> выглядит надежнее.</p><p>Система продолжает работать, а вы поэтапно меняете ее «под капотом».</p><p>Единственный нюанс — готовьтесь к сложностям поддержки, когда часть системы заработает в новой архитектуре, а часть останется в старой.</p><h4>Выбор подхода зависит от проекта</h4><p>Если систему легко поддерживать, то более безопасен постепенный переход.</p><p>Проект напоминает спагетти-код? Плохие новости — Big Bang неизбежен.</p><h2>Шаг 2. Разворачиваем новое окружение на Laravel</h2><p>Чтобы установить фреймворк, выполните команду:</p><p>Прежде чем работать с кодом, настроим окружение.</p><p>В корне проекта для этого есть файл конфигурации .env:</p><ul><li><b>APP_NAME</b>: имя приложения, чтобы оно отображалось в логах и заголовках.</li><li><b>APP_URL</b>: адрес, на котором приложение будет доступно (например, http://localhost).</li></ul><p>В будущем запланирована интеграция с существующей базой, поэтому лучше сразу настроить подключение.</p><h3>Подключение БД</h3><p>Laravel использует <b>Eloquent ORM</b> для взаимодействия с базой.</p><p>Настройка БД выполняется в том же разделе .env:</p><p>Для тестирования подключения запустите команду:</p><h2>Настройка маршрутов</h2><p>Маршруты изначально хранятся в файлах <i>routes/web.php</i> (для страниц) или <i>routes/api.php</i> (для <a href="https://tproger.ru/translations/luchshie-praktiki-razrabotki-rest-api-20-sovetov">REST API</a>).</p><p>В качестве примера добавим базовый маршрут приветствия:</p><p>Если у вас проект с десятками пользовательских маршрутов, интегрируйте их постепенно.</p><h2>Шаг 3. Переносим модели данных и бизнес-логики</h2><p>Eloquent ORM работает с классами, представляющими таблицы в базе данных.</p><p>Чтобы перенести существующую таблицу, нужно создать <b>модель</b>:</p><p>Этот класс автоматически подключается к таблице с именем products.</p><p>Когда название таблицы не соответствует модели, это можно указать явно:</p><p>Если в таблице есть нестандартные поля (например, столбцы с именами вроде created_time вместо created_at), их тоже можно легко обработать:</p><h2>Переносим схему БД</h2><p>Laravel использует механизм <b>миграций </b>для управления таблицами в базе и <b>сиды </b>для внесения данных.</p><p>Перенос структуры БД выполняется командой:</p><p>Миграция создается в папке <i>database/migrations</i>.</p><h3>Переносим данные</h3><p>Если текущая БД уже содержит данные, их можно перенести через <b>сиды</b>: файлы, которые заполняют таблицы данными.</p><p>Создаем сид:</p><p>Внутри метода run описываем данные:</p><h3>Переводим бизнес-логику в сервисы и фасады</h3><p>Старый проект состоит из функционала, размазанного по контроллерам? Улучшим структуру и сделаем код независимым. С этим помогут сервисы и фасады.</p><p><b>Сервисы </b>— это классы, которые объединяют бизнес-логику в одном месте.</p><p>Например, если проект выполняет расчеты цен и скидок, можно создать класс:</p><p>В этом классе описана бизнес-логика:</p><p>Теперь сервис можно вызывать в контроллерах и моделях.</p><p><b>Фасады </b>— это статический интерфейс к сервисам, который делает вызовы более читаемыми.</p><p>Например:</p><p>С фасадом вызов становится простым:</p><h2>Шаг 4. Перенос маршрутов и контроллеров</h2><p>Начнем с <b>маршрутов</b>. Они определяют, как пользователи будут взаимодействовать с приложением.</p><p>Если в старом проекте использовались API-запросы для работы с внешними сервисами или мобильными приложениями, перенесем их в <i>api.php</i> и добавим префикс api для маршрутов:</p><p>Теперь про <b>контроллеры</b>. Они отвечают за логику обработки запросов и взаимодействие с моделями. В Laravel контроллеры работают по правилам <b>MVC </b>(Model-View-Controller).</p><p>Пример обычного метода контроллера:</p><p>Laravel определяет маршруты групповыми методами — по префиксам, middleware или зонам авторизации.</p><p><b>Middleware </b>— это посредники, которые обрабатывают запросы до их поступления в приложение.</p><p>Навесим middleware на маршруты, требующие авторизации пользователя:</p><p><b>Политики </b>контролируют доступ к определенным ресурсам, например, правку или удаление записей.</p><p>Пример метода политики:</p><p>Политики можно подключать к маршрутам или напрямую вызывать в контроллерах.</p><h2>Шаг 5. Перенос фронтенда и представлений</h2><p>Если ваш старый проект использует обычные HTML-файлы, они легко преобразуются в Blade.</p><p><b>Blade </b>— это встроенный механизм шаблонов. С его помощью создают пользовательские интерфейсы.</p><p>Например, перенесем главную страницу сайта:</p><p>Blade-версия:</p><p>Теперь можно динамически передавать данные из контроллера:</p><p>Blade поддерживает механизм наследования, который упрощает работу с повторяющимися частями интерфейса.</p><h3>Интегрируем Vue.js или React</h3><p>Vue.js/React подключают, когда нужен динамичный и интерактивный интерфейс. Например, для <a href="https://tproger.ru/articles/ssr-ili-spa-veb-sajty-chto-vybrat-dlya-vas-i-vawego-biznesa">SPA</a>, реалтайм-функционала, сложных форм или фильтров.</p><p>Blade и JavaScript можно комбинировать: используйте Blade для рендеринга начального интерфейса и Vue.js/React для обработки интерактива.</p><h3>Динамический интерфейс без JS</h3><p><b>Livewire </b>— это инструмент для создания интерфейсов без необходимости обращаться к внешним библиотекам JavaScript. Преимущество в том, что весь код пишется на PHP.</p><p>Livewire пригодится для динамических форм, фильтрации таблиц, уведомлений. Он упрощает код, сохраняя гибкость.</p><h2>Шаг 6. Оптимизируем и тестируем проект</h2><p>Отправная точка улучшения производительности — работа с Blade-шаблонами. Laravel сам их оптимизирует, но есть практики по дополнительному ускорению:</p><ul><li><b>Минимизация логики в представлении</b>. Злоупотребление PHP внутри Blade замедляет рендеринг страниц. Вместо описания сложной логики в шаблонах ее лучше перенести в контроллер.</li><li><b>Кэширование шаблонов</b>. Работу приложения можно ускорить за счет запуска кэширования всех шаблонов, сокращая время компиляции — «<i>php artisan view:cache</i>».</li><li><b>Переиспользование</b>. Если фронтенд состоит из повторяющихся фрагментов, рекомендуется использовать Blade-компоненты.</li></ul><p>В приложениях SPA оптимизируем фрагменты JavaScript.</p><p><b>Laravel Mix</b> генерирует минифицированные CSS и JS. Проверьте размер этих файлов в папке <i>public/js</i>. Если их вес больше 1 МБ:</p><ul><li>Удалите лишние пакеты.</li><li>Используйте динамическую загрузку маршрутов или компонентов.</li></ul><p>Для Vue можно использовать динамическую загрузку, чтобы не грузить весь фронтенд сразу:</p><h3>Тестирование</h3><p>Убедимся, что приложение работает корректно.</p><p>Проверим, например, что страница приветствия открывается и показывает нужный текст:</p><p>Если используете Vue.js или React, для проверки компонентов применяйте <b>Jest </b>или <b>Mocha</b>.</p><p>Тест, который проверяет, что компонент отобразил нужный текст:</p><p>Если приложение работает с API:</p><p>Для проверки приложения под нагрузкой можно использовать <b>Artillery </b>или <b>JMeter</b>.</p><h2>Шаг 7. Разворачиваем и запускаем проект</h2><p>Перенесли данные, создали маршруты и контроллеры, внедрили представления, оптимизировали приложение и протестировали его. Остался последний шаг — развернуть проект на сервере и запустить его.</p><p>Выбор сервера зависит от предпочтений и нагрузок:</p><ul><li>Если важна скорость и масштабируемость, выбирайте <a href="https://tproger.ru/articles/video-osnovy-nginx-dlja-nachinajushhih-za-200-sekund">Nginx</a>. Он быстрее работает под высокой нагрузкой.</li><li>Если важен простой подход, используйте <a href="https://tproger.ru/video/video-osnovy-apache-kafka">Apache</a>. Он интегрируется с большинством систем.</li></ul><p>Фоновые задачи можно связать с <b>Supervisor</b>. Инструмент автоматически запускает воркеров при сбоях, обеспечивая бесперебойную обработку задач.</p><h3>Автоматизация развертывания</h3><p>Чтобы релиз прошел безболезненно, нужен рабочий процесс CI/CD. Например, в <a href="https://tproger.ru/articles/integraciya-ci-cd-processov-s-ispolzovaniem-github-actions">GitHub Actions</a> можно настроить сценарий, который:</p><ol><li>Проверит качество кода.</li><li>Установит зависимости.</li><li>Выполнит миграции.</li><li>Зальет проект на сервер.</li></ol><p>Предусмотрите откат, например, через <b>Spatie Laravel Backup</b>. Если что-то пойдет не так, у вас должна быть возможность вернуть предыдущую версию.</p><p>Инструмент <b>Sentry </b>поможет отслеживать ошибки, а <b>New Relic</b> — оценивать производительность.</p><h2>Заключение</h2><p>Устаревшие проекты уникальны, к каждому нужно искать индивидуальный подход. Надеемся, что пошаговое руководство станет основой для миграции вашего legacy-приложения на Laravel без переписывания кода с нуля.</p>]]></content:encoded>
    </item>
    <item>
      <title>Вышел релиз Laravel 11, что нового?</title>
      <link>https://tproger.ru/news/vywel-reliz-laravel-11--chto-novogo-</link>
      <comments>https://tproger.ru/news/vywel-reliz-laravel-11--chto-novogo-?scrollTo=tproger-comments</comments>
      <dc:creator><![CDATA[ihor]]></dc:creator>
      <guid isPermaLink="true">https://tproger.ru/news/vywel-reliz-laravel-11--chto-novogo-</guid>
      <description><![CDATA[<p>Laravel 11 представляет минимальную структуру приложения, по умолчанию использует SQLite, реализует health routing, улучшает тестирование очередей, вводит новые команды Artisan, добавляет транспорт для повторной отправки почты, интегрирует средство проверки запросов и многое другое.</p><p>— Читать дальше «<a rel="follow" href="https://tproger.ru/news/vywel-reliz-laravel-11--chto-novogo-">Вышел релиз Laravel 11, что нового?</a>»</p>]]></description>
      <category><![CDATA[PHP]]></category>
      <category><![CDATA[Laravel]]></category>
      <category><![CDATA[Новости]]></category>
      <slash:comments>0</slash:comments>
      <pubDate>Wed, 13 Mar 2024 12:40:02 GMT</pubDate>
      <content:encoded><![CDATA[<p><b>Важно!</b> Для Laravel 11.x  требуется как минимум PHP 8.2.</p><h2>Минимальная структура приложения</h2><p>В Laravel 11 изменился принцип структуризации приложений. Фреймворк лучше оптимизировали именно с точки зрения производительности. Изменения не коснулись уже существующих приложений, так что рефакторить или переписывать их не нужно.</p><p>Новая структура приложения призвана обеспечить более компактное и современное взаимодействие, сохраняя при этом многие концепции, с которыми разработчики Laravel уже знакомы.</p><h4>Файл  bootstrap/app.php</h4><p>Теперь с помощью этого файла вы можете настроить маршрутизацию, middleware, сервис-провайдер, обработку исключений и многое другое.</p><p>Этот файл объединяет множество высокоуровневых настроек поведения, которые ранее были разбросаны по файловой структуре вашего приложения:</p><h4>Сервис-провайдеры</h4><p>Вместо структуры приложения Laravel по умолчанию, содержащей пять сервис-провайдеров, Laravel 11 включает только один AppServiceProvider.</p><p>Функциональность предыдущих сервис-провайдеров была включена в bootstrap/app.php, обрабатывается фреймворком автоматически или может быть размещена в AppServiceProvider вашего приложения.</p><h4>Маршрутизация api и broadcast</h4><p>Файлы api.php и channels.php  удалены по умолчанию, поскольку многим приложениям эти файлы не требуются.</p><p>Вместо этого их можно создать с помощью простых команд Artisan:</p><h4>Middleware</h4><p>Ранее новые приложения Laravel включали девять middleware, таких как аутентификация, CSRF-токенов и прочее.</p><p>В Laravel 11 функциональность middleware перенесена в сам фреймворк. По-видимому, разработчики решились на этот шаг, чтобы не раздувать само приложение — большая часть middleware всё равно не использовалась.</p><p>Настроить их поведение можно вызвав методы из файла bootstrap/app.php:</p><p>Поскольку все middleware легко настраиваются с помощью bootstrap/app.php, необходимость в отдельном классе HTTP "kernel" отпала.</p><h4>Планировщик</h4><p>Используя новый интерфейс планировщика, задачи теперь можно определять непосредственно в файле вашего приложения routes/console.php, устраняя необходимость в отдельном консольном классе "kernel".:</p><h4>Обработка исключений</h4><p>Подобно маршрутизации и middleware, обработку исключений теперь можно настроить из файла вашего приложения bootstrap/app.php вместо отдельного класса обработчика исключений, что сокращает общее количество файлов, включаемых в новое приложение Laravel:</p><h4>Контроллер по умолчанию</h4><p>Базовый контроллер, включенный в новые приложения Laravel, упростили. Он больше не расширяет внутренний класс контроллера Laravel, а функции AuthorizesRequests и ValidatesRequests были удалены, поскольку при желании они могут быть включены в отдельные контроллеры вашего приложения:</p><figure><img src="https://media.tproger.ru/user-uploads/10203/2024-03-12/12937231-b492-4346-965f-f7727ff649c7.png" alt="" /><figcaption>структура laraver приложения</figcaption></figure><h2>SQLite по умолчанию</h2><p>По умолчанию новые приложения Laravel используют <b>SQLite</b> для хранения базы данных, а также драйвер для сессий, кэша и очереди Laravel.</p><p>Кроме того, создание проекта с использованием composer create-project позволяет приступить к сборке вашего приложения сразу после создания нового, без необходимости устанавливать дополнительное программное обеспечение или заниматься миграцией баз данных.</p><figure><img src="https://media.tproger.ru/user-uploads/10203/2024-03-12/60337b5a-629e-49c0-a0db-c247136d70d0.png" alt="" /><figcaption>миграция таблиц SQLite</figcaption></figure><h2>Health-check Routing</h2><p>Новые приложения Laravel 11 включают health-check эндпоинт, с помощью которого сторонние службы мониторинга или такие сервисы, как Kubernetes, могут проверить работоспособность приложения.</p><p><b>эндпоинт по умолчанию:</b>  /up</p><p>Когда HTTP-запросы отправляются по этому маршруту, Laravel отправляет событие DiagnosingHealth, которое запускает дополнительные проверки. Это может быть проверка подключения к базе данных или работы кэша.</p><figure><img src="https://media.tproger.ru/user-uploads/10203/2024-03-12/f0c148c0-01cd-4f2f-ac59-e75cbd829672.png" alt="" /><figcaption>Ответ приложения на проверку статуса</figcaption></figure><h2>Изящная ротация ключа шифрования</h2><p>Поскольку Laravel шифрует все файлы cookie, включая файлы cookie сеанса вашего приложения, по сути, каждый запрос к приложению Laravel основан на шифровании. Однако из-за этого смена ключа шифрования приложения приведет к выходу всех пользователей из приложения.</p><p>Кроме того, расшифровка данных, которые были зашифрованы предыдущим ключом шифрования, становится невозможной.</p><p>Laravel 11 позволяет вам определять предыдущие ключи шифрования  приложения в виде списка, разделенного запятыми, с помощью переменной окружения APP_PREVIOUS_KEYS:</p><figure><img src="https://media.tproger.ru/user-uploads/10203/2024-03-12/ed51aeb9-0e94-4b50-9163-996b94c508ca.png" alt="" /><figcaption>Объявление ключей шифрования</figcaption></figure><p>При шифровании значений Laravel всегда будет использовать "текущий" ключ шифрования, который находится в переменной окружения APP_KEY.</p><p>При расшифровке значений Laravel сначала попробует текущий ключ. Если при расшифровке не удается использовать текущий ключ, Laravel будет пробовать все предыдущие ключи до тех пор, пока один из ключей не сможет расшифровать значение.</p><p>Такой подход к изящному дешифрованию позволяет пользователям продолжать использовать ваше приложение без сбоев, даже если ваш ключ шифрования изменился.</p><p>Для получения дополнительной информации о шифровании в Laravel ознакомьтесь с <a href="https://laravel.com/docs/11.x/encryption">документацией по шифрованию</a>.</p><h2>Тестирование взаимодействия с очередью</h2><p>Ранее попытка проверить, что задание, поставленное в очередь, было выпущено, удалено или завершилось ошибкой вручную, была громоздкой и требовала определения пользовательских подделок очереди и заглушек.</p><p>Однако в Laravel 11 вы можете легко протестировать эти взаимодействия с очередями, используя метод withFakeQueueInteractions:</p><figure><img src="https://media.tproger.ru/user-uploads/10203/2024-03-12/31ba24e8-0b8d-4675-b7f3-33b5d116a74f.png" alt="" /></figure><p>Помимо утверждения assertReleased, которое вы можете использовать для проверки того, было ли задание возвращено обратно в очередь, вы также можете использовать утверждения assertFailed или assertDeleted, чтобы определить, завершилось ли задание ошибкой или было удалено соответственно.</p><h2>Посекундный Rate Limiting</h2><p>Laravel теперь поддерживает ограничение скорости "в секунду" для всех ограничителей скорости, в том числе для HTTP-запросов и заданий в очереди. Ранее ограничители скорости в Laravel были ограничены степенью детализации "в минуту" :</p><h2>Laravel Prompts</h2><p><a href="https://laravel.com/docs/11.x/prompts">Laravel Prompts</a> - это PHP-пакет для добавления красивых и удобных форм в ваши приложения командной строки с функциями, подобными браузеру, включая placeholder и валидацию.</p><p>Laravel Prompts поддерживает проверку ввода с помощью замыканий:</p><p>Однако это может стать громоздким при работе со многими входными данными или сложными сценариями проверки.</p><p>Таким образом, в Laravel 11 вы можете использовать все возможности <a href="https://laravel.com/docs/11.x/validation">валидатора</a> Laravel при проверке вводимых запросов:</p><h2>Новые команды Artisan</h2><p>Добавлены новые команды Artisan, позволяющие быстро создавать классы, перечисления, интерфейсы и свойства:</p><h2>Laravel Reverb</h2><p><a href="https://reverb.laravel.com/">Laravel Reverb</a> обеспечивает невероятно быструю и масштабируемую связь через WebSocket в режиме реального времени непосредственно с вашим приложением Laravel и обеспечивает плавную интеграцию с существующим набором инструментов трансляции событий Laravel, таких как Laravel Echo.</p><p>Кроме того, <b>Reverb</b> поддерживает горизонтальное масштабирование с помощью возможностей Redis, что позволяет распределять трафик WebSocket по нескольким серверам Reverb, поддерживающим одно высоконагруженное приложение.</p><h2>Изменения в Моделях</h2><p>В Laravel 11 касты моделей теперь определяются как метод, а не как свойство.</p><p>Когда они определены как метод, мы можем делать и другие вещи. Например, вызывать другие методы непосредственно из кастов.  Это позволяет создавать упрощенные и плавные определения приведений, особенно при использовании кастов с аргументами:</p><h2>Функция once</h2><p>Вспомогательная функция once выполняет заданный обратный вызов и кэширует результат в памяти на время выполнения запроса.</p><p>Любые последующие вызовы функции once с тем же обратным вызовом вернут ранее кэшированный результат:</p><h2>Улучшена поддержка  MariaDB</h2><p>В предыдущих версиях Laravel вы могли использовать <b>MariaDB</b> через драйвер <b>MySQL</b> от <b>Laravel</b>. Однако в Laravel 11 теперь включен специальный драйвер <b>MariaDB</b>, который обеспечивает лучшие настройки по умолчанию для этой системы баз данных.</p><h2>Политика поддержки Laravel</h2><p>Для всех выпусков <b>Laravel</b> исправления ошибок предоставляются в течение 18 месяцев, а исправления безопасности - в течение 2 лет. Для всех дополнительных библиотек, включая <b>Lumen</b>, исправления ошибок предоставляются только в последнем основном выпуске.</p><figure><img src="https://media.tproger.ru/user-uploads/10203/2024-03-12/5cc703a7-e69f-4fd7-8690-7d145ceffdf9.png" alt="" /></figure><p>Источник: <a href="https://laravel.com/docs/11.x/releases#the-once-function">официальная документация Laravel</a></p>]]></content:encoded>
    </item>
    <item>
      <title>Laravel Pulse вышел в бета. Новая система мониторинга для приложений Laravel</title>
      <link>https://tproger.ru/articles/laravel-pulse-vywel-v-beta-novaya-sistema-monitoringa</link>
      <comments>https://tproger.ru/articles/laravel-pulse-vywel-v-beta-novaya-sistema-monitoringa?scrollTo=tproger-comments</comments>
      <dc:creator><![CDATA[ihor]]></dc:creator>
      <guid isPermaLink="true">https://tproger.ru/articles/laravel-pulse-vywel-v-beta-novaya-sistema-monitoringa</guid>
      <description><![CDATA[<p>Вышла бета-версия инструмента Laravel Pulse. Рассказали, что это такое, что умеет инструмент и в каких приложениях Laravel он работает.</p><p>— Читать дальше «<a rel="follow" href="https://tproger.ru/articles/laravel-pulse-vywel-v-beta-novaya-sistema-monitoringa">Laravel Pulse вышел в бета. Новая система мониторинга для приложений Laravel</a>»</p>]]></description>
      <category><![CDATA[PHP]]></category>
      <category><![CDATA[Laravel]]></category>
      <category><![CDATA[Статьи]]></category>
      <slash:comments>0</slash:comments>
      <pubDate>Tue, 05 Dec 2023 14:54:06 GMT</pubDate>
      <content:encoded><![CDATA[<p>1-го декабря на своей странице в (X) Тейлор Отвел <a href="https://x.com/taylorotwell/status/1730634925169082834?s=20">опубликовал</a> пост о выходе бета-версии инструмента Laravel Pulse.</p><h2>Что такое Laravel Pulse</h2><p>Laravel Pulse – это совершенно новый open-source инструмент мониторинга производительности, анализа данных и панели мониторинга в режиме реального времени для приложений Laravel.</p><p>Pulse был разработан специально для Laravel и знает обо всех основных компонентах, таких как очереди, события, почта, уведомления, кэширование, и многих других.</p><p>Laravel Pulse <b> self-hosted</b>  и работает везде, где работает Laravel: VPS, Laravel Forge, Vapor и т.д. У него адаптивный пользовательский интерфейс со светлым и темным режимами.</p><figure><img src="https://media.tproger.ru/user-uploads/10203/2023-12-05/7a87bd19-01db-45dc-9a19-4fe9f79353db.png" alt="" /><figcaption>Пример дашборда, взято с https://pulse.laravel.com</figcaption></figure><h2>Что умеет отслеживать Laravel Pulse</h2><ul><li><b>Работоспособность сервера: </b>отслеживая использование процессора, памяти и диска, Pulse легко масштабируется для управления несколькими серверами с одного инстанса.</li><li><b>Очереди:</b> выводит статистику в реальном времени и за прошлые периоды о том, сколько заданий находится в очереди, сколько выполнено успешно, а сколько нет.</li><li><b>Производительность:</b> обзор узких мест приложений. Позволяет оперативно выявлять и устранять проблемы с самыми медленными эндпоинтами, запросами к БД, заданиями и исходящими запросами.</li><li><b>Исключения: </b>обзор возникающих исключений с полным обзором работоспособности приложения поможет быстрее находить аномалии и устранять их.</li><li><b>Использование приложений:</b> выявляет поведение пользователей путем выявления наиболее активных, которые делают больше всего запросов, взаимодействуют с самыми медленными эндпоинтами и запросами, отправляют больше всего задач.</li></ul><p>Laravel Pulse – инструмент который сделает отладку и мониторинг приложений более приятным и продуктивным.</p><p>Ссылки: <a href="https://github.com/laravel/pulse">GitHub</a>, <a href="https://laravel.com/docs/10.x/pulse">документация</a>, <a href="https://pulse.laravel.com/">сайт Laravel Pulse.</a></p>]]></content:encoded>
    </item>
    <item>
      <title>4 причины, по которым Symfony лучше Laravel</title>
      <link>https://tproger.ru/articles/4-prichiny-po-kotorym-symfony-luchwe-laravel</link>
      <comments>https://tproger.ru/articles/4-prichiny-po-kotorym-symfony-luchwe-laravel?scrollTo=tproger-comments</comments>
      <dc:creator><![CDATA[Вика Овсянникова]]></dc:creator>
      <guid isPermaLink="true">https://tproger.ru/articles/4-prichiny-po-kotorym-symfony-luchwe-laravel</guid>
      <description><![CDATA[<p>И у Symfony, и у Laravel есть свои достоинства и недостатки. В этой статье разбираем, почему Symfony больше подходит для больших проектов.</p><p>— Читать дальше «<a rel="follow" href="https://tproger.ru/articles/4-prichiny-po-kotorym-symfony-luchwe-laravel">4 причины, по которым Symfony лучше Laravel</a>»</p>]]></description>
      <category><![CDATA[Веб-разработка]]></category>
      <category><![CDATA[Инструменты]]></category>
      <category><![CDATA[PHP]]></category>
      <category><![CDATA[Laravel]]></category>
      <category><![CDATA[Статьи]]></category>
      <slash:comments>0</slash:comments>
      <pubDate>Thu, 05 Oct 2023 08:25:03 GMT</pubDate>
      <content:encoded><![CDATA[<p>Сразу спойлер: в Laravel есть фишки, которых нет у Symfony. Обилие интеграций, нестандартные библиотеки, та же «магия» может обернуться достоинством. Мы же разберём, почему Symfony больше подходит для программистов, которые работают с обширной кодовой базой.</p><h2>Скорость</h2><p>Основа современного фреймворка — это DI-контейнер, отвечающий за внедрение зависимостей.</p><p>В Symfony есть этап компиляции DI-контейнера, который происходит один раз, как правило, во время деплоя или первого запроса. В Laravel определение зависимостей происходит динамически через рефлексию при каждом запросе. Так, кода становится больше, особенно если в команде много разработчиков.</p><p>Кроме того, в Symfony по умолчанию используется <a href="https://www.doctrine-project.org/projects/orm.html">Doctrine ORM</a>, которая оптимизирует запросы изменения баз данных. Обновление происходит один раз, и все изменения (удаление, добавление, корректировка записей) проводятся пачками. То есть при изменении одной, 100, 500 или 1 тыс. записей механика не изменится.</p><p>В Laravel можно добиться того же эффекта, но об этом нужно будет явно позаботиться.</p><p>Фреймворк использует Eloquent ORM с моделью ActiveRecord и по умолчанию работает с одной записью. При изменениях придётся создавать массив на каждую запись и использовать отдельные наборы методов, будь то массовое обновление или вставка новых записей.</p><p>С таким кодом время выполнения скрипта растёт, когда нагрузка становится большой и возникает необходимость оперировать тысячами записей.</p><h2>Стабильность</h2><p>Symfony <a href="https://symfony.com/doc/current/contributing/code/bc.html">обещает</a> не ломать обратную совместимость и соблюдать Semver, Laravel — нет. А в долгоживущих приложениях это одна из самых важных фич (если не самая). Благодаря ей, при обновлении кодовой базы мы будем уверены, что новая мажорная версия ничего не сломает, и сможем без страха обновить фреймворк и все пакеты экосистемы.</p><p>Кроме того, версии Symfony имеют Long-Term Support Release (выходят раз в два года). Багфиксы приходят в течение трёх лет после релиза, а обновления безопасности — в течение четырёх. Так, если мы фокусируемся на развитии продукта, редко обновляем фреймворк и чиним сопутствующие баги, то LTS Symfony — это наш путь. Достаточно обновиться до последней минорной версии.</p><p>Мы переезжали с LTS 4.4 сначала на 5.3, потом на 5.4, и всё прошло гладко.</p><p>У Laravel последняя версия с LTS — шестая (притом что уже вышла десятая). Шестая, седьмая и восьмая мажорные версии вышли с разницей полгода. И каждый раз обновлять их посреди большого проекта с кучей кода — было очень нетривиальной и дорогой задачей. Возникали проблемы с обновлением пакетов, связанные с конкретной версией фреймворка. Но без него стоимость выросла бы в разы.</p><h2>Меньше «магии»</h2><p>В Symfony используется концепция маппинга данных на «сущности» — данные в чистом виде, без дополнительной логики. То есть мы можем явно указать тип — и быть уверенными, что получим только его.</p><p>Связи между сущностями явно и декларативно указываются в атрибутах. И это тоже добавляет прозрачности.</p><p>В Laravel много «магии». Основной её поставщик — Eloquent. Покажу на примерах.</p><ul><li>Так создаётся атрибут $this-&gt;user:</li></ul><ul><li>Так задаются связи. Удобно, если не нужно указывать названия ключей:</li></ul><ul><li>Так выглядит кастинг типов:</li></ul><ul><li>Чтобы была возможность создавать через new, нужно явно задать свойство:</li></ul><p>В IDE все свойства таких моделек не видны, и нужно явно прописывать @property для всех и вся.</p><p>Не забывайте добавлять запись на каждое свойство, иначе IDE не сможет подсказывать.</p><ul><li>Явной валидации типов свойств также нет. Можно использовать кастинг типов, чтобы преобразовывать строки с цифрами в булевый формат.</li></ul><p>Это всё повышает порог входа в разработку на Laravel.</p><h2>Стандарт индустрии</h2><p>На Symfony пишут:</p><ul><li>Skyeng,</li><li>«Яндекс.Еда»,</li><li>«СберЛогистика»</li></ul><p>и ещё куча компаний. То есть специалист со знанием фреймворка точно будет востребован.</p><p>На Laravel пишут e-com проекты, например, в AGIMA. Сам сайт Laravel написан на Laravel, а ещё на нём работает Canva. Но чаще его выбирают для стартапов и если нужно прописывать много интеграций с внешним миром.</p><h2>В каких случаях выбирают Symfony</h2><ul><li>Когда в проекте важнее внутренняя логика и не предусмотрено множество интеграций — потому что Symfony стабильнее.</li><li>Когда проект большой, разработчиков много и нужно, чтобы у всех были плюс-минус одинаковые знания — потому что в Symfony используются стандартные решения из коробки.</li></ul><p>Но если компания может позволить себе много дорогих, опытных разработчиков, которых не нужно подгонять под условия работы, то и на Laravel получится быстро написать бизнесовую логику.</p>]]></content:encoded>
    </item>
  </channel>
</rss>