Вопрос обо всем
От: Hard_Club  
Дата: 11.08.11 07:29
Оценка:
Как бы вы ответили на собеседовании на вопрос: Что такое ООП?
Re: Вопрос обо всем
От: boot  
Дата: 11.08.11 07:35
Оценка:
Здравствуйте, Hard_Club, Вы писали:

H_C>Как бы вы ответили на собеседовании на вопрос: Что такое ООП?


Это совокупление (то бишь, соединение ) трех понятий: инкапсуляция, наследование, полиморфизм.
Жизнеспособность прямо пропорциональна простоте!
Re[2]: Вопрос обо всем
От: Hard_Club  
Дата: 11.08.11 07:56
Оценка:
Здравствуйте, boot, Вы писали:

B>Здравствуйте, Hard_Club, Вы писали:


H_C>>Как бы вы ответили на собеседовании на вопрос: Что такое ООП?


B>Это совокупление (то бишь, соединение :) ) трех понятий: инкапсуляция, наследование, полиморфизм.


Программирование — это совокупление??

Еще некоторые источники добавляют четвертую парадигму — виртуализация.
Re[3]: Вопрос обо всем
От: boot  
Дата: 11.08.11 08:00
Оценка:
Здравствуйте, Hard_Club, Вы писали:

H_C>Программирование — это совокупление??


Доходит и до этого, но тогда я называю это программизмом

H_C>Еще некоторые источники добавляют четвертую парадигму — виртуализация.


Может они и правы.
Жизнеспособность прямо пропорциональна простоте!
Re[4]: Вопрос обо всем
От: Hard_Club  
Дата: 11.08.11 08:11
Оценка:
Здравствуйте, boot, Вы писали:

B>Здравствуйте, Hard_Club, Вы писали:


H_C>>Программирование — это совокупление??


B>Доходит и до этого, но тогда я называю это программизмом :)


программизмом = программирование + дебилизм?

H_C>>Еще некоторые источники добавляют четвертую парадигму — виртуализация.


B>Может они и правы.


Тогда какое ее точное определение?
Re[5]: Вопрос обо всем
От: boot  
Дата: 11.08.11 10:30
Оценка:
Здравствуйте, Hard_Club, Вы писали:

H_C>Здравствуйте, boot, Вы писали:


B>>Здравствуйте, Hard_Club, Вы писали:


H_C>>>Программирование — это совокупление??


B>>Доходит и до этого, но тогда я называю это программизмом


H_C>программизмом = программирование + дебилизм?


У каждого свое понимание.

H_C>>>Еще некоторые источники добавляют четвертую парадигму — виртуализация.


B>>Может они и правы.


H_C>Тогда какое ее точное определение?


Вам ведь это определение не для составления словаря, а для собеседования. Вот и определитесь для себя. А по Вашему определению опеделят, попали Вы в струю или нет.
Определений много. Если у Вас получится составить одно и все согласятся с этим определением... у меня даже не нет определения для такого случая.
Жизнеспособность прямо пропорциональна простоте!
Re[6]: Вопрос обо всем
От: Hard_Club  
Дата: 11.08.11 11:26
Оценка:
B>Вам ведь это определение не для составления словаря, а для собеседования. Вот и определитесь для себя. А по Вашему определению опеделят, попали Вы в струю или нет.
B>Определений много. Если у Вас получится составить одно и все согласятся с этим определением... у меня даже не нет определения для такого случая.

Дело в том, что мое понимание виртуализации пересекается с понятием полиморфизма.
Re[7]: Вопрос обо всем
От: boot  
Дата: 11.08.11 12:19
Оценка:
Здравствуйте, Hard_Club, Вы писали:

H_C>Дело в том, что мое понимание виртуализации пересекается с понятием полиморфизма.


