Модераторы: Aliance, skyboy, MoLeX, ksnk

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> объектное vs процедурное, программирование в PHP 
:(
    Опции темы
Mal Hack
Дата 6.8.2007, 15:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 1
Всего: 261



Цитата(SamDark @  6.8.2007,  14:54 Найти цитируемый пост)
Не нравится самому - используем фреймворки.

При чем тут фрэймворки...
Цитата(SamDark @  6.8.2007,  14:54 Найти цитируемый пост)
p.s. на object pascal тоже можно без vcl писать... 

Можно, но опять при чем тут это?
Ты же использует TObject тот же, если надо что-то визуальное сделать.

Цитата(vasac @  6.8.2007,  13:47 Найти цитируемый пост)
Оттого, что класс что либо дает, не значит, что это не может быть получено без использования класса. 

Переменная может быть без своего определения? нет. Другое дело, что она определяется самим языком, а не программистом.
PM ICQ   Вверх
Daevaorn
Дата 6.8.2007, 15:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2155
Регистрация: 29.11.2004
Где: Москва

Репутация: 1
Всего: 70



Цитата(Mal Hack @  6.8.2007,  16:30 Найти цитируемый пост)
Ты же использует TObject тот же, если надо что-то визуальное сделать.

Складывает впечатление, что для тебя программирование делится на визуальное и не визуальное. Однобоко однако.
PM MAIL WWW   Вверх
Mal Hack
Дата 6.8.2007, 16:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 1
Всего: 261



Цитата(Daevaorn @  6.8.2007,  15:48 Найти цитируемый пост)
Складывает впечатление, что для тебя программирование делится на визуальное и не визуальное. Однобоко однако. 

Далеко не только, тем не менее, такое структурирование - уместно ;)
PM ICQ   Вверх
egao
Дата 6.8.2007, 17:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 109
Регистрация: 6.8.2007

Репутация: нет
Всего: нет



TObject - это не более чем корневой объект фреймворка VCL, который существует не только для дельфей, но и для сей и для пхп.
искать по словам delphy for php - там и события и визуальный редактор и тп плюшки.
на уровне языка никаких событий нет. насколько мне известно на уровне языка события есть только в аспектно-ориентированных языках.

и не надо отделять Объектно Ориентированное Программирование от собственно программирования и оттаскивать его в сторону проектирования. для проектирования существует uml и иже с ним. для программирования важны объекты и их взаимосвязи. классы не в тему совершенно. классы позволяют дополнительно типизировать объекты. а нафига? концепция объектов - это концепция умных данных. то есть в идеале внешнему коду должно бы глубоко пох какой там у объекта тип - главное, чтобы он поддерживал необходимый интерфейс. отсюда вывод: классы - откровенно вредная сущность с которой нужно бороться.

и ещё, в пыхе класс фактически является объектом-синглетоном. банально потому, что он умеет хранить в себе данные, то есть ведёт себя как объект.



Это сообщение отредактировал(а) egao - 6.8.2007, 20:42
PM MAIL   Вверх
WIPS
Дата 6.8.2007, 23:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 199
Регистрация: 22.5.2006
Где: Украина, Киев

Репутация: 1
Всего: 8



Цитата(Mal Hack @  6.8.2007,  11:57 Найти цитируемый пост)
Не могу согласиться с тобой. Практика реализует теорию, и иначе быть не может. Да, при проектировании ты смотришь на предметную область, при реализаци уже на программные единицы - объекты, которыми оперируешь, но без первого второго не будет. В это и смылс, имхо, ООП как концепции, которая очень удачно совмещает теорию с практикой в результате чего получаем на практике те возможности, которые имеем.

Да, одно зависит от другого, но не всегда теория прямо проецируется в код. Просто в CBL отличия между моделью, описывающей логику и программной моделью невелики, а PBL они больше, вот и все.

Цитата(Mal Hack @  6.8.2007,  11:57 Найти цитируемый пост)
В консоли, фактически, ты используешь четко структурное программирование, в визуальном, где есть полная событийность, ты уже мыслишь по другому, в том плане, что при структурном ты НЕ можешь куда-либо перескочить, т.е. последовательность действий, отчасти - ограничена, а в визуальном, используя событийность ты в принципе не ограничен в выполнени действий. Т.е. ты видишь работу программы, как общую схему взаимодействия, а не как четкую последовательность действий.

Нет никаких отличий в событийности консольного приложения и визуального. Какая разница, вызывается обрабочик событий по клику мышкой или при нажатии комбинации клавиш?! Да и вобще события не обязательно порождаются пользователем, опять же сокеты, программные и аппаратные прерывания и пр. Извини, но твои аргументы в пользу разделения программ на визуальные и консольные меня совершенно не убедили.

Цитата(Mal Hack @  6.8.2007,  11:57 Найти цитируемый пост)
А разве это не так? Разве классы не дают именно этого?

Дают. Но, что если интерфейс объекта может меняться во время исполнения программы? Тут классы совершенно не годятся.

Цитата(egao @  6.8.2007,  16:19 Найти цитируемый пост)
и не надо отделять Объектно Ориентированное Программирование от собственно программирования и оттаскивать его в сторону проектирования. для проектирования существует uml и иже с ним. для программирования важны объекты и их взаимосвязи.

Согласен.

Цитата(egao @  6.8.2007,  16:19 Найти цитируемый пост)
отсюда вывод: классы - откровенно вредная сущность с которой нужно бороться.

Не согласен. Всякая вещь полезна если ею правильно пользоваться. И классы не исключение. Но и не панацея от всего.

Цитата(egao @  6.8.2007,  16:19 Найти цитируемый пост)
и ещё, в пыхе класс фактически является объектом-синглетоном. банально потому, что он умеет хранить в себе данные, то есть ведёт себя как объект.

Если ты про статические члены класса, то ты прав. Однако в данном случае это идет только на пользу. Кстати, как-то пытался использовать такую возможность в ObjectPascal и не нашел... мож ее там и нет?

--------------------
Автопроизводители, машины, марки, модели!
PM MAIL WWW ICQ Skype   Вверх
SamDark
Дата 7.8.2007, 11:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Добрый кот
***


Профиль
Группа: Участник
Сообщений: 1424
Регистрация: 25.7.2006
Где: Voronezh

Репутация: 1
Всего: 38



Mal Hack
TObject, как уже было сказано, не более чем корневой объект фреймворка VCL. Это не базовый объект языка.


--------------------
rmcreative.ru — Это жжж неспроста...
yiiframework.ru — О фреймворке Yii на русском.
reggi — здесь я регистрирую домены
PM MAIL WWW GTalk Jabber MSN   Вверх
WolfON
Дата 7.8.2007, 12:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 604
Регистрация: 19.7.2004

Репутация: нет
Всего: 8



SamDark
Не VCL единым.
Цитата

TObject — класс предок обсалютно всех классов в языке Delphi.


http://ru.wikipedia.org/wiki/TObject

http://www.delphisources.ru/pages/faq/faq_...Object.php.html


В большинстве языков с элементами ООП применен принцип базового класса - все остальне которые являются его наследником.
А в похапэ такого нет - да это особо и не нужно.

Это сообщение отредактировал(а) WolfON - 7.8.2007, 12:40
PM MAIL ICQ   Вверх
Mal Hack
Дата 7.8.2007, 13:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 1
Всего: 261



Цитата(WIPS @  6.8.2007,  23:12 Найти цитируемый пост)
Да, одно зависит от другого, но не всегда теория прямо проецируется в код.

Согласен, но согласись, в любом случае, практическая реализация в той или иной степени все равно основывается на теоретических понятиях. На них можно и забить, но вот работоспособность, точнее безопасность и оптимальность кода будут большим вопросом стоять.

Цитата(WIPS @  6.8.2007,  23:12 Найти цитируемый пост)
Нет никаких отличий в событийности консольного приложения и визуального. Какая разница, вызывается обрабочик событий по клику мышкой или при нажатии комбинации клавиш?! Да и вобще события не обязательно порождаются пользователем, опять же сокеты, программные и аппаратные прерывания и пр. Извини, но твои аргументы в пользу разделения программ на визуальные и консольные меня совершенно не убедили.

Ты не совсем меня понимаешь. Я имею ввиду не вызов события, так сказать, как сам факт его появления - клик мышкой по кнопке, а механизм передачи управления, в зависимости от события, определенному программному коду (методу, функции и т.д.).

Цитата(WIPS @  6.8.2007,  23:12 Найти цитируемый пост)
Дают. Но, что если интерфейс объекта может меняться во время исполнения программы? Тут классы совершенно не годятся.

Да, так, но если честно, не совсем могу себе представить задачу, где бы это было бы необходимо.

Цитата(SamDark @  7.8.2007,  11:03 Найти цитируемый пост)
TObject, как уже было сказано, не более чем корневой объект фреймворка VCL. Это не базовый объект языка. 

Это базовый класс для описания визуальных объектов в среде OP...
PM ICQ   Вверх
Daevaorn
Дата 7.8.2007, 14:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2155
Регистрация: 29.11.2004
Где: Москва

Репутация: 1
Всего: 70



Цитата(Mal Hack @  7.8.2007,  14:56 Найти цитируемый пост)
Да, так, но если честно, не совсем могу себе представить задачу, где бы это было бы необходимо.

ORM?
Цитата(Mal Hack @  7.8.2007,  14:56 Найти цитируемый пост)
Это базовый класс для описания визуальных объектов в среде OP... 

это базовый класс по умолчанию для любого user-defined класса.
PM MAIL WWW   Вверх
Mal Hack
Дата 7.8.2007, 14:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 1
Всего: 261



Цитата(Daevaorn @  7.8.2007,  14:09 Найти цитируемый пост)
ORM?

я имел ввиду изменение интерфейса объекта во время работы.

Цитата(Daevaorn @  7.8.2007,  14:09 Найти цитируемый пост)
это базовый класс по умолчанию для любого user-defined класса. 

Все поняли что это smile
PM ICQ   Вверх
Daevaorn
Дата 7.8.2007, 14:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2155
Регистрация: 29.11.2004
Где: Москва

Репутация: 1
Всего: 70



Цитата(Mal Hack @  7.8.2007,  15:16 Найти цитируемый пост)
я имел ввиду изменение интерфейса объекта во время работы.

ну так, интерфйес подстраивается под конкретную модель данных. причем имено во время выполнения, поскольку процесс "подстройки" автоматизирован, а не лежит на плечах программиста
PM MAIL WWW   Вверх
SamDark
Дата 7.8.2007, 14:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Добрый кот
***


Профиль
Группа: Участник
Сообщений: 1424
Регистрация: 25.7.2006
Где: Voronezh

Репутация: 1
Всего: 38



Daevaorn
Кстати, гадость ещё та т.к. тормознутая из-за дополнительных запросов...


--------------------
rmcreative.ru — Это жжж неспроста...
yiiframework.ru — О фреймворке Yii на русском.
reggi — здесь я регистрирую домены
PM MAIL WWW GTalk Jabber MSN   Вверх
Daevaorn
Дата 7.8.2007, 14:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2155
Регистрация: 29.11.2004
Где: Москва

Репутация: 1
Всего: 70



Цитата(SamDark @  7.8.2007,  15:30 Найти цитируемый пост)
Кстати, гадость ещё та т.к. тормознутая из-за дополнительных запросов... 

да есть такое. но вопрос решаемый, т.е. найти оптимальный вариант можно. а положительные стороны перевешивают эти недостатки.
PM MAIL WWW   Вверх
Mal Hack
Дата 7.8.2007, 15:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 1
Всего: 261



Цитата(Daevaorn @  7.8.2007,  14:20 Найти цитируемый пост)
ну так, интерфйес подстраивается под конкретную модель данных. причем имено во время выполнения, поскольку процесс "подстройки" автоматизирован, а не лежит на плечах программиста 

А на практике где применимо? Мне чисто из любопытсва интересно.
PM ICQ   Вверх
SamDark
Дата 7.8.2007, 15:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Добрый кот
***


Профиль
Группа: Участник
Сообщений: 1424
Регистрация: 25.7.2006
Где: Voronezh

Репутация: 1
Всего: 38



Mal Hack
На практике применяется обычно несколько другой вид ORM.

См. propel.


--------------------
rmcreative.ru — Это жжж неспроста...
yiiframework.ru — О фреймворке Yii на русском.
reggi — здесь я регистрирую домены
PM MAIL WWW GTalk Jabber MSN   Вверх
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Избранное | Следующая тема »


 




[ Время генерации скрипта: 0.1062 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.