Голосование

Драконы умеют летать, как птицы, и ползать, как ящерицы. С точки зрения ООП, примером чего является данная ситуация (выберите наиболее точный вариант)?

Наследование
Инкапсуляция
Множественное наследование
Полиморфизм
Композиция
правильных ответов нет или правильных ответов больше чем один.
Вопрос из теста. Интересно, как бы вы на него ответили.(Прочитано 50330 раз)
Предыдущий вариант голосования был неудовлетворительным, поэтому решил переформулировать? Прикольный подход.
Назовоем этот подход исследовательским. Данные предыдущего опроса сохранена, какие притензии?
правильных ответов нет или правильных ответов больше чем один
вообще, хотел из начально добавить эти варианты ответов, правда как 2 разных пунтка. но потом решил привести вопрос в оригинале.
Есть интерфейс например Runnable с одним методом run(), это что по твоему - запускалка или бегалка? Runnable наделяет класс новым поведением, а именно возможностью выполняться.
это абстрактная сущность. впринципе, да, запускалка.
что означание предложение "наделяет класс новым поведением" в контексте ООП, я не понимаю.

Вот ты сейчас именно это и делаешь: пытаешься отбросить все точки зрения кроме своей и не воспринимаешь конструктивную критику.
Ну если тебе от этого легче - пусть будет так.
в процессе обсуждения прозвучало как минимум 4 точки зрения:
-множественное наследование
-композиция
-инкапсуляция
-правильного ответа нет.

и на данный момент, я критично отношусь только к точки зрения, что на данный вопрос всего один правильный ответ.

вы же критично относитесь ко всем точкам зрения, кроме одной: единственно правильный ответ множественное наследование. и кто не воспринимает конструктивную критику?



А с автором опроса не пробовали связаться?
Per aspera ad astra.



1. Фраза в вопросе "выберите наиболее точный вариант" подразумевает один ответ. Так что твое утверждение "я критично отношусь только к точки зрения, что на данный вопрос всего один правильный ответ" звучит как минимум глупо.

2. На счет "наделяет класс новым поведением". Наследование может наделять новосозданную сущность новым поведением, которое собственно достается ему от сущности-предка. Почитай об ООП, это интересно.

3. Уже говорил, что некоторые восприняли наличие слов "птица" и "ящерица" как ключевые, хотя таковыми являются "летать" и "ползать". Из-за этого некоторые подумали, что так как дракон не является птицей, то наследование тут не подходит. Если мыслить чуть шире и принять во внимание слова "летать" и "ползать", то тут подходит множественное наследование, а ты его отметаешь.

4. Никто не говорит, что композицией нельзя это сделать. Прикольная штука иметь возможность менять вопросы и комментарии, не так ли? Вопрос сначала звучал по-одному (выбрать наиболее точный вариант), а теперь по-другому, потому что ты "проводишь исследования".
Так что все доводы всех участников дискуссии на трех страницах теперь искажены. Имел бы хоть уважение к людям...



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

1) Мы моделируем конструктор "Лего", из которого можно собирать разных зверей. Например, птиц, ящериц и драконов. Драконы умеют летать, как птицы, и ползать, как ящерицы. Для каждого моделируемого животного нужно написать свой класс. Какой принцип ООП следует использовать?

2) Мы разрабатываем компьютерную игру-шутер, используя библиотеку, с помощью которой написан Doom. Игроку необходимо уничтожить монстров-мутантов, в число которых входят птицы, ящерицы и драконы.  Драконы умеют летать, как птицы, и ползать, как ящерицы. Для каждого моделируемого монстра нужно написать свой класс. Какой принцип ООП следует использовать при моделировании монстров?

3) Мы моделируем эволюционное развитие животного мира Земли, чтобы оценить интенсивность мутаций. Нужно довести модель до определённого временного среза, на котором на планете существуют наземные пресмыкающиеся (ящерицы), летающие ящеры (драконы) и первые птицы. Драконы умеют летать, как птицы, и ползать, как ящерицы. Каждому виду должен соответствовать свой класс.  Какой принцип ООП следует использовать при моделировании видов?
greesha.ru

Реальность - это убийство прекрасной теории бандой мерзких фактов. (Роберт Гласс)



Очень хорошо, что вы пришли с этим вопросом на форум аналитиков. Давайте попробуем "додумать" контекст задачи.
+1. Единственное замечание. Ящер не ящерица по определению, ибо ящер не пресмыкающееся. При этом птица - это ящер. :)



Если забыть все, о чем учит зоология (в части систематизации видов - раздел так и называется - систематика), и буквально читать написанное задание - то по определению - множественное наследование.

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

У кого какие мысли???



мысль такая: а зачем усложнять?
Разве концепция ООП подразумевает усложнение описываемого?
Усложнять - это человеческий фактор. :)
Или это у Вас исследовательский интерес?
Per aspera ad astra.



