При выборе фреймворка мы выдвинули требования:
- Простота в изучении. Нужно было уменьшить количество времени, требуемое для изучения и освоения нового фреймворка. Программист должен был за максимально сжатые сроки научиться качественно кодить;
- Простота в написании кода. Код нужен логичный и легкий, для того, чтобы в дальнейшем любой программист мог разобраться в нём для последующих корректировок;
- Скорость работы. Пользователь не должен долго ждать. Загрузка страниц не должна превышать 0.4 сек. Хотя на старой системе управления с одним лишь PHP загрузка происходит быстрее;
- Скорость создания кода. В текущих условиях огромное количество проектов, поэтому быстрота создания сайта – залог успеха;
- Безопасность. Банковские системы являются нашими основными клиентами, а их главное требование – защита личных данных;
- Масштабируемость. Небольшие веб-ресурсы и крупные интернет-площадки должны разрабатываться с легкостью;
- Функциональность. Типовые решения должны быть готовы к использованию.
Выбор фреймворка
Среди подходящих оказалось три фреймворка: Laravel, Yii, Symfony. Старые и неполноценные были отброшены сразу же, так как не решали поставленных задач.
От Symfony отказались из-за того, что он не был универсален. В основном он подходит для крупномасштабных проектов. Делать мелкие сайты на Symfony — всё равно что забивать гвозди микроскопом.
Yii и Laravel оказались примерно на одном уровне. Те разработчики, которые имеют опыт работы с одним из них, будут утверждать, что другой – хуже.
В то время у нашей команды не было опыта работы ни с одним из них, но познакомившись с Laravel мы осознали, что он для нас более удобен и близок.
Одно поле отделяет вас от получения подборок статей на почту
Почему всё-таки Laravel?
Laravel является лучшим и наиболее распространенным фреймворком во всём мире с 2013г. На это есть несколько причин:
- Синтаксис проще и удобнее чем у конкурентов;
- Создатель Laravel выбрал лучшие решения из других существующих фреймворков и скомпилировал их в единое целое, чтобы максимально упростить жизнь разработчика, позволив легко решать типовые задачи;
- Laravel – framework, подходящий для бэк-энд и фронтенд программистов. Для front-end существует – laravel Mix, в основ лежит Webpack и js framework – Vue;
- Пакеты позволили персонализировать laravel для наших потребностей. Сейчас у нас около 15 готовых пакетов для решения типовых задач. Например, один из пакетов – CMS, обновление которой осуществляется в одну команду. Есть масса готовых пакетов от различных разработчиков, поэтому создавать для каждой нестандартной задачи новый пакет с нуля не придется. Скорее всего, за нас уже подумали;
- Вшитая система модульного тестирования phpunit заботится о надежности проекта;
- Простая и понятная инструкция, отличная поддержка и справка на официальном сайте (https://laracasts.com/) для обучения программистов всех уровней;
- Безопасность на высочайшем уровне. Взломать БД практически невозможно. Это гарантирует защиту от различных видов атак;
- Использование самых современных возможностей PHP позволяет добиться наилучшей производительности. Начиная с версии 5.5 по умолчанию представлен PHP 7;
- Eloquent ORM. Простейшая и функциональная ORM, построенная на шаблоне ActiveRecord;
- Большое количество пользователей данного фреймворка, что позволяет получить решение любого вопроса путем поиска в Google.