Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: Фреймворки а надо? [4]
Покинул форум
Сообщений всего: 7187
Дата рег-ции: Февр. 2012
Помог: 353 раз(а)
простой сайт-визитку целесообразно на готовой CMS собрать за вечерок
----- Чем больше узнаю, тем больше я не знаю.
Zuldek
Отправлено: 21 Мая, 2013 - 15:13:49
Постоянный участник
Покинул форум
Сообщений всего: 2122
Дата рег-ции: Июнь 2010
Помог: 50 раз(а)
OrmaJever пишет:
Вот получение даты, и ради этого нужно инстализировать целый фреймворк? Однако
Во-первых инсталировать его как раз не обязательно.
Компоненты ZF можно использовать независимо.
Во-вторых ваше решение задействует получение страницы и её парсинг по регулярке, а указанный компонент работает через api-сервис гугла со всеми вытекающими.
Если, допустим, нужно извлечь, упаси бог, вашим методом первые 10 видео в рейтинге ютуба по определенному тегу?
Вы скажете - ну тогда я полезу читать api, а я скажу что я просто пропишу 1 инклуд получу массив данных со всеми нужными мне параметрами и пойду дальше писать проект.
Ну и в третьих, - это всего лишь пример, возможно не самый удачный, когда лучше использовать готовый отлаженный код (если бы были примеры с компонентами уровня авторизации и разграничения прав, который очень популярный и переносился на ту же кохану и Yii, то наш холивар бы затянулся ещё больше )
Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010 Откуда: Чернигов
Помог: 299 раз(а)
esterio пишет:
Да ну. Чтоб стащить у зенда компонент нужно столько связей перебрать, что проще целый фреймворк использовать.
вот вот вот, я об этом же! В большинстве случаев весь функционал фреймворка не нужен, а он тянется за всеми этими связями.
esterio пишет:
Не всегда. Также когда-то думал чем {var} отличается от <?= $var; ?>, но пообщавшысь с несколькома верстальщиками я понял что для них все же разница есть
помоему это и макаке можно обьяснить.
Вот это - <?=$username;?> имя пользователя
Вот это - <?=TITLE;?> титлы сайта
Код между этой конструкцией - <? while($n = $news->getNews(10)) : ?> и этой <? endwhile; ?> будет повторятся 10 раз, и в нём можно использовать такую <?=$n['name'];?> и такую <?=$n['fullnews'];?> конструкции. Первая это заголовок новости, вторая это её полное описание. Что тут сложного? Сделать верстальщику список таких конструкций и пусть он как зомби просто их копирует и вставляет там где это предусмотрено дизайном. (Добавление)
Zuldek пишет:
Во-вторых ваше решение задействует получение страницы и её парсинг по регулярке, а указанный компонент работает через api-сервис гугла со всеми вытекающими.
Внимание, вопрос: а разница? Или вы сомниваетесь что моя регулярка работает медленее вашего целого "компонента" ? Я очень поздравляю гугл что сделали прекрасный апи но вот это один из тех случаев когда оно нафик не надо! И даже если такое решение не устраивает и уж слишком хочется работать с апи то можно протитать по какому адресу какой запрос слать и сделать это в одну строчку, одним запросом к апи сервису ютуба.
Zuldek пишет:
Если, допустим, нужно извлечь, упаси бог, вашим методом первые 100 видео в рейтинге ютуба по определенному тегу?
Вы скажете - ну тогда я полезу читать api
увы, но я так не скажу Я просто открою главную ютуба (или где там последние 100 видео), возьму оттуда сылки на все 100 видео, запущу мульти курл, и у каждого видео возьму имено то что мне надо. Это мне обойдётся меньше 10 строк, и примерное в пол часа времени. И конечно же работать оно будет быстрее вашего компонента.
----- Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
DelphinPRO
Отправлено: 21 Мая, 2013 - 15:27:40
Активный участник
Покинул форум
Сообщений всего: 7187
Дата рег-ции: Февр. 2012
Помог: 353 раз(а)
OrmaJever пишет:
Сделать верстальщику список таких конструкций и пусть он как зомби просто их копирует
Строго говоря - не верстальщика это забота, натягивать верстку на движок. Его работа выдать чистый кроссбраузерный HTML код
----- Чем больше узнаю, тем больше я не знаю.
Zuldek
Отправлено: 21 Мая, 2013 - 15:28:34
Постоянный участник
Покинул форум
Сообщений всего: 2122
Дата рег-ции: Июнь 2010
Помог: 50 раз(а)
OrmaJever пишет:
esterio пишет:
Да ну. Чтоб стащить у зенда компонент нужно столько связей перебрать, что проще целый фреймворк использовать.
Да кто вам такое сказал? Не пишите никогда такую чушь, если не работали с ним. В компонентах zend внешние связи предусмотрены и присутствуют согласно архитектуре лишь для обеспечения их работы с другими компонентами ZF.
У вас был опыт использования Zend-компонента в проекте?
Цитата:
The component structure of Zend Framework is somewhat unique; each component is designed with few dependencies on other components. This loosely coupled architecture allows developers to use components individually. We often call this a "use-at-will" design
Цитата:
Я просто открою главную ютуба (или где там последние 100 видео), возьму оттуда сылки на все 100 видео, запущу мульти курл, и у каждого видео возьму имено то что мне надо. Это мне обойдётся меньше 10 строк,
За 100 одновременных (последовательных) запросов страниц видео, доступ к ютубу вам, скорее всего, вам будет временно закрыт.
Да ладно, бог с ними видеозаписями (не слушаете вы, что это плохой пример), местоположение и вывод 100 объектов на карте googlemap с выводом в меню на балуне информации об объектах. Опять курл и разбор ответа?
Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010 Откуда: Чернигов
Помог: 299 раз(а)
DelphinPRO пишет:
Строго говоря - не верстальщика это забота, натягивать верстку на движок. Его работа выдать чистый кроссбраузерный HTML код
я же не прошу ничего никуда натягивать ( ) ему всёравно вместо имени пользователя придётся что-то писать, ну вот пусть он вставит туда <?=$username;?>. Я же не прошу эти конструкции самому выдумывать, я ему дам список уже готовых таких конструкций для каждой страницы, он их просто встравит в нужном месте.
----- Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
armancho7777777
Отправлено: 21 Мая, 2013 - 15:50:32
Активный участник
Покинул форум
Сообщений всего: 4526
Дата рег-ции: Февр. 2011 Откуда: Москва
Мне вот тоже интересно.
Час вникаю, 15 минут пишу, потом прочитал коменты и опять закипаю: надо же отвечать!
Пока ответишь, посмотришь обратно в исходники и заново вникать
Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010 Откуда: Чернигов
Помог: 299 раз(а)
У меня сегодня выходной
----- Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
OrmaJever
Отправлено: 21 Мая, 2013 - 18:56:19
Активный участник
Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010 Откуда: Чернигов
Помог: 299 раз(а)
Дак а к чему мы пришли? Все кто просил меня я вам написал примерные куски кода в пару строк, а вы так и не показали как этот код будет выглядеть с использованием фреймворка? В чём плюс? Грузить кучу кода для тривиальных задач?
----- Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
caballero
Отправлено: 21 Мая, 2013 - 19:26:08
Активный участник
Покинул форум
Сообщений всего: 5998
Дата рег-ции: Сент. 2011 Откуда: Харьков
Помог: 126 раз(а)
Цитата:
Дак а к чему мы пришли?
с учетом что шли в разные стороны ни к чему.
Еще раз - дергать API, ходить к Бд и прочее - не задача фреймворков.
с этим вполне справятся и сторонние готовые библиотеки и любые другие законченые решения. В примере с ютубом можно просто выдернуть полезный код из зенда и не надо вообще никакого зенда ни целого ни по частям.
Покинул форум
Сообщений всего: 1365
Дата рег-ции: Июль 2010 Откуда: Украина, Запорожье
Помог: 62 раз(а)
caballero пишет:
Еще раз - дергать API, ходить к Бд и прочее - не задача фреймворков.
Вот тут и возникает исходный вопрос этого топика - а нахрен они вобще тогда нужны?.. Куда не плюнь, это не его задача...
Задача любого сервиса как раз и состоит в том, чтобы обработать запрос, сходить в БД, дергнуть API, отдать ответ...
з.ы. Извиняюсь, что вклинился, весь день сегодня переодически слежу за этим спором. Думал, не буду ничего писать, а нет, не сдержался...
----- Все возражают против того, что я гений, хотя никто еще так меня не назвал. - Орсон Уэллс
Ch_chov
Отправлено: 21 Мая, 2013 - 20:08:48
Постоянный участник
Покинул форум
Сообщений всего: 2121
Дата рег-ции: Июль 2008 Откуда: из города
Помог: 90 раз(а)
ИМХО, фрэймворк это не только набор библиотек, а впервую очередь каркас вашего приложения. Его основная задача увеличить производительность труда разработчика. Вы устанавливаете фреймворк и получаете 80% того, что написано у вас в ТЗ. Ну не красота ли? Потом немного погуглив скачиваете с гитхаба и др. дополнительные вендорные модули|бандлы|компоненты и получаете уже 95% запланированного функионала. И только после этого начинаете программировать оставшиеся 5%, разумеется используя API фреймворка.
При этом ваше приложение получается намного более качественным, потому что 95% вашего кода написали за вас опытные программисты. Которые, к тому же продолжают поддерживать этот код, выпускать обновления, документацию и т.д.
Цифры конечно условны. Они зависят от того, на сколько ваш фреймворк соответствует поставленной задаче.
Я думаю, для типовых бюджетных сайтов целесообразней использовать готовые CMS/CMF. Для всего остального есть фреймворки.
Если у вас будет большой опыт работы с каким либо фреймворком, вы сможете делать в разы больше и качественней.
OldBob
Отправлено: 21 Мая, 2013 - 20:22:10
Новичок
Покинул форум
Сообщений всего: 13
Дата рег-ции: Апр. 2013
Помог: 0 раз(а)
OrmaJever пишет:
Дак а к чему мы пришли?
Ну лично от меня Вам большое спасибо! Так как при Вашем активном участии в этой теме я вообщем-то утвердился с моим осознанием фреймворков.
Ну и на правах "неграмотного не программиста, троля, да и вообще, только сообщения могу писать и терять больше нечего". Ещё вопрос, а что с ресурсо-ёмкостью при использовании фреймворков?
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.