Подходит ли CodeIgniter для изучения MVC модели? И что востребовано на рынке?

Рейтинг: 1Ответов: 5Опубликовано: 24.02.2015

Мне нужна веб составляющая для моего проекта на С++. До этого обходился уже готовыми решениями и php знаю на уровне мануала. Но вот в планах написать много дополнений, а добавлять их сверху чужого процедурного кода, как-то уже не хочется. И так из-за каши с трудом читается код. Хотя не важно, может код и хорош, а у меня просто мало опыта в php. В любом случае давно планировал перейти в веб с php, но без фреймворков и mvc, как я понял делать особо нечего. Так вот, какой фреймворк лучше сейчас подойдет для изучения MVC, а какой будет востребован следующие пару лет, чтобы когда закончу свой проект, можно было фрилансить?

Ответы

▲ 2

Если вы программируете на C++, то лучше посмотрите в сторону C# или Java (один мощнее как язык, другой мощнее как платформа). Я тоже грешил с PHP...

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

Если хотите совместить удобство с простотой — попробуйте Python или Ruby, например. Если хотите писать что-то масштабное — C#, Java и иже. После C++ от любого из этих языков вы получите больше удовольствия.

P.S. Yii вполне так нормальный. К CodeIgniter не приближаться на расстояние пушечного выстрела.

▲ 1

Для изучения с моей точки зрения один из самых простых и логичных фреймворков. Но тут сколько людей столько и мнений. По современности не очень, новые тенденции не поддерживает. Если хотите современный и простой берите Laravel (опять это мое мнение). Кто то YII посоветует но лично мне не понравился. Если скорость работы актуально CodeIgniter один из самых быстрых ( ну не считая Phalcon который как расширение php на С++ написан). А я бы на вашем месте взял 2 -3 фреймворка и посмотрел который ближе и удобнее вам.

▲ 1

Нет. Берите другой. Сам около года использовал в работе Codeigniter. После перехода на Yii я понял на сколько CI плох. Фреймворк написан под 4-ю версию РНР (отсюда всякие странности реализации), особенно "радует" реализация моделей.

А вообще, старайтесь не заучивать один фреймворк, а понимать концепции. Программист который быстро может разобраться в любом фреймворке, имхо, круче, чем узконаправленный, на один фреймворк.

По поводу рынка труда, я очень давно не видел требований знания Codeigniter, с Yii ситуация в точности да наоборот, очень много вакансий.

▲ 1

всеми лапами за Yii. изучаю 3 недели, а уже сделал админку, регистрацию, куча ввода и вообще полет фантазии не ограничени

▲ 1

http://symfony.com/ - энтерпрайз в мире пхп, но надо иметь в виду, что на http://fabien.potencier.org/article/49/what-is-symfony2 написано:

If you look around, every single framework seems to implement the MVC pattern. And most of them are advertised as MVC frameworks... but not Symfony2. Have a look at the documentation, and you will see that the MVC pattern is only mentioned once or twice, but Symfony2 is never defined as being an MVC framework.

Т.е. в симфони нету по умолчанию чего-то, что можно назвать "моделью", но там часто (но не обязательно) применяется сторонний проект по работе с БД - Doctrine2, но и в нём нету "моделей", а есть "сущности" и "репозитории".

Так вот :) чтобы получить в своём проекте "модель", нужно сделать свой сервис в нём уже описать те методы, которые должна выполнять модель, возможно и скорее всего, она же будет и с БД рабоать, а затем из контроллеров обращаться к эту сервису как к "модели", т.е. для получения данных или выполения каких-то задач бизнес-логики, это очень хорошая практика, но она не является обязательной в симфони, т.е. задачи разны, и решать их можно по-разному ;)