Мы начинаем новый проект веб-приложения. У нас есть опыт работы с DotNet и PHP.
Этот проект будет SAAS, и мы можем перейти к облачным сервисам в будущем. Учитывая это и стоимость MySQL и SQL-сервера, мы думаем о разработке PHP-проекта для этого проекта.
Если мы пойдем на PHP, какой фреймворк мы должны использовать.
1 — Codeigniter (у нас есть хороший опыт, и мы разработали 2-3 проекта для малого и среднего бизнеса, используя это)
2 — YII (много слышал об этом, и некоторые из моих коллег-коллег рекомендуют его, поскольку он имеет хорошую генерацию кода, модульное тестирование и поддержку объектной ориентации, чем codeigniter)
3 — Любые другие рамки?
Мы будем разрабатывать restfull apis, о котором будут сообщать веб-приложения и мобильные приложения.
может ты сможешь попробовать Laravel, это замечательный фреймворк PHP.
я использую Yii на моей постоянной работе почти 3 года, и я постараюсь дать вам плюсы и минусы
Плюсы:
Очень быстро в создании минимально жизнеспособного продукта (здесь помогают генераторы кода)
Сильная структура MVC, то есть, когда я хочу найти что-то в проекте, я могу найти это вслепую, даже если мой коллега написал это
RBAC довольно прост в реализации и использовании
Очень расширяемый. Просто найдите класс, который вы хотите улучшить и расширить его
Я думаю, что Yii так старается быть похожим на Ruby on Rails, и это хорошо, но PHP является ограничивающим фактором.
Минусы:
Вспомогательные методы для генерации html-элементов управления, которые будут отправлять ajax-запрос, — беспорядок. Я каждый раз писал свой собственный JavaScript
Нет полного успокоительного API из коробки. Есть некоторые расширения, но я никогда не пробовал их. Я просто привык обновлять свой контент через POST
Active Record не хватает немного, когда вы пытаетесь сохранить несколько моделей, которые связаны между собой. Вы должны написать свою собственную транзакцию и все, но это управляемо
И самый большой недостаток для меня — это небольшое сообщество. Да, для некоторых простых вещей вы найдете то, что вы хотите, в первых трех ссылках Google, но в конечном итоге вы столкнетесь с какой-то сложной задачей, и вы будете чувствовать себя одиноким. Может быть, я просто избалован Rails, все, что вы можете придумать, для него есть гем (расширение)
Я никогда не пробовал .NET и Codeigniter, поэтому я не буду говорить об этих двух.
Когда вы выбираете рамки, помните о сроках и о том, сколько времени вам придется погрузиться в новое. Если у вас достаточно времени / энтузиазма, чтобы освоить что-то новое, я бы предложил вам попробовать Ruby on Rails. Я считаю это несравнимо лучше, чем Yii почти во всех отношениях.
Я надеюсь, что это немного помогло, и удачи в вашем проекте