04.06.2011, 23:40
|
|
猫
|
|
Регистрация: 07.06.2007
Сообщений: 7,504
|
|
PDO внештатное?
кэширование не повышает производительность, снимая нагрузку?
__________________
Последний раз редактировалось Gozar, Сегодня в 24:14.
|
|
05.06.2011, 04:12
|
Кандидат Javascript-наук
|
|
Регистрация: 05.09.2010
Сообщений: 103
|
|
Зачем лепить ООП там, где можно запросто обойтись без него?
|
|
06.06.2011, 01:49
|
|
|
|
Регистрация: 27.12.2008
Сообщений: 4,201
|
|
Сообщение от Invis1ble
|
Какой аргументации? помоему, все очевидно - ненужный вызов лишней функции.
|
ах да, теперь очевидно, мы же экономим на всем что движется. А что не движется, заставляем двигаться и еще раз экономим. И какая кому разница, что все эти оптимизации на фоне ввода/вывода равны нулю...
Сообщение от Invis1ble
|
Я так понял, что ТС не использует никаких фреймворков, что же ему делать? Ради "удобства" (что спорно) составления запросов добавить к своему коду в 100500 раз больше мертвого кода, 99.99% которого он никогда не использует?
|
Что делать? По-моему, все очевидно - использовать Если же фреймворк окажется мертвым кодом, то тут дело в: 1) ДНК, 2) фреймворке, 3) задаче. Последний пункт случается редко, так что остается одно из двух
Сообщение от Invis1ble
|
Ну да, ну да. А раз мы пишем на php, значит можно написать "надстройку", а потом еще одну, ну и снизить производительность в итоге раз в 50. Зато "удобно" !
|
ну да, ну да. Абстрактные взятые с потолка цифры всегда производят впечатление на неокрепшие умы.
Сообщение от Invis1ble
|
я пишу о том, что можно обойтись штатными функциями вместо использования всяких модных фреймворков.
|
можно и от создания своих функций отказаться, но кому от этого легче будет? Или вообще создавать сайты на C в виде расширений для php
Сообщение от Invis1ble
|
Зачем лепить ООП там, где можно запросто обойтись без него?
|
мы обсуждаем сферическую задачу в вакууме и вы всерьез рассчитываете попасть пальцем куда-либо, кроме как в небо, с обобщениями типа "1. Не используйте ООП. 2. Если все же надо, см. пункт 1"?
|
|
06.06.2011, 01:59
|
Кандидат Javascript-наук
|
|
Регистрация: 05.09.2010
Сообщений: 103
|
|
Я никого не призываю не использовать ООП, а лишь спрашиваю, чем использование ОО-подхода выгодней в данной конкретной ситуации.
Возможно я предвзято отношусь к нему и изменю свою точку зрения, если вы укажите объективные доводы в пользу него.
Последний раз редактировалось Invis1ble, 06.06.2011 в 02:09.
|
|
06.06.2011, 10:53
|
|
|
|
Регистрация: 27.12.2008
Сообщений: 4,201
|
|
ситуация не очень конкретна. Если речь идет о том, чем лучше pdo по сравнению с mysql: 1) с ним нельзя наткнуться на проблемы перобразования в int или, кстати, sprintf("%d...), 2) поддержка исключений, 3) однообразный интерфейс для работы с разными БД - не надо для каждой БД учить ее собственный интерфейс, 4) может еще чего, транзакции, например, там есть. Насколько они важны, в каждом конкретном случае решается отдельно. Минусы PDO - немножко более сложный интерфейс. А разницу в производительности, я уверен, вы не заметите. К тому же, у mysql по сути тоже ООП-интерфейс, просто сделан он без использования "настоящих" объектов.
Если же речь идет и о других библиотеках, то у DbSimple мне, кстати, описание (зачем еще одна библиотека) понравилось, но сам не пользовался. Кроме того, есть всякие билдеры, которые упрощают поддержку кода.
|
|
06.06.2011, 18:47
|
Кандидат Javascript-наук
|
|
Регистрация: 05.09.2010
Сообщений: 103
|
|
Спасибо конечно за развернутый ответ, но я имел ввиду именно "Защиту от SQL инекций". Т.е. как я понял, ТС пишет код в процедурном стиле, какой смысл ему создавать отдельный объект и защищаться от инъекций с средствами PDO? Конечно, если бы у него все было в ОО-стиле, то да, смысл может и был бы (чисто ради соблюдения общего стиля кода).
|
|
07.06.2011, 07:00
|
|
|
|
Регистрация: 27.12.2008
Сообщений: 4,201
|
|
ты как-то все в кучу смешал. pdo в плане sql-инъекций просто решает часть вопросов за тебя. Т.е. это проще, потому что нужно меньше знать, и это проще, потому что часть служебной логики спрятана в pdo, следовательно легче просмотривать код. Но это была далеко не единственная цель pdo и pdo - не надстройка над расширением mysql, поэтому интерфейс получился сложнее, чем мог бы быть
А то что pdo построено на классах... какая разница? Mysql (расширение) тоже неявно построено на классах. И если язык позволяет использовать ООП, почему его не использовать? В моем понимании, ООП - это продолжение и синтаксический сахар для процедурного программирования. Т.е. не имея возможности использовать соответствующие синтаксические конструкции, ты все равно прийдешь к чему-то классоподобному. Другими словами, ООП способствует несколько другому, более удобному взгляду на программу. Наверное, как когда-то появление функций/процедур/подпрограмм поспособствовало. Хотя при этом оно может провоцировать возникновение ненужных слоев абстракции, или не всегда нужных. Но где ты видел палку об одном конце?
|
|
07.06.2011, 19:59
|
Кандидат Javascript-наук
|
|
Регистрация: 05.09.2010
Сообщений: 103
|
|
Сообщение от x-yuri
|
Т.е. это проще, потому что нужно меньше знать, и это проще, потому что часть служебной логики спрятана в pdo, следовательно легче просмотривать код.
|
Довольно спорное утверждение...
Ну да ладно, твою точку зрения понял, выводы сделал. Спасибо за разъяснения.
|
|
07.06.2011, 22:42
|
Аспирант
|
|
Регистрация: 29.01.2011
Сообщений: 58
|
|
вы не заметили что ответ на вопрос был дан ещё на первой странице и дальнейшее обсуждение автору тему не надо?
из мухи сделали слона
|
|
08.06.2011, 09:31
|
|
|
|
Регистрация: 27.12.2008
Сообщений: 4,201
|
|
Сообщение от Invis1ble
|
Т.е. это проще, потому что нужно меньше знать, и это проще, потому что часть служебной логики спрятана в pdo, следовательно легче просмотривать код.
|
Сообщение от Invis1ble
|
Довольно спорное утверждение...
|
Повторюсь, на всякий случай, идея в том, что когда ты прячешь реализацию с целью показать намерения, становится меньше деталей. Следовательно это проще воспринимать. И не надо знать реализацию. А в чем спорность?
Сообщение от evgh
|
вы не заметили что ответ на вопрос был дан ещё на первой странице и дальнейшее обсуждение автору тему не надо?
|
с чего ты взял, что автору оно не надо? Да и даже если автору не надо, может еще кому-нибудь пригодится
|
|
|
|