Delphi vs C++ vs C#
, ну и Java немножко, где-то ближе к старшему байту номеров страниц
![]() |
Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
|
| ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
| [216.73.216.156] |
|
|
Правила раздела:
| Страницы: (495) « Первая ... 318 319 [320] 321 322 ... 494 495 ( Перейти к последнему сообщению ) |
Delphi vs C++ vs C#
, ну и Java немножко, где-то ближе к старшему байту номеров страниц
|
Сообщ.
#4786
,
|
|
|
|
Эвона как. Я не вижу связи. давай зайдем тогда с другой стороны, зачем нужна секция private ? Потому что он может конкретизировать, сразу нескольколько интерфейсов, если по смыслу подходит. Цитата Romkin @ Объект тоже обладает своим интерфейсом, по какой причине он должен дополнительно публиковать еще и методы своих интерфейсов? По той же причине, по которой они опубликованы в интерфейсе. Понятно. Т.е. жоско завязан на делфях. И о чем с тобой разговаривать? В С++ можно кастануть, в шарпе, незнаю, давай спросим. И что теперь делать будем? Я считаю, что в делфях при желании тоже можно кастануть. Добавлено Мде. К чему это все? У тебя есть машина(интерфейс), у тебя есть дока, как ей пользоватся, но ты ошибся, вытащил двигатель, и пытаешься на нем поехать, так? |
|
Сообщ.
#4787
,
|
|
|
|
Цитата scorpion @ Эвона как. Я не вижу связи. давай зайдем тогда с другой стороны, зачем нужна секция private ? Не надо заходить с другой стороны. Я просто не вижу обоснования публиковать методы, которые не нужно публиковать. Там где используется объект - они не понадобятся, а там где интерфейс - они уже опубликованы, интерфейс прописан в заголовке. |
|
Сообщ.
#4788
,
|
|
|
|
Цитата scorpion @ Понятно. Т.е. жоско завязан на делфях. И о чем с тобой разговаривать? А о чём мы там разговаривали? Цитата scorpion @ Я считаю, что в делфях при желании тоже можно кастануть. Нельзя |
|
Сообщ.
#4789
,
|
|
|
|
Цитата Romkin @ Не надо заходить с другой стороны. Я просто не вижу обоснования публиковать методы, которые не нужно публиковать. ^&*ля, внезапно: так они уже опубликованы в интерфейсе! Цитата DesweR @ А о чём мы там разговаривали? О том, что если у тебя нет реализации интерфейса IA, но, он есть в коде, то его полюбасу ктото когдато, попытаеца юзнуть! Цитата DesweR @ Нельзя ![]() Ок. Пусть будет нельзя. И что получится, если до разделения интерфейса IA, он повсюду используется? Ты, там помница говорил клиент не пострадает? И как он, получается в коде мертвым грузом(IA) будет висеть? Как вы программите? Потом друг друга проклинаете, какого $^%#$%я тут делает половина функциональности, которая не имеет реализации? Так чтоле ? |
|
Сообщ.
#4790
,
|
|
|
|
Цитата MyNameIsIgor @ Гммм... Не понял слегка. Диспетчеру должно быть известно о всей иерархии наследования? Нет. Ему должно быть только известно о наборе типов, между которыми он диспетчерезует. |
|
Сообщ.
#4791
,
|
|
|
|
Цитата DesweR @ В этом суть абстрактных классов (что, где и как), интерфейсы обязывают только реализацию. нет, суть абстрактных классов в предоставлении частичной реализации Добавлено Цитата Romkin @ Нормальный. Четкое разделение функций. Фактически интерфейсы используются для присоединения дополнительного функционала, и есть свободный выбор в способах реализации. И четко отделяются области использования основного функционала и этого дополнительного. ужас, обычно С++ свойственно использовать общепринятые понятия в каких-то своих смыслах, а тут и делфи неслабо отличилась |
|
Сообщ.
#4792
,
|
|
|
|
Цитата scorpion @ ^&*ля, внезапно: так они уже опубликованы в интерфейсе! Не внезапно, об этом я уже две страницы говорю: там, гле используют объект, его интерфейсы не понадобятся, там, где используют интерфейс - ничего не знают об объекте. Зачем мне делать второй путь использования функционала? |
|
Сообщ.
#4793
,
|
|
|
|
опять путаешь теплое с мягким |
|
Сообщ.
#4794
,
|
|
|
|
Цитата Flex Ferrum @ Нет. Ему должно быть только известно о наборе типов, между которыми он диспетчерезует. Всех типов? А как насчёт динамической регистрации/дерегистрации? |
|
Сообщ.
#4795
,
|
|
|
|
Цитата Romkin @ там, гле используют объект, его интерфейсы не понадобятся А где он может использоваться, если у него все методы закрытые? Цитата Romkin @ где используют интерфейс - ничего не знают об объекте. А в случае с открыми методами, значит знают? Цитата Romkin @ Зачем мне делать второй путь использования функционала? Зачем тебе вообще гдето использовать голый класс, если у тебя есть интерфейс? |
|
Сообщ.
#4796
,
|
|
|
|
Цитата korvin @ обычно С++ свойственно использовать общепринятые понятия в каких-то своих смыслах Например? Кроме функтора мне что-то сейчас ничего в голову не приходит. |
|
Сообщ.
#4797
,
|
|
|
|
Цитата scorpion @ А где он может использоваться, если у него все методы закрытые? И главное зачем использовать объект, который реализует интерфейс. Ведь есть интерфейс! |
|
Сообщ.
#4798
,
|
|
|
|
Я плохо читал вашу ветку обсуждения, может не так понял. Но, например, виртуальные методы я часто делаю не просто защищенными, но и закрытыми, оставляя в public невиртуальный интерфейс. Или вы о чем-то другом? |
|
Сообщ.
#4799
,
|
|
|
|
Цитата scorpion @ Цитата (Romkin @ Сегодня, 12:06) там, гле используют объект, его интерфейсы не понадобятся А где он может использоваться, если у него все методы закрытые? Цитата (Romkin @ Сегодня, 12:06) где используют интерфейс - ничего не знают об объекте. А в случае с открыми методами, значит знают? Цитата (Romkin @ Сегодня, 12:06) Зачем мне делать второй путь использования функционала? Зачем тебе вообще гдето использовать голый класс, если у тебя есть интерфейс? Это что, тот же вопрос в ответ на вопрос? 1. Я нигде не говорил, что все методы объекта закрытые 2. Открытые методы в объекте подразумевают их открытое использование, зачем тогда интерфейс? Для удовлетворения ограниченности языка? 3. Класс может обладать своим функционалом. А может и не обладать. Речь совершенно не о том. |
|
Сообщ.
#4800
,
|
|
|
|
Цитата D_KEY @ Например? Кроме функтора мне что-то сейчас ничего в голову не приходит. еще map вместо известной функции является ассоциативным массивом, было еще что-то, но сейчас не вспомню |