Re[12]: Широкое использование COM
От: vdimas Россия  
Дата: 07.11.04 00:29
Оценка:
Здравствуйте, AndrewVK, Вы писали:

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

С т.з. зрения наследника — это уже не компонент а класс, иначе никак.
Компонент — это "черный" ящик с парой интерфейсов.

AVK>А компонент это и есть модуль с ОО-интерфейсом доступа, чтобы там не говорили некоторые товарищи. Главная фишка компонента — динамическое связывание, все остальное это особенности конкретных реализаций.


Дудки.
Главная фишка компонента — инкапсуляция сложности внутри себя и обеспечение двоичной совместимости со средой, где работает, и интерфейсами, как своими, так и других компонентов.

Ты все время говоришь о классах, ИМХО.

В Яве ввели бины, и тоже назвали их компонентами. Смешные ребята, право.

В MS они оставили компоненты только как ср-во для визуального накидывания. С т.з. именно среды разработки, упомянутые классы — настоящие компоненты. Студия не собирается их наследовать, но должна с ними единообразно работать, что и делает, через эти пару интерфесов.

Т.е. компоненная сторона этих компонентов используется только в момент работы со студией, и никогда в рантайме (за исключением аналогичных студии задач).
Re[8]: Широкое использование COM
От: vdimas Россия  
Дата: 07.11.04 00:29
Оценка:
Здравствуйте, AndrewVK, Вы писали:

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


K>>Ты же классы напрямую юзаешь, а не через интерфейсы.


AVK>С чего ты взял что связывание при этом статическое?


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

Действительно, голый компонентный подход порождает кучу геммора и дополнительных приседаний.
Подход Явы и дотнета — смешанный, и потому успешный.
Re[10]: Широкое использование COM
От: vdimas Россия  
Дата: 07.11.04 00:33
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>По-моему, огромное монолитное ядро — это признак плохого дизайна. Если продукт пишется одним человеком или группой из 3-5 человек, то может это и нормально. А Линукс — это просто флаг кривого дизайна.


нет там никакого дизайна.
есть posix API, различные части которого сами по себе плохо связаны.

API не объектное, функциональное, и что с того?
для 70-х, очень даже ничего.
Re[14]: Широкое использование COM
От: Павел Кузнецов  
Дата: 07.11.04 02:17
Оценка:
AndrewVK,

> Тут вопрос терминологии — монолитность в плане модульности действительно суровый недостаток, поэтому в современном линуксе кое что уже подгружаемое.


ОК, в такой постановке, применительно к Линуксу, возражений нет.

> Ну а изоляция ядра это действительно религиозный вопрос, только к КОП она имеет отдаленное отношение.


Согласен.

> ПК> даже с учетом этих поправок полагать такую архитектуру бесспорным недостатком дизайна операционной системы, имхо, тоже неверно.


> Не знаю. По мне так современная ОС без модульности просто немыслима.


Даже встроенная в часы/микроволновку/истребитель? А применительно к прикладной программе, о которой, собственно, и шла речь изначально? Снова-таки, это относится ко всем мыслимым прикладным программам, или только к некоторым?
Posted via RSDN NNTP Server 1.9 gamma
Легче одурачить людей, чем убедить их в том, что они одурачены. — Марк Твен
Re[16]: Широкое использование COM
От: Павел Кузнецов  
Дата: 07.11.04 02:23
Оценка: +2
VladD2,

> ЗХ> Но местами это правда выглядит так, что — сказать нечего, поэтому вместо следующего шага в дискуссии начинаем посылать (например: Влад: — Приведи доказательства; ПК: — Погугли по терминам таким-то; Влад: — Пошел нафик, тебе надо — ты и гугли.)


> Есть такая штука — презумпция невиновности.


Которая сюда совершенно никакого отношения не имеет. Тут ситуация совершенно обратная. Тебя ни в чем не обвиняют, просто утверждают, что в дискуссии никакие утверждения изначально верными не считаются. Соответственно, если ты выдвинул какой-либо аргумент, с верностью которого твой оппонент не согласен, и этот аргумент ты не обосновываешь, то этот аргумент в дискуссии просто не учитывается.
Posted via RSDN NNTP Server 1.9 gamma
Легче одурачить людей, чем убедить их в том, что они одурачены. — Марк Твен
Re[14]: Широкое использование COM
От: Павел Кузнецов  
Дата: 07.11.04 02:27
Оценка: +1 -1
VladD2:

> То есть высказывание своего мнения — это флэйм?


Если соблюдаются остальные условия, обозначенные выше, — да.

> ОК, тогда я ужасный флэймогон, так как буду делать это и дальше. И доказывать буду только то что посчитаю нужным. Андестынд?


Дык, последние сомнения уже давно рассеялись.
Posted via RSDN NNTP Server 1.9 gamma
Легче одурачить людей, чем убедить их в том, что они одурачены. — Марк Твен
Re[5]: Широкое использование COM
От: vdimas Россия  
Дата: 07.11.04 03:07
Оценка:
Здравствуйте, Kluev, Вы писали:

