Цитата (Santehnick @ 22.12.2016 - 13:53) |
От фреймворка требуются контроллеры и контейнер зависимостей. Больше ничего. |
Аплодирую стоя! Я об этом постоянно и говорю. Только это по сути не фреймворк получается, каким его представляют в классическом виде. Это платформа для сборки библиотек. И по сути SOA. Это самое перспективное направление. А все эти ORM, QB, AR и иже с ними - отстой.
_____________
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.
redreem
22.12.2016 - 19:33
миграции между разными движками бд? это что, из учебников какого-то вуза списано? какие еще миграции, когда проект уже работает на "чем-то"? если уж возникает необходимость миграции, то тупо все запросы перебиваются в формат донора. всякие qb аля ормы и доктрины не дадут вам пространства для оптимизации запросов. с SQL надо работать на его языке а не вертеть прослойки.
McLotos
22.12.2016 - 19:39
Цитата (redreem @ 22.12.2016 - 21:33) |
миграции между разными движками бд? это что, из учебников какого-то вуза списано? какие еще миграции, когда проект уже работает на "чем-то"? если уж возникает необходимость миграции, то тупо все запросы перебиваются в формат донора. всякие qb аля ормы и доктрины не дадут вам пространства для оптимизации запросов. с SQL надо работать на его языке а не вертеть прослойки. |
ok. это твое мнение, спорить с тобой неблагодарное занятие, есть дела по-интереснее
_____________
программирование - инструмент для решения конкретных задач, любая попытка спроектировать что-то универсальное приведет к провалу.©paul85
В любом случае тебе прийдётся пройти путь изобретения велосипеда, который прошли другие, только причиной твоего изобретения будет непонимание принципов работы велосипеда изобретённого другими людьми.©SlavaFr
jQuery это попытка использовать АН-225 для перевозки зубочистки
redreem
22.12.2016 - 19:50
Цитата (McLotos @ 22.12.2016 - 20:39) |
Цитата (redreem @ 22.12.2016 - 21:33) | миграции между разными движками бд? это что, из учебников какого-то вуза списано? какие еще миграции, когда проект уже работает на "чем-то"? если уж возникает необходимость миграции, то тупо все запросы перебиваются в формат донора. всякие qb аля ормы и доктрины не дадут вам пространства для оптимизации запросов. с SQL надо работать на его языке а не вертеть прослойки. |
ok. это твое мнение, спорить с тобой неблагодарное занятие, есть дела по-интереснее
|
я владею SQL в совершенстве и не понимаю, зачем устраивать из простых запросов свистопляску со встякими классами и методами. сделал запрос, пульнул его в базу. все.
Цитата (redreem @ 22.12.2016 - 15:50) |
я владею SQL в совершенстве и не понимаю, зачем устраивать из простых запросов свистопляску со встякими классами и методами. сделал запрос, пульнул его в базу. все. |
Ну тут же объяснили. Когда строится монолитное ООП приложение, то там все и вся состоит из объектов. Нужно оперировать ими, а вовсе не голыми запросами. Потому это важно, представить запросы в виде объектов. Их можно мотылять туда-сюда, передавать зависимостями, модифицировать переопределяя методы и прочая. Собственно это инструмент, который позволяет писать тру-ООП. Каноничное. Которое ООП ради ООП.
_____________
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.
sergeiss
22.12.2016 - 20:31
Цитата (McLotos @ 22.12.2016 - 19:39) |
это твое мнение, спорить с тобой неблагодарное занятие, есть дела по-интереснее |
Это и моё мнение тоже.
Да и вон дядька Твин тоже сидит, полный сарказма по поводу QB
_____________
*
Хэлп по PHP*
Описалово по JavaScript *
Хэлп и СУБД для PostgreSQL*
Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги. *
"накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)
redreem
23.12.2016 - 00:01
Цитата |
Потому это важно, представить запросы в виде объектов. |
это имело бы право на лево, если бы архитектура бд разрабатывалась и модифицировалась одновременно с развитием и изменением архитектуры приложения в пыхе. иначе это скрещивание жирафа с носорогом.
Valick
23.12.2016 - 00:30
Цитата (redreem @ 22.12.2016 - 18:50) |
я владею SQL в совершенстве и не понимаю |
значит не в совершенстве раз не понимаешь))
На самом деле QB здорово помогает при сборке запроса "на лету", когда сложная логика условий которые влияют на конечный результат. QB должен выполнять "грязную работу".
_____________
Стимулятор ~yoomoney - 41001303250491
Цитата (Valick @ 22.12.2016 - 20:30) |
На самом деле QB здорово помогает при сборке запроса "на лету |
Это как сажать помидоры с помощью экскаватора. Не для этого он вовсе придуман. Вернее не только для того. Не так часто нужно их на лету собирать. Вообще QB в PHP используется "кусочками". Это модно, а для чего именно, каждый оправдывает сам. Одному удобно модифицировать запросы или на лету их собирать, другой параноится насчет смены БД, третьему миграции жизнено необходимы, и так далее. Но на всю катушку его не используют, ибо эт практически невозможно.
По сути эта хрень нужна для классического ООП, я писал уже. Для того, чтобы с данными работать как с объектами. А это, в свою очередь, нужно для ORM.
Бяда в том, как и многие беды монолитного ООП в PHP, это то, что его принципы используются, мягко скажем, не совсем верно. Допустим ORM хорош в десктопе, откуда и приперли, как обычно не разобравшись, модную идею. Там да, это прикольно. Не нужно каждый раз дергать СУБД для получения данных. Получил один раз, преобразовал в объект и пользуйся хоть трое суток.
В PHP такое не прокатит. Ибо этот объект умрет вместе с завершением сценария. И все равно каждый раз придется дергать базу.
Для того, чтобы понять всю бесполезность этой затеи, нужно понять бестолковость попыток сделать красивое монолитное ООП приложение на PHP. Это больно бъет по самим основополагающим его принципам. Допустим многоразовое использование кода.
Не зря Армстронг говорил:
Цитата |
Проблема объектно-ориентированных языков в том, что они тянут за собой всё, что с ними связано. Вы хотели банан, а получили обезьяну, его держащую, и еще все джунгли в придачу. |
Скрипт, написанный с помощью QB обязательно потребует для работы в другом месте этот самый QB. А так, как он у всех разный, делайте выводы. Но это полбеды. Дело в том, что теперь все скрипты эависят друг от друга. Вот
waldicom писал, что у него модульная система. Да какой же это модуль, если он
не может работать без других модулей, да еще и обязательной инфраструктуры в виде QB. Это самый настоящий монолит и есть.
Так что еще раз. QB, это инструмент, помогающий упростить написание монолитных ООП приложений. Не более того. Там да, от него великая польза.
В SOA архитектуре от него только вред.
_____________
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.
McLotos
23.12.2016 - 06:36
twin
злой ты! =)
В прочем как всегда. Сколько лет я тут уже тусуюсь, а ты не меняешься. Не обижайся, но может хотть иногда стоит смотреть немного дальше собственных убеждений?
Я вот попробовал. Я долгое время был против любых фреймворков и всего что с ними связано, мне казалось что изучение чистого языка намного лучше чем изучение какого-то фрейма написанного черт знает кем под хрен пойми какую ситуацию, но мы живем в таком мире, где ты либо знаешь как пользоваться всеми последними разработками либо ты никому не нужен. Я не говорю что фреймы это хорошо и что их использование обязательно, но вот понимание принципов их работы никому еще не навредило. Так и с QB, я пишу свой QB не потому-что их нет (на гитхабе их полно), а потому-что хочу понять как оно работает и написать QB оптимизированный под конкретный проект, без того функционала, который никогда не будет использоваться.
А так, помните у меня в подписи было высказывание "jQuery это попытка использовать АН-225 для транспортировки зубочистки". С PHP-фреймворками ситуация ровно такая же.
_____________
программирование - инструмент для решения конкретных задач, любая попытка спроектировать что-то универсальное приведет к провалу.©paul85
В любом случае тебе прийдётся пройти путь изобретения велосипеда, который прошли другие, только причиной твоего изобретения будет непонимание принципов работы велосипеда изобретённого другими людьми.©SlavaFr
jQuery это попытка использовать АН-225 для перевозки зубочистки
Цитата (McLotos @ 23.12.2016 - 02:36) |
Не обижайся, но может хотть иногда стоит смотреть немного дальше собственных убеждений? Я вот попробовал. |
Ты просто не дошел еще до полного понимания, это нормально, менять убеждения. Со временем ты и эти свои наверное поменяешь обратно.
Как то раз читал коммент чей то, очень мне понравился.
Цитата |
Программисты проходят три основных этапа развития. 1. Не пользуются доктриной, потому что не умеют. 2. Пользуются доктриной. 3. Не пользуются доктриной, потому что знают, как лучше без неё. |
Ты пока не умеешь еще. Потом будешь восторгаться. А потом,
может быть, перерастешь её. А может и нет. Не обязательно переходить на третий уровень. Люди всю жизнь сидят на втором и ничего плохого в этом не видят. Допустим
Oyeme крутейший специалист по монолитам. И ему нафиг не приперлось менять убеждения, ибо он мастер своего дела, а к тонкостям SOA еще привыкать нужно.
Так что изучай конечно, это очень полезно. Хотя бы для того, чтобы понять - надо оно тебе или нет. Я вот изучал, даже свою писал недавно. Правда до сего момента не понимал зачем оно надо. Теперь понял, что не надо.
А ты говоришь злой, не смотрю дальше убеждений. Смотрел - не понравилось.
_____________
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.
McLotos
23.12.2016 - 07:18
Так у тебя есть свой QB? =)
Как бы ты на нем написал те 5 запросов, которые в первоначальной теме были? =)
Мне понравился вариант реализации в Zend, просто методы типа "открыть скобочку" и "закрыть скобочку" =)
_____________
программирование - инструмент для решения конкретных задач, любая попытка спроектировать что-то универсальное приведет к провалу.©paul85
В любом случае тебе прийдётся пройти путь изобретения велосипеда, который прошли другие, только причиной твоего изобретения будет непонимание принципов работы велосипеда изобретённого другими людьми.©SlavaFr
jQuery это попытка использовать АН-225 для перевозки зубочистки
Цитата (McLotos @ 23.12.2016 - 03:18) |
Так у тебя есть свой QB? =) |
Не совсем, только начал. Я для фреймворка начал писать, не понимая для чего оно вообще. У всех есть и у меня должен быть) Как-нибудь соберусь доделать, пусть уж будет.
Цитата (McLotos @ 23.12.2016 - 03:18) |
Как бы ты на нем написал те 5 запросов, которые в первоначальной теме были? =) |
Чесно говоря не помню. И вспоминать лень. Я уже на чемодане сижу.
_____________
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.
McLotos
23.12.2016 - 07:28
Цитата (twin @ 23.12.2016 - 09:23) |
Я уже на чемодане сижу. |
Далеко собрался? =)
_____________
программирование - инструмент для решения конкретных задач, любая попытка спроектировать что-то универсальное приведет к провалу.©paul85
В любом случае тебе прийдётся пройти путь изобретения велосипеда, который прошли другие, только причиной твоего изобретения будет непонимание принципов работы велосипеда изобретённого другими людьми.©SlavaFr
jQuery это попытка использовать АН-225 для перевозки зубочистки
Во Вьетнам. Пузо греть.
А то у нас морозы начались.
_____________
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.
Быстрый ответ:
Powered by dgreen
Здесь расположена полная версия этой страницы.