Автор Тема: Почему наследование не может быть основой ОС?  (Прочитано 53526 раз)

Freeman

  • Newbie
  • *
  • Сообщений: 15
  • Завлаб
    • Просмотр профиля
    • Лаборатория Единой среды
Увидел тему на OberonCore про нас. За рекламу большое спасибо. :)

А теперь вопрос: почему наследование не может быть одним из основополагающих принципов ОС?

valexey_u

  • Hero Member
  • *****
  • Сообщений: 3013
    • Просмотр профиля
Re: Почему наследование не может быть основой ОС?
« Ответ #1 : Январь 26, 2013, 09:02:33 am »
А теперь вопрос: почему наследование не может быть одним из основополагающих принципов ОС?
Отвечу, как и полагается, вопросом на вопрос: а какое именно наследование подразумевается? Наследование чего? Интерфейсов? Классов? Объектов (да, бывает и такое)?
Y = λf.(λx.f (x x)) (λx.f (x x))

igor

  • Sr. Member
  • ****
  • Сообщений: 438
    • Просмотр профиля
Re: Почему наследование не может быть основой ОС?
« Ответ #2 : Январь 26, 2013, 01:50:49 pm »
Увидел тему на OberonCore про нас. За рекламу большое спасибо. :)
Сейчас они вас там порвут как тузик грелку  :). У них там исповедуется цензура на творчество:
http://forum.oberoncore.ru/viewtopic.php?f=26&t=3885
Недавно перечитывал тему по ссылке. До обсуждения Джулии, правда, там дело не дошло, зато тема прекрасно раскрыла "кто есть who".

Вот, кстати, уже началось: http://forum.oberoncore.ru/viewtopic.php?f=28&t=4231#p77540

ilovb

  • Hero Member
  • *****
  • Сообщений: 2538
  • just another nazi test
    • Просмотр профиля
    • Oberon systems
Re: Почему наследование не может быть основой ОС?
« Ответ #3 : Январь 26, 2013, 02:01:08 pm »
От типичной реакции оберкора тошнит уже  >:(

DddIzer

  • Гость
Re: Почему наследование не может быть основой ОС?
« Ответ #4 : Январь 26, 2013, 02:14:05 pm »
От типичной реакции оберкора тошнит уже  >:(
Так то оно так, но в данном случае Freeman - использует известные термины в таких сочетаниях (по факту не разьясняя их ) что терзают меня смутные сомнения...- вообщем не вижу смысла обсуждать незрелые мысли, автор коих не готов их разьяснять и отстаивать публично... - ощущение такое.. что сунули носом в помойку.. дескать ройтесь на здоровье...

ilovb

  • Hero Member
  • *****
  • Сообщений: 2538
  • just another nazi test
    • Просмотр профиля
    • Oberon systems
Re: Почему наследование не может быть основой ОС?
« Ответ #5 : Январь 26, 2013, 02:48:48 pm »
Так то оно так...  :)
Но можно было хоть вопросы задать человеку прежде чем вываливать известную реакцию.

Илья кричит:
Цитировать
Всё, занавес
Цитировать
...финиш
http://forum.oberoncore.ru/viewtopic.php?f=28&t=4231#p77525

А цитата то безобидная:
Цитировать
Объектно-ориентированная ОС позволяет создавать программы наследованием.
если учесть контекст:
Цитировать
А что у нас с наследованием? В ООП наследование — возможность взять почти пригодный класс и расширить его функциональность до нужной, решив таким образом задачу. Можно ли в классических ОС создавать программы наследованием? Взять, например, «Блокнот», расширить его и получить WordPad, а потом расширить WordPad и получить Word?
Т.е. человек просто имел в виду подход ББ к расширению моделей.

DddIzer

  • Гость
Re: Почему наследование не может быть основой ОС?
« Ответ #6 : Январь 26, 2013, 03:12:43 pm »

Т.е. человек просто имел в виду подход ББ к расширению моделей.
беда в том , что эти выводы делает ВЫ а не он, а что он имел ввиду он САМ НЕ ЗНАЕТ.. а реакция.. - нормальному человеку она - урок.. назвался ГРУЗДЕМ - ПОЛЕЗАЙ В КУЗОВ. То есть если это не бред... то в следующий раз , можно будет надеется, что Фримен представит свои идеи в более презентабельном виде, и будет готов пояснить их и отвечать за них..

Valery Solovey

  • Hero Member
  • *****
  • Сообщений: 509
    • Просмотр профиля
Re: Почему наследование не может быть основой ОС?
« Ответ #7 : Январь 26, 2013, 03:14:00 pm »
Наследование к расширению моделей имеет крайне косвенное отношение.

ilovb

  • Hero Member
  • *****
  • Сообщений: 2538
  • just another nazi test
    • Просмотр профиля
    • Oberon systems
Re: Почему наследование не может быть основой ОС?
« Ответ #8 : Январь 26, 2013, 03:16:57 pm »
2 DIzer
OK, подождем комментариев гордона фримена  :)

