Ознакомьтесь с нашей политикой обработки персональных данных
20:23 

.masa
Пропускай все через сердце
Подскажите, какой php-фреймворк является наиболее простым в освоении. В интернете очень много противоречивых отзывов от последователей каждого из фреймворка.
Требуется для решения прежде всего учебных задач и быстрого освоения + хороший мануал или уроки.

@темы: PHP

Комментарии
2015-02-28 в 07:41 

nio
この世界は。。。いいですか?
Joomla, конечно.
Если хотите чего-то более серьёзного - Kohana, но после Джумлы она может неплохо так поломать мозги первые две-три недели.

2015-02-28 в 09:49 

pferdchen ist tot
If I don't give a fuck, if I'm the king, if I'm the queen
joomla, конечно, фреймворк (как и любой другой движок), но уж очень узкий :hmm:
Берите кохану или YII, они оба не особенно сложные.

2015-02-28 в 11:59 

Astartsky
Ecce Porca
Рекомендую Silex. Это микрофреймворк, так что начать можно быстро, просто и не потребуется читать много документации. Если хочется чего-то посерьезнее и посложнее, можно попробовать Symfony или ZF2.

С вышесказанным не соглашусь:
Joomla — это CMS, не просто фреймворк. В учебных целях не очень, т.к. написано ужасно и очень узко специализировано.
Kohana и Yii — таки фреймворки, но лучше их не трогать, если есть выбор, т.к., опять таки, написаны они так себе, лучше к такому не привыкать.

2015-02-28 в 12:08 

pferdchen ist tot
If I don't give a fuck, if I'm the king, if I'm the queen
Astartsky, и вы после вышесказанного советуете Зенд? :) А чем вам юи не угодил?
Про Симфони соглашусь - сама не пробовала, но много хороших отзывов слышала.

Работала немного с CakePHP. Тоже ничего, но не для каждой задачи подойдёт, хотя, для того, чтобы научиться пользоваться фреймворками в принципе - вполне.

2015-02-28 в 12:27 

Astartsky
Ecce Porca
*yoru*, а в чем вы видите противоречие между ZF2 и вышесказанным? Я не большой фанат ZF2, но архитектурно он очень крепок.

Я сразу признаюсь, что не эксперт по Yii, но читал документацию по диагонали. Yii плоха тем, что там очень много компромиссов между «сделать проще» и «сделать правильно» решено целиком в пользу первого. Вот, например, первый попавшийся пример из официальной документации по генерации урлов (только что открыл):



Это косяк, т.к. статический вызов класса Url не позволяет использовать бенефиты ООП в лице полиморфизма. Если мой код сегодня использует реализацию генератора урлов Url, а завтра мне понадобится для всего проекта поменять его на какую-то специфичную реализацию (например, это будет сложный иерархеский урл, который нельзя получить заменой плейсхолдеров), то мне придется пройтись по всему проекту, по всем классам и внести адское количество правок. Я уж молчу про то, что любые статические вызовы это, по сути, необъявленная зависимость — что очень хреново сказывается на реиспользовании кода. Правильнее было использовать для генерации урлов экземпляр генератора урлов, например, так:



В этом случае достаточно один раз изменить объявление $generator и всё. Никаких правок в третьих классах.

Ну и там везде так :)

2015-02-28 в 12:52 

pferdchen ist tot
If I don't give a fuck, if I'm the king, if I'm the queen
Astartsky, принимается, спасибо за разъяснения :)

А к зенду у меня классовая ненависть после некоторого времени работы с клиентским сайтом на старой HostCMS. После этого "большеникада!" :alles:

2015-02-28 в 12:57 

.masa
Пропускай все через сердце
На джумле не сидела,но это всё же cms,и действительно хочется чего-то серьезного.
А кохана сейчас популярна?не устарела?просто во основном на слуху зенд,yii и симфони.
Между первыми тремя выбираю...

2015-02-28 в 12:58 