Мое тоже. Но их можно и разделить. Полиморфизм означает, что потомок может иметь отличное от родителя поведение, а виртуализация означает, что потомки могут иметь поведение одного из родителей.
Есть еще другое определение ООП -- объединение понятий объект и класс. Это опеделение можно назвать более точным, но, на мой взгляд, это только добавление промежуточного определения, как будто объект и класс можно рассматривать в программировании по отдельности, без всякого контекста.
Но если Вам нужна имменно точность, искать ее лучше в авторитетной книге, чтобы было на что сослаться.
Жизнеспособность прямо пропорциональна простоте!
Re[8]: Вопрос обо всем
От: Hard_Club  
Дата: 11.08.11 12:37
Оценка:
Здравствуйте, boot, Вы писали:

B>Здравствуйте, Hard_Club, Вы писали:


H_C>>Дело в том, что мое понимание виртуализации пересекается с понятием полиморфизма.


B>Мое тоже. Но их можно и разделить. Полиморфизм означает, что потомок может иметь отличное от родителя поведение, а виртуализация означает, что потомки могут иметь поведение одного из родителей.

B>Есть еще другое определение ООП -- объединение понятий объект и класс. Это опеделение можно назвать более точным, но, на мой взгляд, это только добавление промежуточного определения, как будто объект и класс можно рассматривать в программировании по отдельности, без всякого контекста.
B>Но если Вам нужна имменно точность, искать ее лучше в авторитетной книге, чтобы было на что сослаться.

Мне очень интересна Ваша идея. Только не могу логически прийти к тому, что возможность полного наследования поведения родителя следует называть именно виртуализацией.
йй
Re[9]: Вопрос обо всем
От: boot  
Дата: 11.08.11 13:50
Оценка:
Здравствуйте, Hard_Club, Вы писали:

H_C>Мне очень интересна Ваша идея. Только не могу логически прийти к тому, что возможность полного наследования поведения родителя следует называть именно виртуализацией.


Например, родитель "поток", имеет виртуальные методы "считать" и "записать". Но эти методы не определены в абстрактном "потоке" потому, что их реализация в потомках "сетевом потоке", "файловом потоке" и других будут различны, но, тем не менее, должны быть реализованы, хотя бы один из них, иначе это уже не будет "потоком". Получается, виртуализация -- это добавление виртуальных методов в родителя (или базовый класс). А виртуальный метод обязан быть реализован только в потомке. То есть, виртуализация -- вынужденность реализации виртуальных методов родителя в потомках. Наличие только виртуальных методов в базовом классе делает его абстрактным классом.
Жизнеспособность прямо пропорциональна простоте!
Re: Вопрос обо всем
От: Abyx Россия  
Дата: 11.08.11 17:57
Оценка:
Здравствуйте, Hard_Club, Вы писали:

H_C>Как бы вы ответили на собеседовании на вопрос: Что такое ООП?


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

— остальное это частные случаи реализации ООП.
In Zen We Trust
Re: Вопрос обо всем
От: Аноним  
Дата: 11.08.11 20:11
Оценка: 1 (1)
H_C>Как бы вы ответили на собеседовании на вопрос: Что такое ООП?

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

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

Может ли ООП обойтись без наследования? Да запросто!
Насколько необходим для ООП полиморфизм? Он не является необходимым — можно и без него разрабатывать объектно-ориентированные системы.
А как же инкапсуляция? Это, как и остальные "признаки" лишь приятный бонус. Наличие/отсутствие инкапсуляции совершенно не является индикатором ООП.
Re: Вопрос обо всем
От: nen777w  
Дата: 11.08.11 21:15
Оценка: :))) :)
H_C>Как бы вы ответили на собеседовании на вопрос: Что такое ООП?

Выбирай:

Объектно-ориентированное программирование
Объектно-ориентированное проектирование
Общество охраны природы
Особенность-ориентированное позиционирование
Орган опеки и попечительства
Организация освобождения Палестины
Организация Объединенных Планет
Охрана общественного порядка

 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.