ilovb

  • Hero Member
  • *****
  • Сообщений: 2538
  • just another nazi test
    • Просмотр профиля
    • Oberon systems
Re: Почему наследование не может быть основой ОС?
« Ответ #9 : Январь 26, 2013, 03:17:48 pm »
Наследование к расширению моделей имеет крайне косвенное отношение.
Можно подробнее?

Valery Solovey

  • Hero Member
  • *****
  • Сообщений: 509
    • Просмотр профиля
Re: Почему наследование не может быть основой ОС?
« Ответ #10 : Январь 26, 2013, 03:51:15 pm »
Возьмём в качестве частного случая модель адиабадического процесса. (Не знаю почему, но это первое, что пришло в голову...).

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

Затем, мы расширяем систему: теперь у нас модель воздействия работы на термодинамическую систему. Например, робот-пума, жмякающая поршень. То есть, работу мы теперь задаём не напряммую, а через промежуточное звено. Поэтому, в нашу расширенную модель мы заносим начальные данные исходной модели, начальные данные устройства, выполняющего работу. Теперь, например, изменение координаты по оси z сопровождается изменением работы (линейно или нет) и получением выходных данных по нашему процессу.

И где здесь было про наследование?

P.S. Физику благополучно забыл, поэтому не особо приглядывайтесь к примеру. Ведь здесь всё равно существенным моментом было совсем другое.

ilovb

  • Hero Member
  • *****
  • Сообщений: 2538
  • just another nazi test
    • Просмотр профиля
    • Oberon systems
Re: Почему наследование не может быть основой ОС?
« Ответ #11 : Январь 26, 2013, 04:02:25 pm »
Не понял к чему вы вообще приплели физику, когда разговор идет о программировании.
Я говорил о модели данных...

Valery Solovey

  • Hero Member
  • *****
  • Сообщений: 509
    • Просмотр профиля
Re: Почему наследование не может быть основой ОС?
« Ответ #12 : Январь 26, 2013, 04:15:31 pm »
Каких таких данных? Сферичных? Программирование - преимущественно прикладная область деятельности. И то, что я привёл, - и есть модель данных из прикладной области.

Valery Solovey

  • Hero Member
  • *****
  • Сообщений: 509
    • Просмотр профиля
Re: Почему наследование не может быть основой ОС?
« Ответ #13 : Январь 26, 2013, 04:16:28 pm »
Можно подумать над другими примерами. Это был просто первый пришедший в голову.

vlad

  • Hero Member
  • *****
  • Сообщений: 1391
    • Просмотр профиля
Re: Почему наследование не может быть основой ОС?
« Ответ #14 : Январь 26, 2013, 04:19:00 pm »
А теперь вопрос: почему наследование не может быть одним из основополагающих принципов ОС?

Вообще я когда почитал ваши тезисы про наследование в ОС - тоже отнесся к ним крайне скептически. Но так как до конца идею не понял (про наследованию программ), то и критиковать было нечего :)

В моей практике (С++) классическое наследование реализации работает крайне плохо. Работает хорошо в исключительных случаях (но работает, поэтому я ни разу не предлагаю избавляться от него в ОО ЯП). Намного чаще приходится наоборот раздраконивать "красивые" иерархи в старом коде и делать так, чтоб работало :) Причем на анализ всего этого (перед тем как переписать) уходит масса времени. А переписывание обычно заключается в банальной декомпозиции по процедурам (даже не компонентам).