Astartsky
Ecce Porca
*yoru*, все эти MegaPuperCMS от разработчиков из Нижнего Тагила это дно, конечно. Но сомневаюсь, что там используется именно ZF2, скорее всего ZF1 — он уже давно морально устарел.

2015-02-28 в 13:03 

pferdchen ist tot
If I don't give a fuck, if I'm the king, if I'm the queen
Astartsky, хм, мб) Будь моя воля, я бы никогда с подобным не работала, но, к сожалению, у заказчиков очень странные представления об "удобном" и "прекрасном". И ваще непонятно, почему йобаный хост стоит такого бабла, хотя тот же модекс бесплатен и намного удобнее. Модекс далеко не идеальная cms, но большинство задач в ней довольно-таки удобно решаются приложением головы и прямых рук, в отличие от.

2015-02-28 в 13:03 

pferdchen ist tot
If I don't give a fuck, if I'm the king, if I'm the queen
Astartsky, хм, мб) Будь моя воля, я бы никогда с подобным не работала, но, к сожалению, у заказчиков очень странные представления об "удобном" и "прекрасном". И ваще непонятно, почему йобаный хост стоит такого бабла, хотя тот же модекс бесплатен и намного удобнее. Модекс далеко не идеальная cms, но большинство задач в ней довольно-таки удобно решаются приложением головы и прямых рук, в отличие от.

2015-02-28 в 13:10 

alhames
alhames.ru
.masa, Symfony, Yii, Laravel - это самые развитые на данный момент. Но в освоение они далеко не легкие, если, конечно, вы желаете понимать как все работает под капотом и почему именно так. А если требуется "просто забацать сайт" - то юзайте wordpress)

Для чего вам осваивать именно framework? И как у вас с английским?

2015-02-28 в 13:14 

alhames
alhames.ru
2015-02-28 в 13:24 

Astartsky
Ecce Porca
alhames, пугает, какими темпами набирает популярность Laravel

2015-02-28 в 13:32 

alhames
alhames.ru
Astartsky, я бы сказал уже набрал :)
А почему пугает - мб он действительно хорош?

2015-02-28 в 13:34 

pferdchen ist tot
If I don't give a fuck, if I'm the king, if I'm the queen
alhames, Astartsky, а с laravel что не так? :)

2015-02-28 в 13:53 

.masa
Пропускай все через сердце
alhames, смысл в том, чтобы обучить этому других и делать небольшие простые проекты.
мне кажется, после изучения php+mysql, это закономерный шаг.
Нужно простое, чтобы можно было и самой быстро разобраться и подготовить наглядные материалы для других)
поэтому просто юзать wordpress здесь мало)
у меня с английским неплохо, но желательно использовать какие-от русскоязычные пособия, а английские больше в дополнение.

2015-02-28 в 14:00 

Astartsky
Ecce Porca
alhames, *yoru*, да примерно то же самое :)

Есть там, например, жуткая практика использовать статический класс с зашитым внутрь DI-контейнером для использования какого-либо сервиса. Элегантный способ одновременно использовать DI и не получать от этого никаких плюсов вообще. В сильно упрощенном виде (у меня нет сейчас под рукой кода проекта, где это широко используется), как-то так: есть некий DI-контейнер, который знает, как запускать сервисы. Пусть будет $container. Есть сервис, например, база данных — $container['db']; А используется оно в коде через вызов \Db::do(). При вызове всё это работает через магические методы (прощай, type hinting) и дергает DI-контейнер как синглетон (sic).

2015-02-28 в 14:05 

alhames
alhames.ru
*yoru*, все так, наверное - я его особо не разбирал :)

.masa, для простых проектов, имхо, wordpress'а вполне достаточно. В нем можно за пару дней спокойно полностью разобраться.
Фреймворки не используются для простых проектов - они как раз таки призваны для того чтобы не делать тысячу раз одни и теже сложные вещи, когда оверхед от фреймворка становится не столь значителен по сравнению с логикой проекта.
Проще говоря - для промо-сайтов, блогов, новостных лент или страниц-презентаций лучше подойдет wordpress, а, к примеру, для магазина, с каталогом товаров, онлайн-оплатой и т.п. лучше использовать framework.

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