K>P.S.S: И где кстати ты видел у МС проги написанные в таком стиле? У них либо монолит, либо помйка с ОЛЕ. Которая ни себе ни людям. Наружу торчат какие-то полулевые наполовину реализованные интерфейсы возвращающие E_NOTIMPL, а для себя юзаются закрытые.




весь выньапи — p-Impl чистой воды, хендлы — это указатели на сокрытые структуры-имплементаторы.
ранее они это на сях писали, теперь на С++, посмотри на заголовки GdiPlus, они есть у тебя. Там тоже p-Impl,


//---------------------------------------------------------------------------
// GDI+ classes for forward reference
//---------------------------------------------------------------------------

class Graphics;
class Pen;

...

//---------------------------------------------------------------------------
// Private GDI+ classes for internal type checking
//---------------------------------------------------------------------------
class GpGraphics {};
class GpBrush {};
class GpTexture : public GpBrush {};

...


//--------------------------------------------------------------------------
// Pen class
//--------------------------------------------------------------------------

class Pen : public GdiplusBase
{
public:
    friend class GraphicsPath;
    friend class Graphics;

    Pen(IN const Color& color, 
        IN REAL width = 1.0f)
    {
        Unit unit = UnitWorld;
        nativePen = NULL;
        lastResult = DllExports::GdipCreatePen1(color.GetValue(),
                                    width, unit, &nativePen);
    }

...

protected:
   GpPen* nativePen;         // здравствуй пимпл :)
    mutable Status lastResult;
};



Да, за MFC им надо руки оторвать. Вернее не за MFC (для конца 80-х это было нормально), а за агрессивное его продвижение в начале 90-х. До сих пор многие де-факто на нем пишут (и я тоже частенько), ибо очень много наработок и в мире, да и просто у разработчиков осталось для этой т.н. "технологии".

Более поздние их "велосипеды" не так уж плохи: WTL, GdiPlus,
а по поводу дотнета даже куча ярых приверженцев на RSDN
Re[18]: Широкое использование COM
От: vdimas Россия  
Дата: 07.11.04 03:20
Оценка: +1
Здравствуйте, AndrewVK, Вы писали:

AVK>Мудрые мужи при наличии более надежных и удобных решений используют их, а не продолжают жрать кактус.


Слишком громко сказано. Дотнет и Ява вообще возможны только лишь по той причине, что 150 метров на диске и 30-80 метров в памяти — это плевое дело нынче. Да и процы шустрые ноне.

Однако линух активно переползает на всевозможные устройства, и GTK с ним
Запускал дотнет на вынь-СЕ? вот и я о том же

-------
всему своя ниша, спорить в отрыве от требований ниши бесполезно
Re[17]: Широкое использование COM
От: vdimas Россия  
Дата: 07.11.04 03:26
Оценка: +2
Здравствуйте, WFrag, Вы писали:

WF>Без всяких перекомпиляций я выгрузил из ядра практически все — видео, звук, модем, сеть, USB-устройства, BlueTooth stack, NTFS, FAT32, и.т.д. Вполне модульно


Такое можно делать относительно недавно, и то, если указать на выгружаемость этих модулей при компиляции ядра.
Re[12]: Широкое использование COM
От: vdimas Россия  
Дата: 07.11.04 03:30
Оценка: +1
Здравствуйте, AndrewVK, Вы писали:

AVK>В Линуксе же, особенно в старых версиях, ядро линковалось в один большой модуль, даже вместе с драйверами. Об этом Влад собственно и говорил.


И сейчас можно выбранные дрова слинковать в ядро.
Очень удобно, если линух сидит на устройстве. (юзаем как embedded linux)
Re[17]: Широкое использование COM
От: VladD2 Российская Империя www.nemerle.org
Дата: 07.11.04 13:32
Оценка:
Здравствуйте, Павел Кузнецов, Вы писали:

ПК>Которая сюда совершенно никакого отношения не имеет. Тут ситуация совершенно обратная. Тебя ни в чем не обвиняют, просто утверждают, что в дискуссии никакие утверждения изначально верными не считаются. Соответственно, если ты выдвинул какой-либо аргумент, с верностью которого твой оппонент не согласен, и этот аргумент ты не обосновываешь, то этот аргумент в дискуссии просто не учитывается.


Я высказал свое мнение, а не противопоставил одно утвердение другому, или выдвинул его в качестве аргумента.
... << RSDN@Home 1.1.4 beta 3 rev. 207>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[15]: Широкое использование COM
От: VladD2 Российская Империя www.nemerle.org
Дата: 07.11.04 13:32
Оценка: :)
Здравствуйте, Павел Кузнецов, Вы писали:

ПК>VladD2:


>> То есть высказывание своего мнения — это флэйм?


ПК>Если соблюдаются остальные условия, обозначенные выше, — да.


Какие условия? Я высказал своем мнение. Это флэйм?

>> ОК, тогда я ужасный флэймогон, так как буду делать это и дальше. И доказывать буду только то что посчитаю нужным. Андестынд?


ПК>Дык, последние сомнения уже давно рассеялись.


