![]() |
Модераторы: Aliance, skyboy, MoLeX, ksnk Страницы: (16) Все « Первая ... 10 11 [12] 13 14 ... Последняя »
( Перейти к первому непрочитанному сообщению ) |
![]() ![]() ![]() |
|
Daevaorn |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2155 Регистрация: 29.11.2004 Где: Москва Репутация: 1 Всего: 70 |
||||
|
||||
Mal Hack |
|
|||
![]() Мудрый... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 9926 Регистрация: 15.2.2004 Репутация: 1 Всего: 261 |
С фреймворками не работал, к сожалению, либо очень мало и не на PHP...
|
|||
|
||||
Fally |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 265 Регистрация: 17.8.2006 Где: Dahla Репутация: нет Всего: 4 |
Daevaorn, кстати, меня всё интересует... все хвалят ORM... как я понял, то с его помощью можно и загружать данные из базы в объект. Если я правильно понял, то вопрос: Откуда гарантия что запрос к БД будет оптимальным с точки зрения производительности?
|
|||
|
||||
Daevaorn |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2155 Регистрация: 29.11.2004 Где: Москва Репутация: 1 Всего: 70 |
такой гарантии нет. все зависит от авторов ORM библиотеки. благо их щас развелось достаточно много и есть из чего выбрать. но всё равно в нетривиальной ситуации оптимальный запрос напишет только сам человек. поэтому иногда приходится ручками до SQL снисходить. обычно для этого тоже предусмотрены специальные инструменты, которые позволяют даже на основе "ручных" запросов создавать в итоге объекты. Зато ORM очень выручает, когда сложных запросов не много и нужно просто получить список неких объектов без сложных условий. ну и бесплатно получается некая структурность кода |
|||
|
||||
WIPS |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 199 Регистрация: 22.5.2006 Где: Украина, Киев Репутация: 1 Всего: 8 |
Согласен, забивать ни на что нельзя. Все потом боками вылезает. В одном случае этот механизм реализуется ручками, в другом автоматически, однако у нас по прежнему остается набор входных воздействий и реакций на эти воздействия. --------------------
Автопроизводители, машины, марки, модели! |
|||
|
||||
SamDark |
|
|||
![]() Добрый кот ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1424 Регистрация: 25.7.2006 Где: Voronezh Репутация: 1 Всего: 38 |
Mal Hack,
Я выше дал ссылку на propel. Наверное зря... штука пугающая. Лучше ORM посмотреть на ezpdo. Там всё проще и без заморочек... -------------------- rmcreative.ru — Это жжж неспроста... yiiframework.ru — О фреймворке Yii на русском. reggi — здесь я регистрирую домены |
|||
|
||||
Mal Hack |
|
|||
![]() Мудрый... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 9926 Регистрация: 15.2.2004 Репутация: 1 Всего: 261 |
||||
|
||||
SamDark |
|
|||
![]() Добрый кот ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1424 Регистрация: 25.7.2006 Где: Voronezh Репутация: 1 Всего: 38 |
Автомат тоже кто-то делал ручками. Что нам мешает один раз сделать и наслаждаться? -------------------- rmcreative.ru — Это жжж неспроста... yiiframework.ru — О фреймворке Yii на русском. reggi — здесь я регистрирую домены |
|||
|
||||
WIPS |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 199 Регистрация: 22.5.2006 Где: Украина, Киев Репутация: 1 Всего: 8 |
Ничего не мешает. Я с этим и не спорю, а наоборот придерживаюсь этого мнения. --------------------
Автопроизводители, машины, марки, модели! |
|||
|
||||
chief39 |
|
|||
![]() карманная тигра ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1631 Регистрация: 20.5.2005 Где: Киев Репутация: нет Всего: 77 |
"Чтобы понять рекурсию, надо понять рекурсию" ![]() -------------------- Люди - это свечи. Они либо горят, либо их - в жопу!(с) |
|||
|
||||
Diesel Draft |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 876 Регистрация: 18.1.2005 Где: Lviv, Ukraine Репутация: -1 Всего: 5 |
chief39,
+1 |
|||
|
||||
CyClon |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 838 Регистрация: 3.12.2005 Репутация: нет Всего: 4 |
Если писать CMS или что-то, что в дальнейшем будет очень часто модифицироваться, то естественно ООП. Если же нам нужно получить небольшой скрипт, который будет работать на большинстве платформ, причем быстро - тогда процедурное.
|
|||
|
||||
cccr85 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 43 Регистрация: 13.7.2010 Репутация: нет Всего: 2 |
Прочитал данную тему пока только до середины, и внесу свои 5 копеек.
Я программирую на php. Нигде не учился, все сам. И так, что мы имеем. Что такое класс? Нет это не class myClass {} а это КЛАСС каких либо повторяющихся вещей, предметов и т.д. Теперь что такое объект этого класса? Нет это не $Object = new myClass; А это один экземпляр класса. К чему я все это? А к тому что например у нас есть программа, которая работает например на компьютере пользователя, в этой программе есть например кнопочки, и практически все кнопочки похожи по своим характеристикам. Разнятся только действиями при клике на нее, надпись на кнопке. В итоге имеем один базовый класс кнопок, и классы которые расширяют базовый и говорят что делать при клике. Теперь для того чтобы создать сколько угодно кнопок, достаточно создать объект кнопки примерно так: $button = new myButton; // class myButton extends basicButton { $button->name = 'Моя кнопка'; // Текст на кнопке $window = new myWindow; $window->setButton($button); Все, кнопка отобразилась на окне, красота? Я думаю да. Понятно все? Да. ООП мне нравиться? Да. Ок. Разберем еще один пример, играем мы в стратегию, и там есть юниты, все они похожи, но кое в чем разнятся, ёмаё, да это еще один класс и его расширение. И таких примеров много!!! Но теперь вернемся к нашему php, я пока для себя нашел только один похожий на примеры выше код. Чуть предисловия: Класс базы данных. Раньше я делал так, создавал объект базы данных, в котором были методы конекта, отправки запроса, проверки данных, получения результата и т.д. На одном из форумов, или у кого то в библиотеки я подсмотрел идею что класс mysql должен только конектится, и делать запросы, а вот результат отдается в виде объекта, с которым я могу работать. Более того, при работе с результатом есть много общих действий для всего класса ответов на запросы, например освобождение памяти, получение размера, и т.д. Здесь ооп мне понравилось. Я понял его суть. В самом начале темы, говорили, что классы = набор функций заключенных в конструкцию class. Как я уже писал выше, класс это чуть другое. К сожалению других применений ООП в php я пока не вижу. В общем вот что я думаю. Добавлено через 4 минуты и 20 секунд
Позволю себе не согласиться, например все та же злосчастная кнопка является объектом!!! С ней удобно работать как с объектом. |
|||
|
||||
youri |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 740 Регистрация: 17.4.2004 Репутация: нет Всего: 16 |
отличить ООП-код от не-ООП на самом деле очень просто:
1. Берем исходники 2. Ищем полиморфизм ... PROFIT т.е. фактически сама задача определяет, будет ли использовано ООП. Нету юнитов - нету меда ;) по поводу событийности/визуальности... разделение, естественно, имеет место быть. Хорошо, а что важнее событийность или визуальность? Возьмем, например, java/c# в контексте веба. В php событийность - это запросы от сервера, только все объекты умирают от запроса к запросу. В java/c# это не так (насколько я знаю). Т.е. вроде как событийность есть, но нету визуальности... но в любом случае я не понимаю, почему это приводит к разделению на тру-ООП и нетру-ООП. Да, написание web- и десктопных приложений отличается. Но я бы сказал, что ООП - это в первую очередь подход к решению поставленной задачи. Да, это умирание объектов от запроса к запросу не вызывает к ним уважения. Но тем не менее, если ООП было удобно применить к некоторой задаче, значит она была решена с использование ООП по поводу ПОП... я думаю, что ООП - это продолжение ПОП, т.е. решение достаточно сложной задачи с помощью процедурного языка программирования в результате приведет к ООП-решению, несмотря на отсутствие в языке соответствующего синтаксиса |
|||
|
||||
SneG0K |
|
|||
![]() Max Mara ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1887 Регистрация: 1.12.2007 Где: Wis Dells Репутация: нет Всего: 54 |
ООП - это гламурно
![]() |
|||
|
||||
![]() ![]() ![]() |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | PHP: Избранное | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |