куда катится мир? в частности Delphi а за ним и Лазарус

Общие вопросы программирования, алгоритмы и т.п.

Модератор: Модераторы

куда катится мир? в частности Delphi а за ним и Лазарус

Сообщение iN0k » 18.07.2012 14:20:23

меня интерисует (а точнее раздражает) "нововведения" языка delphi в pascal
1. зачем из "рекорда" делать "обжект"
2. зачем из "обжекта" делать "класс"
3. клас ... гм по ходу тут интерфейс спрятался :-)

Собственно вопросы:
1. может я чего не понимаю, и это даст офигенные преимущества? (желательно факты)
2. Лазарус ... пойдет на поводу и повторит данные "улучшения"?
iN0k
постоялец
 
Сообщения: 146
Зарегистрирован: 18.07.2012 14:09:50

Re: куда катится мир? в частности Delphi а за ним и Лазарус

Сообщение zub » 18.07.2012 14:58:57

А что там катится? последние версии не видел
1. к рекордам уже можно прикручивать виртуальные методы?
2. насколько помню обжект в делфи просто похоронили
3. не понял
zub
долгожитель
 
Сообщения: 2886
Зарегистрирован: 14.11.2005 23:51:26

Re: куда катится мир? в частности Delphi а за ним и Лазарус

Сообщение iN0k » 18.07.2012 15:11:17

1. судя по всему к этому и идет. а вопрос: ЗАЧЕМ там вообще там методы?
2. похоронили и давно ((( похоже из-за "визуальности". а вопрос: чем мешал?
3. это я возможно перегнул палку (нет дельфей и проверить негде), но было у меня подозрение что в обжекте контроль ссылок присутствует )))
iN0k
постоялец
 
Сообщения: 146
Зарегистрирован: 18.07.2012 14:09:50

Re: куда катится мир? в частности Delphi а за ним и Лазарус

Сообщение NTFS » 18.07.2012 17:06:56

Рекорды с методами - это очень удобно, когда нужно добавить к статичным данным немного логики, но не тянуть за собой VMT и прочее.
Не нравится - не пользуйтесь.
Остальное не понял :-)
NTFS
постоялец
 
Сообщения: 388
Зарегистрирован: 05.11.2007 14:57:50
Откуда: Краснодар

Re: куда катится мир? в частности Delphi а за ним и Лазарус

Сообщение FedeX » 18.07.2012 18:02:23

1. Есть запись и есть обьект - это совсем разные структуры данных, каждая удобная для своих целей
2. Есть object и есть class - см. п 1 - никто ничего не хоронил все можно использовать как и раньше кросто классы для большинства задач удобнее
3. Кто куда спрятался? Вы вообще принципы ООП изучали? Вы об этих интерфейсах:
http://ru.wikipedia.org/wiki/COM-%D0%B8 ... 0%B9%D1%81
или об этих:
http://ru.wikipedia.org/wiki/%D0%98%D0% ... 0%B8%D0%B5)

Паскаль ведь поддерживает и те и те. Только вам надо знать что вам нужно. А так да - любую программу можно и на процедурном языке без ООП написать
Аватара пользователя
FedeX
постоялец
 
Сообщения: 422
Зарегистрирован: 27.03.2006 09:25:34
Откуда: украина, житомир

Re: куда катится мир? в частности Delphi а за ним и Лазарус

Сообщение zub » 18.07.2012 21:51:51

>>2. Есть object и есть class - см. п 1 - никто ничего не хоронил все можно использовать как и раньше кросто классы для большинства задач удобнее
в delphi обжект с незапамятных времен deprecated, в d2007 с обжектом у меня были проблемы - указатель на вмт почемуто создавался компилятором независимо от наличия\отсутствия виртуальных методов.
zub
долгожитель
 
Сообщения: 2886
Зарегистрирован: 14.11.2005 23:51:26

Re: куда катится мир? в частности Delphi а за ним и Лазарус

Сообщение B4rr4cuda » 18.07.2012 23:34:48

Человек провалился к нам с 90х годов чтоль?
Аватара пользователя
B4rr4cuda
энтузиаст
 
Сообщения: 693
Зарегистрирован: 28.12.2007 07:48:35

Re: куда катится мир? в частности Delphi а за ним и Лазарус

Сообщение iN0k » 19.07.2012 10:05:53

NTFS писал(а):Рекорды с методами - это очень удобно, когда нужно добавить к статичным данным немного логики, но не тянуть за собой VMT и прочее.
Не нравится - не пользуйтесь.
Остальное не понял :-)

эээ но это "классический" Обжект ... (зачем было сначала деприкатить и убивать а потом востанавливать его функционал в другой структуре?)
не нравится и tObject НЕ пользуюсь ... но Delphi добавила методы в Рекорд, а завтра туда ВТМ воткнет :-)

FedeX писал(а):1. Есть запись и есть обьект - это совсем разные структуры данных, каждая удобная для своих целей

согласен с небольшим НО, была запись(record) бал объект(tObject) был класс(tClass) это совсем разные структуры данных, каждая удобная для своих целей

FedeX писал(а):2. Есть object и есть class - см. п 1 - никто ничего не хоронил все можно использовать как и раньше кросто классы для большинства задач удобнее

как показывает практика как раньше нельзя, для меньшентсва задачь (а их ведь тоже реализовывать нада) классы НЕПРИЕМЛЕМЫ
delphi стерли разницу tObject и tClass, сейчас "ломают" record

iN0k писал(а):3. клас ... гм по ходу тут интерфейс спрятался

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



но получается тенденция: Класс полготил Обжект, поглащает Рекорд ... потом (это я надеюсь просто фантазии) все станет классами привязанному к неким интерфейсам
и настанет пора войн со сборщиком мусора и т.д. и т.п.
iN0k
постоялец
 
Сообщения: 146
Зарегистрирован: 18.07.2012 14:09:50

Re: куда катится мир? в частности Delphi а за ним и Лазарус

Сообщение zub » 19.07.2012 11:02:04

ЕМНИП методы в рекордах совсем не те что в обжектах. В рекордах - хелперы и их можно прилепить как к своим рекордам, так и к чужим, описаным в чужих модулях.
Придумано для того чтоб не писать
Код: Выделить всё
МояПроцедура(ЧужойРекордОписаныйВЧужомЮните,аргументики);

а писать
Код: Выделить всё
ЧужойРекордОписаныйВЧужомЮните.МояПроцедура(аргументики);

С виду по ООПовски, но по сути - синтактическая обертка над обычной процедурой. ВМТ в рекорды не добавят.

ЗЫ. А наследовать рекорды в делфи уже можно?
По мне так из рекорд-обжект-класс оставить только чтото одно, добавив модификатор для создания только в куче, чтоб разделить поведение обжекта и класса
Последний раз редактировалось zub 19.07.2012 11:25:57, всего редактировалось 1 раз.
zub
долгожитель
 
Сообщения: 2886
Зарегистрирован: 14.11.2005 23:51:26

Re: куда катится мир? в частности Delphi а за ним и Лазарус

Сообщение iN0k » 19.07.2012 11:18:04

zub писал(а):ЕМНИП методы в рекордах совсем не те что в обжектах. В рекордах - хелперы и их можно прилепить как к своим рекордам, так и к чужим, описаным в чужих модулях.

хелперы ... наверно это отдельная тема для холивара :P

ВТМ в обжекты по Вашыим словам УЖЕ добавили. см Важ же пост
zub писал(а):в delphi обжект с незапамятных времен deprecated, в d2007 с обжектом у меня были проблемы - указатель на вмт почемуто создавался компилятором независимо от наличия\отсутствия виртуальных методов.


zub писал(а):А наследовать рекорды в делфи уже можно?

ну вот сделают рекорд классом ... и вперед )))
iN0k
постоялец
 
Сообщения: 146
Зарегистрирован: 18.07.2012 14:09:50

Re: куда катится мир? в частности Delphi а за ним и Лазарус

Сообщение zub » 19.07.2012 11:27:02

>>ВТМ в обжекты по Вашыим словам УЖЕ добавили. см Важ же пост
Поправил, конечно рекорд`ы имел ввиду
zub
долгожитель
 
Сообщения: 2886
Зарегистрирован: 14.11.2005 23:51:26

Re: куда катится мир? в частности Delphi а за ним и Лазарус

Сообщение iN0k » 19.07.2012 11:33:37

zub писал(а):>>ВТМ в обжекты по Вашыим словам УЖЕ добавили. см Важ же постПоправил, конечно рекорд`ы имел ввиду

откуда такая уверенность? tObject по идее это не tClass, но VTM у него есть ...
а завтра Delphi скажет ... программеры ДУРАКИ, поинтером пользоваться не умеют, уберем нафиг, и мусор за собой не выносят ... и придет сборщик мусора

Добавлено спустя 5 минут 19 секунд:
zub писал(а):По мне так из рекорд-обжект-класс оставить только чтото одно, добавив модификатор для создания только в куче, чтоб разделить поведение обжекта и класса

та почему так мелко :-) ... оставить класс и модификатор : это строка, это число(хотя зачем такие сложности когда есть Вариант :P ) и т.д.
iN0k
постоялец
 
Сообщения: 146
Зарегистрирован: 18.07.2012 14:09:50

Re: куда катится мир? в частности Delphi а за ним и Лазарус

Сообщение zub » 19.07.2012 11:46:38

tObject это какраз класс, просто так называется. Классы все автоматом от него наследуются. object может не от чего не наследоваться - всё в руках програмиста. VMT у object`а появляется с появлением виртуальных методов
zub
долгожитель
 
Сообщения: 2886
Зарегистрирован: 14.11.2005 23:51:26

Re: куда катится мир? в частности Delphi а за ним и Лазарус

Сообщение SSerge » 19.07.2012 12:22:37

ггг... самый главный кошмар эволюции все прозевали... :D И он отнюдь не в объектно-ориентированной прослойке.
Ибо в компиляторе и rtl FreePascal грянули строки unicode и маркированные кодовой страницей AnsiString

вот здесь есть об этом:
http://sirserge.altai.info/articles/?id=44
SSerge
энтузиаст
 
Сообщения: 971
Зарегистрирован: 12.01.2012 05:34:14
Откуда: Барнаул

Re: куда катится мир? в частности Delphi а за ним и Лазарус

Сообщение iN0k » 19.07.2012 12:25:09

)))
гм ... если все так замечательно ... и object <> tObject то зачем в рекодах методы? ведь для этого существуют object?

Добавлено спустя 14 минут 52 секунды:
SSerge писал(а):ггг... самый главный кошмар эволюции все прозевали... И он отнюдь не в объектно-ориентированной прослойке.Ибо в компиляторе и rtl FreePascal грянули строки unicode и маркированные кодовой страницей AnsiString

у меня создается такое чуство, что меня вообще за чела не считают ...
вывод напрашивается такой : программер ДУРАК, он не может разобраться с кодировкой строк внутри своего проекта ну и дальше по накатанной :-)
программеры ДУРАКИ, поинтером пользоваться не умеют, уберем нафиг, и мусор за собой не выносят ... и придет сборщик мусора
iN0k
постоялец
 
Сообщения: 146
Зарегистрирован: 18.07.2012 14:09:50

След.

Вернуться в Общее

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 21

Рейтинг@Mail.ru