2015-02-28 в 14:23 

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

2015-02-28 в 14:31 

alhames
alhames.ru
.masa, открою вам маленький секрет - моя дипломная была приложением в вконтакте) Причем не рабочим, т.к. естественно я ничего не успел закончить - но фотошоп творит чудеса)
И вот я что понял - дело не в том что ты делаешь, дело в том КАК ты это делаешь. Можно сделать простенький интерфейс, к примеру, отправки почты, состоящий из 50-100 сточек кода, но рассказать о нем так, что ни у кого не останется сомнений в том что ты действительно разбираешься в той области, за которую взялся. :)

2015-02-28 в 14:33 

.masa
Пропускай все через сердце
alhames, я вас прекрасно понимаю,очень важно уметь представлять свою работу,но просто готовый проект на вордпрессе-это всё же то,что видно сразу в силу его структуры и априори уже не воспринимается как нечто серьезное для специалиста.

2015-02-28 в 14:40 

pferdchen ist tot
If I don't give a fuck, if I'm the king, if I'm the queen
.masa, если вы думаете, что с приложением на фреймворке пхп вас воспримут, как серьёзного специалиста...
Когда я выпускалась, у нас 90% людей в дипломе делали базу данных, из них половина, прстигспди, на MS SQL и ничего - с четвёрками повыпускались и забыли. Было даже немного обидно - у меня была игрушка на сях с плюсами и ещё у одной девушки полноценный красивый сайт на какой-то из только начинающих набирать обороты CMS (тогда в новинку всё это было) и мы тоже ушли с теми же четвёрками :facepalm:

2015-02-28 в 14:44 

alhames
alhames.ru
.masa, напишите свой движок) Это будет в несколько раз быстрее чем изучение фреймворка. Да и полноценное изучение фреймворка врятли возможно без попыток написать собственный)
Можно взять велосипед и рассказать как на нем ездить, а можно взять и сделать свой - пускай и корявый, но свой. Для защиты подойдут оба варианта. Но это скажется на дальнейшей работе - можно продолжать ездить на готовом велосипеде, но первая же нестандартная задача, аля "приделать багажник", все разрушит. Зато на своем велосипеде вы его с легкостью сможете прикрутить. Понимаете о чем я? :)

2015-02-28 в 14:45 

Astartsky
Ecce Porca
Большинство принимающих дипломы ничего не знают о фреймворках, вордпрессах и подобном. Им можно что угодно сдать :)

2015-02-28 в 15:25 

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

2015-02-28 в 16:03 

Скептичный циник
Миру - мир. А Вам - пломбир!
Вот это холивар (:
Сначала нужно изучить ООП (особенно включая DI) в каком-то совсем минимальном количестве, затем DBAL/DAO/ORM/MVC/AR/DA – чтобы понимать что под капотом у большинства популярных FW и зачем их вообще писать/использовать.
Тут выше предлагали зачем-то всякие CMS. ИМХО, для задач обучения (в том числе написанию кода) стоит накрепко забыть о том, что они вообще существуют. Диплом, наклёпанный за полчаса на каком-нибудь WP/Drupal/Joomla/usw поржут, примут и даже зачтут (судя по опыту моего бывшего универа), но знаний не даст.
Начинать стоит с FW поменьше. Они менее функциональны и, обычно, идут на компромиссы с труЪ-ООП, но не проламывают крышу студиозу миллионом строк кода чтобы посчитать дважды два (привет, ZF, Java-way и астронавты абстракций). Я бы посоветовал начинать с Yii1 (Yii2 не смотрел, не знаю), Kohana, Phalcon, CI.
Ещё, после понимания о том нафиг нужны FW и какие проблемы решают, дал бы задание написать свой велосипедный MVC-OOP-FW-блог с жёстким ограничением в четыре-пять часов работы максимум.

Комментирование для вас недоступно.
Для того, чтобы получить возможность комментировать, авторизуйтесь:
 
РегистрацияЗабыли пароль?

ru_programming

главная