Скрытое оскорбление? Что же. Этого и следовало ожидать. Именно это явно и было целью данного докапывания.
... << RSDN@Home 1.1.4 beta 3 rev. 207>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[19]: Широкое использование COM
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 07.11.04 14:48
Оценка:
Здравствуйте, vdimas, Вы писали:

V>Слишком громко сказано. Дотнет и Ява вообще возможны только лишь по той причине, что 150 метров на диске и 30-80 метров в памяти — это плевое дело нынче. Да и процы шустрые ноне.


Ну и какой из этого вывод?

V>Запускал дотнет на вынь-СЕ?


Запускал. Ничего сверхужасного. А учитывая тенденции скоро на КПК будет 1Ггц и 256М памяти, а этого уже достаточно с большим запасом.
... << RSDN@Home 1.1.4 beta 3 rev. 224>>
AVK Blog
Re[13]: Широкое использование COM
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 07.11.04 14:48
Оценка:
Здравствуйте, vdimas, Вы писали:

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

V>С т.з. зрения наследника — это уже не компонент а класс, иначе никак.

С чего ты взял что не компонент? Вполне компонент.

V>Компонент — это "черный" ящик с парой интерфейсов.


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

V>Дудки.

V>Главная фишка компонента — инкапсуляция сложности внутри себя и обеспечение двоичной совместимости со средой, где работает, и интерфейсами, как своими, так и других компонентов.

V>Ты все время говоришь о классах, ИМХО.


Класс дотнета есть частный случай компонента.
... << RSDN@Home 1.1.4 beta 3 rev. 224>>
AVK Blog
Re[9]: Широкое использование COM
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 07.11.04 14:48
Оценка:
Здравствуйте, vdimas, Вы писали:

V>Действительно, голый компонентный подход порождает кучу геммора и дополнительных приседаний.

V>Подход Явы и дотнета — смешанный, и потому успешный.

Нет такого в КОП чтобы это было запрещено. Ссылку на современное определение компонентного программирования я уже приводил. Да и вобще не понимаю я этого стремления к формализму. Ну назовем мы классы дотнета некомпонентами, что от этого изменится? Дотнет сразу станет некошерным?
... << RSDN@Home 1.1.4 beta 3 rev. 224>>
AVK Blog
Re[15]: Широкое использование COM
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 07.11.04 14:48
Оценка:
Здравствуйте, Павел Кузнецов, Вы писали:

>> Не знаю. По мне так современная ОС без модульности просто немыслима.


ПК>Даже встроенная в часы/микроволновку/истребитель?


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

ПК> А применительно к прикладной программе, о которой, собственно, и шла речь изначально? Снова-таки, это относится ко всем мыслимым прикладным программам, или только к некоторым?


Речь вроде бы об ОС шла.
... << RSDN@Home 1.1.4 beta 3 rev. 224>>
AVK Blog
Re[13]: Широкое использование COM
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 07.11.04 14:48
Оценка:
Здравствуйте, vdimas, Вы писали:

AVK>>В Линуксе же, особенно в старых версиях, ядро линковалось в один большой модуль, даже вместе с драйверами. Об этом Влад собственно и говорил.


V>И сейчас можно выбранные дрова слинковать в ядро.


Раньше по другому было нельзя.
... << RSDN@Home 1.1.4 beta 3 rev. 224>>
AVK Blog
Re[6]: Широкое использование COM
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 07.11.04 14:48
Оценка:
Здравствуйте, vdimas, Вы писали:

V>Более поздние их "велосипеды" не так уж плохи: WTL, GdiPlus,

V>а по поводу дотнета даже куча ярых приверженцев на RSDN

К сожалению в случае гуев в дотнете они недалеко ушли. Винформсы по архитектуре это где то середина 90-х. А Avalon еще неизвестно когда будет.
... << RSDN@Home 1.1.4 beta 3 rev. 224>>
AVK Blog
Re[6]: Широкое использование COM
От: AndrewJD США  
Дата: 07.11.04 16:48
Оценка:
Здравствуйте, vdimas, Вы писали:

V>Да, за MFC им надо руки оторвать. Вернее не за MFC (для конца 80-х это было нормально), а за агрессивное его продвижение в начале 90-х.


Какой-такой конец 80-х? Что-то неприпоминаю MFC под DOS
"For every complex problem, there is a solution that is simple, neat,
and wrong."
Re[16]: Широкое использование COM
От: Павел Кузнецов  
Дата: 08.11.04 00:07
Оценка: +1
AndrewVK,

> ПК> А применительно к прикладной программе, о которой, собственно, и шла речь изначально? Снова-таки, это относится ко всем мыслимым прикладным программам, или только к некоторым?


> Речь вроде бы об ОС шла.


Kluev завел
Автор: Kluev
Дата: 05.11.04
речь о своих программах, в которых отказался от компонентного подхода, на что получил
Автор: VladD2
Дата: 05.11.04
от Влада отповедь, что это признак плохого дизайна, где в качестве дополнения было сказано о том, что Линукс по поводу использования монолитного ядра является "флагом кривого дизайна".

В общем, имхо, это все уже мало интересно стало...
Posted via RSDN NNTP Server 1.9 gamma
Легче одурачить людей, чем убедить их в том, что они одурачены. — Марк Твен
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.