А с автором опроса не пробовали связаться?
есть мнение, что javenue является автором, соавтором или другим лицом, непосредственно связанным с данным тестом. даже если это не так, то на сайте с тестом, есть ссылка на данный пост в коментариях.

Наследование может наделять новосозданную сущность новым поведением
я этого не понимаю. сущность или является другой сущностью или не является. и никто никого ничем не наделяет.

Если мыслить чуть шире и принять во внимание слова "летать" и "ползать", то тут подходит множественное наследование, а ты его отметаешь.
как из предложения:
и на данный момент, я критично отношусь только к точки зрения, что на данный вопрос всего один правильный ответ.
можно сделать вывод, что наследование я отметаю?

4. Никто не говорит, что композицией нельзя это сделать. Прикольная штука иметь возможность менять вопросы и комментарии, не так ли? Вопрос сначала звучал по-одному (выбрать наиболее точный вариант), а теперь по-другому, потому что ты "проводишь исследования".
Так что все доводы всех участников дискуссии на трех страницах теперь искажены. Имел бы хоть уважение к людям...
хронология событий записана. опять не понимаю, какие притензии?

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

2: greesha +1.

Разве концепция ООП подразумевает усложнение описываемого?
если учесть высказывание leinsoo:
Если забыть все, о чем учит зоология (в части систематизации видов - раздел так и называется - систематика), и буквально читать написанное задание - то по определению - множественное наследование.
то дракона придется наследовать от птицы и от ящерицы.
если я правильно понял.
« Последнее редактирование: 12 Сентября 2009, 01:44:16 от komarik »



...
то на сайте с тестом, есть ссылка на данный пост в коментариях.

Да, вижу ссылку на обсуждение. Спасибо.
Per aspera ad astra.



Очень хорошо, что вы пришли с этим вопросом на форум аналитиков. Давайте попробуем "додумать" контекст задачи.
интересно, правильно ли я мыслю на данные три задачи:
1) композиция (собираем из кусочков "Лего" целое)
2) полиморфизм (полиморфное поведение монстров-мутантов)
3) наследование (как описание иерархии видов)
« Последнее редактирование: 12 Сентября 2009, 12:55:43 от komarik »



вопрос построен на примере из известной книги по Java, рассказывающем о том, как "реализовать" множественное наследование без множественного наследования, отсюда вывод, что имелось в виду множественное наследование :)



2 komarik:
о проекте Quizful узнал только благодаря оставленной тобой ссылке. Проект понравился, так как идею community сервиса по онлайн тестированию встречаю впервые. И не буду отрицать, что в будущем может и составлю для них какой-то тест. Уже пару вопросов им добавил, правда не по ООП.

Если уже приводишь цитаты, то привод их полностью - "Наследование может наделять новосозданную сущность новым поведением, которое собственно достается ему от сущности-предка." Что тут не понятно?

>> интересно, правильно ли я мыслю на данные три задачи
После очередного редактирования комментария, уже правильно

Жду твоего одобрительного коммента на счет комментария Виктора.



вопрос построен на примере из известной книги по Java, рассказывающем о том, как "реализовать" множественное наследование без множественного наследования, отсюда вывод, что имелось в виду множественное наследование :)
Жду твоего одобрительного коммента на счет комментария Виктора.
извените, книжки по Java не читал, и всегда думал что ООП не привязано ни к какому языку.

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

тока я до сих пор не понимаю, почему единственно верный вариант - множественное наследование.

о проекте Quizful узнал только благодаря оставленной тобой ссылке.
извеняюсь, за поспешные выводы.
просто как-то, что в комментах на форуме, что тут, пытаетесь доказать, что наследование тоже подходит.
хотя и в комментах я с этим согласился уже раза два, и тут раза 4.

аргументов того, что правильный вариант всего один я не видел не там не тут. кроме одного - "глагол всегда поведение".
« Последнее редактирование: 12 Сентября 2009, 18:10:03 от komarik »



Я, конечно, не глубокий знаток ОО программирования, но мне кажется, что тут есть некоторое смешивание. Наследование интерфейсов безусловно есть. Однако класс не наследует интерфейсы, а реализует их. Таким образом некий интерфейс (ЛетатьПолзать) множественно наследует интерфейсы Летать и Ползать, а класс Дракон реализует интерфейс ЛетатьПолзать. Учитывая варианты ответа, скорее всего нужно выбрать множественное наследование :) Но наличие интерфейсов тут сбивает, потому и возникла такая дискуссия (на пустом вообщем месте)

Мне кажется, что если авторы теста предполагали проверить понимания множественного наследования, то можно было бы предложить более очевидный вопрос, типа:
Амфибия умеет ездить как автомобиль и плавать как катер (судно)



Эдуард, а чем предложенный пример отличается от оригинала?
Я просто, скоипровал оба варианта. Один под другой. Вроде то на то и выходит, нет?
Per aspera ad astra.




 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19