Лично мне не нравится сравнивать две рамки из Восьми Классиков. Это бессмысленно, но я хочу заранее хорошо их использовать.
Технологии взаимосвязаны, но на каком-то этапе в определенной области должен быть относительно подходящий инструмент!
Сравнение здесь не с технической точки зрения, а с точки зрения выбора технологий компании, особенно начинающих интернет-стартапов. Ни в коем случае, кто может сделать интернет-компании неотделимыми от программного обеспечения? Ха-ха-ха.
Прежде всего, знакомство игроков с обеих сторон.
Ларавель
Фреймворк Laravel, известный как фреймворк веб-художников, является производительным и представляет собой самый элегантный и популярный фреймворк PHP. После определенного периода использования он также был включен в проект. Это похоже на следующее:
- Сравнительно стандартизированный (в рамках PHP), подходящий для разделения команд и совместной работы
- Быстрое развитие (Экология сообщества и строительные леса)
- Развертывание легко (развертывание PHP похоже на это, набор Git push-and-pull выполнен)
- Функциональные модули являются более всеобъемлющими
- Архитектура более сложная (в PHP-фреймворке, O () O ха-ха ~)
- Полный стек, спереди и сзади с ИДЕЕЙ
- Подробнее в других статьях
Пружинный ботинок
Spring Boot-это не совсем полная платформа, но интегрированная платформа для того, чтобы сделать ведра семейства Spring более удобными для пользователей и людей. Таким образом, за Spring Boot стоит почти непобедимая экология и решения Spring. Давайте начнем с краткого описания характеристик:
- Возвращаясь к Яве, старине, и Весне, стандартному одобрению J2EE, экология очень мощная.
- Быстрая скорость разработки (в серии Java…) Соглашение больше, чем конфигурация
- На основе JVM гарантируется эффективность выполнения.
- Нужно освоить весенний набор, ведь сама по себе детская обувь J2EE не стоит немного дорого
- Благодаря облачной поддержке микросервисы вызывают
- Интеллектуальный до возмутительных весенних данных JPA
- Я поговорю об этом позже.
Что ж, после представления игроков мы начнем анализировать, какой из них использовать. Здесь мы создаем ситуацию:
Предположим, Сяохун-маленький БОСС (вот-вот станет) с идеей стоимостью 2 миллиарда долларов и планирует воплотить ее в жизнь. Она немного разбирается в архитектуре программного обеспечения и технологиях разработки. Верно. Это очень хороший фильм. (Если это очень хорошо, то как использовать фреймворк, это не имеет значения.) А стартовый фонд составляет всего 300 000 юаней.
Я не хочу допускать такой трагической ситуации. В реальности таких ситуаций много, поэтому давайте начнем с этого сценария. Xiaohong должен запустить версию 1.0 с наименьшими затратами и максимальной скоростью, вывести ее на рынок, собирать отзывы и продолжать повторять. Это системная инженерия, говоря об устранении других факторов, рассматривая только технические вопросы, можно резюмировать следующим образом:
- Стоимость (эффективность разработки и затраты на рабочую силу)
- Реакция (эффективность интеграции и развертывания)
- Безопасность (Стабильность и скорость устранения ошибок)
- Сотрудничество (совместная работа и масштабируемость)
1. Эффективность развития
При разработке этого процесса мы определяем его как требование и прототип, которые были определены, и простое моделирование было завершено. Ну, а когда обезьяны идут на работу и открывают компьютер с документом с требованиями, кто быстро работает, когда выпущена версия 1.0? ЭЙ Ха-ха~
Первый-это фреймворк Laravel. Эти шаги заключаются в следующем:
- Настройте локальную среду: включая PHP-CLI, Vagrant, VirtualBox, HomeStead Box, Composer, nodejs (микс для использования), Python, Виртуальную студию, Node-gyp (Node-Sass для использования), PhpStorm, Git, все на месте
создание проекта композитораlaravel/ларавель xxx - Разработка: Определите миграцию, модель, трансформатор и репозиторий, затем напишите сервис и паспорт, затем контроллер и представление, а затем уточните событие, уведомление, push и так далее, наряду с модульным тестированием
- Развертывание: Git push, Git Clone, Pull, env целиком, Онлайн
Для тех, кто знаком с процессом разработки Laravel, это быстро.
Давайте еще раз взглянем на Spring Boot:
Бизнес не сложен, поэтому не бросайтесь микроуслугами, не любите тех, у кого явно есть только одна машина, просто хотите открыть десятки портов, а затем запустить десятки небольших сервисов Spring Boot, но также и с цепочкой пакетов семейства Cloud вместе. Я потерял дар речи.
Нанесение мономера осуществляется в следующие этапы:
- Среда разработки конфигурации: IntelliJ IDEA далее, JDK установил один и другие Redi, которые будут использоваться, за считанные минуты, чтобы их можно было открыть.
- Разработка: Определение сущности JAP, Репозитория, Службы, Настройка безопасности Spring (включая Oauth2), Определение Проверки, Открытый Контроллер, Обработка Исключений, Уровень представления, Модульное Тестирование
- Развертывание: Введите пакет Jar и отправьте его на сервер для выполнения. Составьте карту nginx и сделайте это.
Лично я считаю, что Spring Boot более эффективен, чем фреймворк Laravel.
Почему? Потому что, если вы знакомы с механизмом Spring и использованием безопасности, JPA, шаблона Thymeleaf, RabbitMQ и других функциональных модулей, инкапсуляция Spring Book лучше, чем у Laravel, но только если вы знакомы с Spring, иначе вы не знаете, с чего начать.
Некоторые пружинные компоненты очень сложны, например, Пружинная защита.
Платформа Laravel опирается на многие идеи Java Spring, такие как контейнеры, внедрение зависимостей, аспекты. В этом отношении Spring Boot явно аутентичен, и 6 аннотаций должны летать!
Язык Java очень строгий, опыт в процессе разработки лучше, по крайней мере, как и мне, такой пустой обезьяне, все равно придется позаботиться об этом старике или убежать в считанные минуты.
Возвращаясь к вопросу об эффективности разработки, Spring Boot относительно быстро разрабатывается, если знакомы обе платформы, но Laravel лучше в Spring Boot в некоторых отношениях, как показано ниже:
- Построение ORM фреймворка Laravel должно пройти два этапа: миграция и модель, а изменение миграции требует корректировки модели, которая не может совпадать с сущностью JPA, то есть структурой базы данных.
- Фреймворкам Laravel необходимо вручную реализовать некоторые привязки для инъекций, обычно
$app->привязкаХотя это не займет много времени, это все равно намного медленнее, чем мощные аннотации Spring, а основная среда разработки предоставляет функции навигации и просмотра для компонентов Spring. Это издевательство. - Если вы хотите выполнить рендеринг веб-страниц, функции языка динамических сценариев Laravel плюс шаблон блейда в основном являются второй загрузкой Spring;
- Чтобы сделать иерархию более четкой, Laravel необходимо вручную реализовать режим репозитория. Я не могу смириться с тем фактом, что модель напрямую определяет бизнес-логику и не выношу ее в контроллере. Это не только уродливо, но и трудно расширяется.
- С точки зрения авторизации, собственная безопасность Laravel Spring и безопасность Spring являются очень мощными. Можно сказать, что они готовы к использованию и выровнены.
- Отладка обратной связи по разработке фреймворка Laravel – это большой успех по сравнению с Spring Boot, о котором можно сказать, что все некомпилированные языки классные! Хотя в Spring Boot также есть DevTool, PHP вообще не нужно перезапускать.
- Код фреймворка Laravel подсказывает гораздо меньше, чем Spring Boot, но также нуждается в поддержке сторонних пакетов Ide-помощника, в противном случае отслеживание кода не очень хорошо, но даже со сторонними пакетами все равно не видно, как выглядит контейнер;
- Как и Laravel, объектно-ориентированный фреймворк, воплощающий элегантность, сталкивается с PHP, неполным объектно-ориентированным языком, поэтому легко реализовать функцию в системе Java, но бессильно в системе PHP.
- Маршрутизация маршрутов Laravel очень мощная, интуитивно понятная и более гибкая, чем Spring Boot, поэтому при определении маршрутизации Spring Boot очень эффективен.
- Обработка исключений очень удобна и обеспечивает единый способ обработки.
- Laravel более мощен, чем Spring Book, в настройке данных для Api Json, потому что обработка массивов PHP очень гибкая, а для Java необходимо определить классы инструментов и классы сущностей для специальной обработки.
- I18N интернационализирован, Laravel более удобен, чем Spring Boot.
- Обработка ресурсов переднего плана, что касается самой функции, Laravel Mix сочетается с шаблоном Blade для запуска Spring Boot, но, другими словами, пока это не весь стек, это не является преимуществом. Представьте, что если внешний интерфейс хорошо справляется со страницей и получает внутренний набор шаблонов, то Thymeleaf взрывает Blade, потому что Thymeleaf может сохранять данные предварительного просмотра и отображать фактические данные, чего не может сделать Blade.
Резюме: При наличии достаточных навыков Spring Boot немного более эффективен, чем Laravel. Личное овладение ситуацией отличается, не распыляйтесь, вы можете обратиться к тексту нескольких измерений, подумайте сами.
Наконец, я хотел бы упомянуть, что, кстати:
Ларавель не читает “Лава” Ларавель не читает “Лава” Ларавель не читает “Лава”
Уже поздно. Это немного сонно. На сегодня это все, а о стоимости рабочей силы мы напишем завтра.
Всем спокойной ночи. Спасибо