Как правильно изучать yii?
Как правильно изучать yii?
Привет всем yii'кодерам.
Прошу помощи в поиске ответа на указанный вопрос. Проблема в том, что тупо не могу начать работать на yii. Сразу скажу, что опыта работы с другими open source фреймворками нет. Хотя с ООП и MVC знаком + пользовался чужим самописным ООП MVC фреймворком. Все доки на этом сайте проштудировал, примеры поизучал, кое что поиском на этом форуме отыскал, ну и в блогах что то обнаружилось. Однако все как то разрозненно и не формирует общей картины об архитектуре фреймворка. Из доков, честно признаюсь, понял не все. Ну, думаю, разберусь по ходу дела, главное начать что то делать. Задумал некое простое приложение, создал БД, создал нужные MVC и застрял на этом. Понимаю, что yii на этом закончился, а далее уже пошла моя писанина.
Какое то время назад ознакомился с вводным видеоуроком по Kohana 3. Там с самого начала мне стала ясна ее архитектура и в голове сразу рождалась схема работы приложения. С yii такого не происходит. Не знаю почему: то ли документация сухая, то ли сам фреймворк очень гибкий, функциональный(сегодня узнал, что даже mixin используется) и как следствие более запутанный или еще что то.
Ух, что то много написал.
Прошу помочь определить некую методику вхождения в этот фреймворк, советы. Что делать? Как начать?
Спасибо.
Прошу помощи в поиске ответа на указанный вопрос. Проблема в том, что тупо не могу начать работать на yii. Сразу скажу, что опыта работы с другими open source фреймворками нет. Хотя с ООП и MVC знаком + пользовался чужим самописным ООП MVC фреймворком. Все доки на этом сайте проштудировал, примеры поизучал, кое что поиском на этом форуме отыскал, ну и в блогах что то обнаружилось. Однако все как то разрозненно и не формирует общей картины об архитектуре фреймворка. Из доков, честно признаюсь, понял не все. Ну, думаю, разберусь по ходу дела, главное начать что то делать. Задумал некое простое приложение, создал БД, создал нужные MVC и застрял на этом. Понимаю, что yii на этом закончился, а далее уже пошла моя писанина.
Какое то время назад ознакомился с вводным видеоуроком по Kohana 3. Там с самого начала мне стала ясна ее архитектура и в голове сразу рождалась схема работы приложения. С yii такого не происходит. Не знаю почему: то ли документация сухая, то ли сам фреймворк очень гибкий, функциональный(сегодня узнал, что даже mixin используется) и как следствие более запутанный или еще что то.
Ух, что то много написал.
Прошу помочь определить некую методику вхождения в этот фреймворк, советы. Что делать? Как начать?
Спасибо.
-
- Сообщения: 102
- Зарегистрирован: 2011.02.04, 12:47
Re: Как правильно изучать yii?
Не надо заморачиваться на методике. Решай СВОИ задачи - это самый быстрый путь освоить Yii. Сначала Yii будет тормозить тебя, но потом ты поймешь, что многое можно решить изящно.
Меня лично сильно застопорила возможность генерить КРУДы. В итоге, чтобы реально сделать что-то хотя бы наполовину Yii-way, я начал использовать Yii как раньше использовал CodeIgniter - создавал руками модели, контроллеры, методы и довольно быстро пришло понимание того, для чего все-таки нужен Yii и как он хорош.
Главный совет - убери все лишнее из контроллеров - валидацию, разграничение прав и делай сам. Второй совет - не юзай сложные виджеты типа CListView и ТЕМ БОЛЕЕ Cgridview, не пользуйся регистратором скриптов (ассет-менеджером) - тогда ты сам дойдешь до того, что тебе нужно и будешь это использовать.
И третий совет - постоянно читай апи по тем нативным Йии классам, которые ты наследуешь - так у тебя появится понимание того, как устроена система. Тут тех. английский поможет. Если не знаешь - азы выучи хотя бы.
Ну вот как-то так.
Удачи.
Меня лично сильно застопорила возможность генерить КРУДы. В итоге, чтобы реально сделать что-то хотя бы наполовину Yii-way, я начал использовать Yii как раньше использовал CodeIgniter - создавал руками модели, контроллеры, методы и довольно быстро пришло понимание того, для чего все-таки нужен Yii и как он хорош.
Главный совет - убери все лишнее из контроллеров - валидацию, разграничение прав и делай сам. Второй совет - не юзай сложные виджеты типа CListView и ТЕМ БОЛЕЕ Cgridview, не пользуйся регистратором скриптов (ассет-менеджером) - тогда ты сам дойдешь до того, что тебе нужно и будешь это использовать.
И третий совет - постоянно читай апи по тем нативным Йии классам, которые ты наследуешь - так у тебя появится понимание того, как устроена система. Тут тех. английский поможет. Если не знаешь - азы выучи хотя бы.
Ну вот как-то так.
Удачи.
Re: Как правильно изучать yii?
не ну сходу штудировать апи - это все равно, что после школы ворваться в учебник по матану. Вроде и круто, но не очень понятно Для начала стоит понять как работает фреймверк, только после этого апи станет незаменимым другом. А до этого апи выглядит как какой то монстр(скудное описание, мало примеров и т.п.)
Re: Как правильно изучать yii?
Я просто брал стандартный блог и пытался изменить его под свои нужды, по пути гугля возникающие проблемы
Re: Как правильно изучать yii?
До изучения Yii тоже не было опыта работы с фреймворками. Работал только со своей админкой и битриксом. И понятия не имел о MVC, AR и пр. Довольно кропотливо выбирал фреймворк (нужно было писать что-то на подобии WordPress MU, да еще и мультиязычный), и решил что Yii - лучший вариант.
Yii изучаю месяца 4, и скажу что освоил наверное менее 20% его возможностей. Штука настолько шикарная, что восхищаюсь каждый день.
Первым делом советую прочитать и постараться вникнуть в всю документацию, рецепты, и руководство по созданию блога. Ясень пень что без практики ты вряд ли все это усвоишь, но это даст тебе представление о возможностях. В противном случае ты будешь изобретать кучу велосипедов, даже не представляя что все уже написано, причем гораздо элегантней и удобней. При разработке советую читать API и форум, так как в Yii море возможностей, и документация многих моментов не освещает.
А дальше - делай свой проект, правильно говорят. Бояться не стоит. При чтении документации я тоже многое не понимал, но когда сталкивался на деле - оказывалось все просто. Самое главное - ввязаться в драку )))
CRUD - ом честно говоря никогда не пользовался, но генерировал модели, модули и контроллеры.ИМХО gii - очень удобная штука.
Вроде все.
Yii изучаю месяца 4, и скажу что освоил наверное менее 20% его возможностей. Штука настолько шикарная, что восхищаюсь каждый день.
Первым делом советую прочитать и постараться вникнуть в всю документацию, рецепты, и руководство по созданию блога. Ясень пень что без практики ты вряд ли все это усвоишь, но это даст тебе представление о возможностях. В противном случае ты будешь изобретать кучу велосипедов, даже не представляя что все уже написано, причем гораздо элегантней и удобней. При разработке советую читать API и форум, так как в Yii море возможностей, и документация многих моментов не освещает.
А дальше - делай свой проект, правильно говорят. Бояться не стоит. При чтении документации я тоже многое не понимал, но когда сталкивался на деле - оказывалось все просто. Самое главное - ввязаться в драку )))
ИМХО - это не правильно. Виджеты прекрасные, их фиксят и дополняют. Изначально я тоже не юзал их, так как время было в обрез и казалось быстрей написать свое чем освоить. Потом я понял что это была ошибка.Wade писал(а): не юзай сложные виджеты типа CListView
CRUD - ом честно говоря никогда не пользовался, но генерировал модели, модули и контроллеры.ИМХО gii - очень удобная штука.
Вроде все.
-
- Сообщения: 102
- Зарегистрирован: 2011.02.04, 12:47
Re: Как правильно изучать yii?
Если ты несильно отходишь от назначения Cgridview - великолепная штука. Просто в ней самой много опций и тонкостей - наверное это самый навороченный widget в yii. Поэтому СНАЧАЛА я и не рекомендую им пользоваться. Еще причина - то, что он юзает датапровайдеры или model->search(), а это само по себе сбивает с толку - дополнительный груз к освоению. Я - за простоту и постепенное усложнение.mitaichik писал(а): ИМХО - это не правильно. Виджеты прекрасные, их фиксят и дополняют. Изначально я тоже не юзал их, так как время было в обрез и казалось быстрей написать свое чем освоить. Потом я понял что это была ошибка.
Значит пользовался - потому что при генерации контроллера по умолчанию ему даются create, read, update и delete методы - это и есть CRUDmitaichik писал(а): CRUD - ом честно говоря никогда не пользовался, но генерировал модели, модули и контроллеры.ИМХО gii - очень удобная штука.
Re: Как правильно изучать yii?
Так и есть. Начни что то делать и изучай фичи фреймворка по мере необходимости. Заглядывай в demos и смотри как там это организовано, читай api и т.д.Ну, думаю, разберусь по ходу дела, главное начать что то делать.
Не даются ему по умолчанию эти действия.Wade писал(а):Значит пользовался - потому что при генерации контроллера по умолчанию ему даются create, read, update и delete методы
-
- Сообщения: 102
- Зарегистрирован: 2011.02.04, 12:47
Re: Как правильно изучать yii?
Разве? Я уже не помню - отказался я от КРУД и генератора моделей - он генерит лишнее, его методы потом слегка "мешаются" Но это по первости.crtz писал(а): Не даются ему по умолчанию эти действия.
Re: Как правильно изучать yii?
Можно просто наследовать модели, сгенерированные в Gii. Если получилось быстро разобраться -- пользуешься готовым. Нет -- добавляешь свои методы к дочернему классу в надежде, что в будущем станет понятнее, и эту лапшу перепишешь.