александр76 17 Posted July 16, 2014 Report Share Posted July 16, 2014 Добрый вечер. Подскажите пожалуйста какие фреймворки сейчас (и в будущем) популярны. А также поделитесь пожалуйста понятными учебниками по этим фреймворкам. Заранее спасибо. Quote Link to post Share on other sites
zenn 266 Posted July 16, 2014 Report Share Posted July 16, 2014 Сейчас самыми популярными являются: Yii (особенно ожидаемый выход 2.0 версии с отакзом от различного шлака и кривого названия методов и классов в неймспейсах) Symfony (слова излишни, наиболее расширяемый бундлами) CodeIgniter (более простой чем выше 2 перечисленных) Все они обладают MVC архитектурой. На официальном сайте каждого уйма документации от а до я. александр76 1 Quote Link to post Share on other sites
James026 3 Posted July 16, 2014 Report Share Posted July 16, 2014 Laravel Quote Link to post Share on other sites
WQP 360 Posted July 16, 2014 Report Share Posted July 16, 2014 Из личного опыта понял, что во фреймворках много всего бесполезного. 80% все года просто не будет задействовано. А те 20% = времени за который вы более менее выучите php, так что лучше уж написать самому небольшую CMS. александр76 1 Quote Link to post Share on other sites
Модератор Воланд 5016 Posted July 16, 2014 Модератор Report Share Posted July 16, 2014 Не знаю насчет популярности, но есть еще Кохана kumatoz 1 Quote Link to post Share on other sites
because_ahaha 23 Posted July 16, 2014 Report Share Posted July 16, 2014 Из личного опыта понял, что во фреймворках много всего бесполезного. 80% все года просто не будет задействовано. А те 20% = времени за который вы более менее выучите php, так что лучше уж написать самому небольшую CMS. Начинать работать с фреймворком не зная "более менее" пхп - это я даже не представляю как это) Да, там есть возможности, которые не будут использованы, но если ваш сайт больше чем из 3 страниц и 2 модулей, и планируете расширять его возможности, то фреймворк - мастхэв. Он позволяет значительно сэкономить время. Думаю, уже мало кто представляет работу с интерактивным сайтом без жквери. Сам юзаю codeigniter - разобраться проще некуда. Есть хорошая документация на русском http://cidocs.ru/. Но как это обычно бывает, лучше пользоваться официальной александр76 1 Quote Link to post Share on other sites
VIP styoplotr 514 Posted July 16, 2014 VIP Report Share Posted July 16, 2014 Из личного опыта понял, что во фреймворках много всего бесполезного. 80% все года просто не будет задействовано. А те 20% = времени за который вы более менее выучите php, так что лучше уж написать самому небольшую CMS. Не соглашусь с вами, я использую YIi больше года, рутинной работы меньше процентов на 60, чем писать на собственных велосипедных MVC, не важно какой бы она крутой не была, плюс к этому безопасность, методы валидации, маршрутизация. У фреймворков миллионы бесплатных тестировщиков (все пользователи), а у вас он будет один, поэтому нельзя сравнить качество самописного каркаса с популярным фреймворком. Плюс Кэширование с помощью которого ваше приложение будет работать быстрее любой самописной CMS и если вы что-то в этом не используете, то это не значит что код замедляет работу вашего кода ( autoload придуман 10 лет назад). Ко всему добавим тысячи крутых бесплатных расширений на официальном сайте. http://www.yiiframework.com/extensions/ Из понятных учебников на Yii книга Макарова на русском http://ru.yiicookbook.org/ Активное русскоязычное сообщество http://yiiframework.ru/ Если ты новичок посоветую учить Codeigniter Изучить MVC для начала. Далее Yii или Laravel, Symfony и Zend оставьте бородатым дядькам Quote Link to post Share on other sites
Firestarter 7 Posted July 16, 2014 Report Share Posted July 16, 2014 Если ты новичок посоветую учить Codeigniter Изучить MVC для начала. Так же добавлю "для начала" Fuelphp и Laravel. Кстати, Laravel можна не только "для начала". Quote Link to post Share on other sites
zenn 266 Posted July 16, 2014 Report Share Posted July 16, 2014 Не соглашусь с вами, я использую YIi больше года, рутинной работы меньше процентов на 60, чем писать на собственных велосипедных MVC, не важно какой бы она крутой не была, плюс к этому безопасность, методы валидации, маршрутизация. У фреймворков миллионы бесплатных тестировщиков (все пользователи), а у вас он будет один, поэтому нельзя сравнить качество самописного каркаса с популярным фреймворком. Плюс Кэширование с помощью которого ваше приложение будет работать быстрее любой самописной CMS и если вы что-то в этом не используете, то это не значит что код замедляет работу вашего кода ( autoload придуман 10 лет назад). Ко всему добавим тысячи крутых бесплатных расширений на официальном сайте. http://www.yiiframework.com/extensions/ Из понятных учебников на Yii книга Макарова на русском http://ru.yiicookbook.org/ Активное русскоязычное сообщество http://yiiframework.ru/ Если ты новичок посоветую учить Codeigniter Изучить MVC для начала. Далее Yii или Laravel, Symfony и Zend оставьте бородатым дядькам Соглашусь по поводу качества кода и его тестирования и готового api, однако не соглашусь с предположением о том, что работать приложение на фреймворке будет быстрей любой самописной cms - это достаточно спорный вопрос. Autoload не решает вопроса на корню - да, по запросу он подгрузит необходимые пространства имен с классами, но что мешает сделать аналогичное в cms? Проблема то занимаемого объема памяти при линковании классов это уже второй вопрос... Quote Link to post Share on other sites
VIP styoplotr 514 Posted July 17, 2014 VIP Report Share Posted July 17, 2014 Проблема то занимаемого объема памяти при линковании классов это уже второй вопрос... Да Фреймворки используют много памяти, но зачем этого бояться? Быстрее работу фреймворка делает кэшинг, а не autoload, конечно он помогает только при render - е, при работе сайтов, а для API скажем которое не генерирует никаких view это да будет, самописка будет работать быстрее, но это к CMS никак не относится и писать это добро вообще на PHP не нужно ИМХО, везде где нет render-a перешли на node.js. Quote Link to post Share on other sites
Firestarter 7 Posted July 17, 2014 Report Share Posted July 17, 2014 везде где нет render-a перешли на node.js. Что значит "где нет render-a"? Если его нет, то возможно и не нужен веб фреймворк, а достаточно компилируемых языков. Если есть сайт, сервис, все что угодно, что должно отдаваться в браузер, тем или иным образом будет отрендерино в браузере. Да Фреймворки используют много памяти, но зачем этого бояться? Совсем не обязательно. В зависимости от реализации. Реализация простой гостевой на Друпале или ВП будет намного больше кушать памяти, чем идентична на кодеигнитере, например. Quote Link to post Share on other sites
zenn 266 Posted July 17, 2014 Report Share Posted July 17, 2014 Да Фреймворки используют много памяти, но зачем этого бояться? Быстрее работу фреймворка делает кэшинг, а не autoload, конечно он помогает только при render - е, при работе сайтов, а для API скажем которое не генерирует никаких view это да будет, самописка будет работать быстрее, но это к CMS никак не относится и писать это добро вообще на PHP не нужно ИМХО, везде где нет render-a перешли на node.js. Ну ... нода это уже совсем иной разговор. Насчет кэширования - спорно. Возьмите для интереса symfony с встроенным твигом и чистый твиг - как думаете, существенной ли будет разница? Что значит "где нет render-a"? Если его нет, то возможно и не нужен веб фреймворк, а достаточно компилируемых языков. Если есть сайт, сервис, все что угодно, что должно отдаваться в браузер, тем или иным образом будет отрендерина в браузере. Возможно под рендерингом автор понимал динамическое формирование каркаса html, а не преобразование оного в графический объект ... Если нет динамического преобразования каркаса, вам не то что фреймворк не нужен, вам чистого html хватит Quote Link to post Share on other sites
VIP styoplotr 514 Posted July 17, 2014 VIP Report Share Posted July 17, 2014 Что значит "где нет render-a"? Если его нет, то возможно и не нужен веб фреймворк, а достаточно компилируемых языков. Если есть сайт, сервис, все что угодно, что должно отдаваться в браузер, тем или иным образом будет отрендерина в браузере. У вас кругозор веб-приложений заканчивается браузером, это думаю каждому понятно если что-то отдается в браузер значит и рендериться будет. Вы занимались разработкой бэкенда для мобильных приложений ? Вот будете вы на плюсах его писать? Quote Link to post Share on other sites
VIP styoplotr 514 Posted July 17, 2014 VIP Report Share Posted July 17, 2014 Ну ... нода это уже совсем иной разговор. Насчет кэширования - спорно. Возьмите для интереса symfony с встроенным твигом и чистый твиг - как думаете, существенной ли будет разница? Да здесь никакая скорость не является существенной Проблема то занимаемого объема памяти при линковании классов Не вот это, не скорость загрузки классов, это все сотые доли секунд, На скорость работы действительно влияют сервер , использование CDN, кэшинг mysql. Мир уже давно ценит время разработчика дороже чем эти миллисекунды, а его нам помогают сохранять ( избавляя от рутинной работы ) фреймворки, а никак не самописные, велосипедные каркасы. ТС совет изучайте фреймворки. Quote Link to post Share on other sites
Firestarter 7 Posted July 17, 2014 Report Share Posted July 17, 2014 У вас кругозор веб-приложений заканчивается браузером, это думаю каждому понятно если что-то отдается в браузер значит и рендериться будет. Вы занимались разработкой бэкенда для мобильных приложений ? Вот будете вы на плюсах его писать? Ну ведь формируя ответ от сервера вы все равно что-то отдаете json, xml. Это ведь теже заголовки и боди. Это разве не рендер. Если под Бекендом вы подразумевали стенелоне приложение, тут понятное дело. И то формы и т.д все равно отрисовываются. Quote Link to post Share on other sites
zenn 266 Posted July 17, 2014 Report Share Posted July 17, 2014 Да здесь никакая скорость не является существенной Опять же, не совсем согласен. Как пример - при использовании symfony загрузка определенной страницы у меня составляла ~0,2 секунды, а при использовании twig и своего велосипеда с квадратными колесами - 0,07сек (разница чуть более 100%) - а загрузка страницы юзером при использовании CDN - ~0,8сек. В итоге выходит экономия в ~20% времени. Разве это не существенно? Quote Link to post Share on other sites
VIP styoplotr 514 Posted July 17, 2014 VIP Report Share Posted July 17, 2014 Ну ведь формируя ответ от сервера вы все равно что-то отдаете json, xml. Это ведь теже заголовки и боди. Это разве не рендер. Если под Бекендом вы подразумевали стенелоне приложение, тут понятное дело. И то формы и т.д все равно отрисовываются. Никакие формы не отрисовываются, вы не поняли о чем я. Ну к примеру смотрите. Приложение на Андроиде отправляет мне запрос типа, -- дай мне всех друзей данного пользователя Я проверю accessToken if allright отдаю ему массив json со списком его друзей. Здесь кэш не играет никакого значения ( ну не о mysql кэшинге идет речь). Здесь render не требует больших ресурсов, ну никаких почти ресурсов он не требует. А если я формирую страницу с графиками и картинками WISIWYG в придачу, тут вот и выходит на арену кэш .Скорость загрузки, экономия трафика, вот что делает кэш. А здесь рендер занимает много ресурсов, а ресурсы в 21 веке экономить надо. Firestarter 1 Quote Link to post Share on other sites
Firestarter 7 Posted July 17, 2014 Report Share Posted July 17, 2014 Я проверю accessToken if allright отдаю ему массив json со списком его друзей. Здесь кэш не играет никакого значения ( ну не о mysql кэшинге идет речь). Здесь render не требует больших ресурсов, ну никаких почти ресурсов он не требует. А, так тут понятно дело, что кэш не играет никакого значения. Согласен на 100%. Снимаю шляпу. styoplotr 1 Quote Link to post Share on other sites
kumatoz 63 Posted July 17, 2014 Report Share Posted July 17, 2014 Не знаю насчет популярности, но есть еще Кохана голосую за Кохана. Довольно простой и в тоже время не монструозный фреймворк. Quote Link to post Share on other sites
VIP styoplotr 514 Posted July 17, 2014 VIP Report Share Posted July 17, 2014 Опять же, не совсем согласен. Как пример - при использовании symfony загрузка определенной страницы у меня составляла ~0,2 секунды, а при использовании twig и своего велосипеда с квадратными колесами - 0,07сек (разница чуть более 100%) - а загрузка страницы юзером при использовании CDN - ~0,8сек. В итоге выходит экономия в ~20% времени. Разве это не существенно? Ваш тест не объективен, сравнивать нужно работу всего приложения, может у вас просто так вышло, просто может вы запросы к базе разные написали, может быть все что угодно. Я symfony не юзал, говорят что чем дольше работает приложение на нем, тем оно быстрее. Насчет Yii могу добавить что у него самый быстрый старт из всех популярных фреймворков Quote Link to post Share on other sites
kumatoz 63 Posted July 17, 2014 Report Share Posted July 17, 2014 Мир уже давно ценит время разработчика дороже чем эти миллисекунды И это уже достаточно давно так. Железо стоит дешевле работы программиста. styoplotr 1 Quote Link to post Share on other sites
kumatoz 63 Posted July 17, 2014 Report Share Posted July 17, 2014 Насчет Yii могу добавить что у него самый быстрый старт из всех популярных фреймворков Это откуда, интересно, такая информация? Кохана ничем не "медленнее" Quote Link to post Share on other sites
VIP styoplotr 514 Posted July 17, 2014 VIP Report Share Posted July 17, 2014 http://www.yiiframework.com/performance/ Здесь kohana нет, но есть CI являющимся предком KOHANA фреймворка Quote Link to post Share on other sites
zenn 266 Posted July 17, 2014 Report Share Posted July 17, 2014 Ваш тест не объективен, сравнивать нужно работу всего приложения, может у вас просто так вышло, просто может вы запросы к базе разные написали, может быть все что угодно. Я symfony не юзал, говорят что чем дольше работает приложение на нем, тем оно быстрее. Насчет Yii могу добавить что у него самый быстрый старт из всех популярных фреймворков Это вовсе не тест, а субъективные данные по определенной странице с одинаковым функционалом. Предположение о том, что чем дольше работает приложение тем оно быстрее - на корню ошибочно, ведь количество данных будет только увеличиваться, что противоречит простой логике (объем -> скорость обработки). Быстрей будет работать только после создания первой кешированной версии, но не более. Quote Link to post Share on other sites
VIP styoplotr 514 Posted July 17, 2014 VIP Report Share Posted July 17, 2014 Предположение о том, что чем дольше работает приложение тем оно быстрее - на корню ошибочно, ведь количество данных будет только увеличиваться, что противоречит простой логике (объем -> скорость обработки). Быстрей будет работать только после создания первой кешированной версии, но не более. Я читал про многоуровневый кэшинг в этом фреймворке, это я имел ввиду. не могу с вами спорить, не работал с symfony, ну насчет количества данных вы надеюсь пошутили Как знаток фреймворка посоветуйте хорошее пособие по симфони, книги, видеоуроки, просто уроки, где и как учить, думаю ТС в выборе фреймворка эта информация пригодиться. александр76 1 Quote Link to post Share on other sites
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.