Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.08.29;
Скачать: CL | DM;

Вниз

Говорят, технология ActiveX устарела   Найти похожие ветки 

 
AlexG ©   (2004-08-08 21:25) [0]

Так ли это? Кто-нибудь может поделиться своими сведениями?


 
Гаврила ©   (2004-08-08 21:35) [1]

лет 5 еще не устареет, ИМХО


 
Piter ©   (2004-08-08 21:40) [2]

Конечно устарела. Вместе с .NET, четвертыми пнями и уринотерапией...


 
AlexG ©   (2004-08-08 21:47) [3]

Я слышал, что она устарела из-за своей дырявости. И компании Novel, Sun, кажется, и кажется еще кто-то собираются разработать иную технологию, которая будет более надежной.


 
nikkie ©   (2004-08-08 23:34) [4]

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


 
AlexG ©   (2004-08-10 23:53) [5]

2 nikkie ©   (08.08.04 23:34) [4]

Так ведь .NET основан на СОМ! Или нет?


 
Piter ©   (2004-08-11 00:13) [6]

.NET на ком? Я честно перый раз такую версию слышу...

Хотя в .NET полный профан...


 
Aleksey Pavlov ©   (2004-08-11 01:57) [7]

ActiveX конечно устарела - что есть то есть, но т.к. реальной альтернативы, которая может быть использована в коммерческих проектах прямо сейчас (т.е. отлажена, проверена на наличие багов, дыр и т.д.) пока не существует - используется ActiveX. С ним хоть знаешь как бороться, где "блох" ловить, и чего ждать. А т.к. больше 90% пользователей работают под IE который насквозь поддерживает ActiveX, а остальные 10% под "клонами" Netscape, который удачно патчится для работы с ActiveX, то технология ActiveX успешно применяется и ещё лет 5 точно будет применяться (про браузеры - это я относительно распространения ActiveX объектов в виде ocx-модулей через INet и встраивания ActiveX-объектов в окна браузера).

А COM - это не технология, а идеология и .NET ни коем образом не "убьёт" COM.


 
nikkie ©   (2004-08-11 02:08) [8]

>А COM - это не технология, а идеология
объяснись.


 
Aleksey Pavlov ©   (2004-08-11 02:27) [9]

nikkie © (11.08.04 02:08):

а чего тут объяснять? ООП - это же не технология =) Вот и COM точно так же. Можно писать под любую платформу, практически на любом современном языке следуя идеологии COM.
Просто многие воспринимают COM, как набор библиотек и интерфейсов, присущих только Win-based платформам. Естестввенно, это не так.

Для более полных объяснений - см. литературу. Лучшая для начала - "Основы COM" (притом лучше в оригенале imho).


 
nikkie ©   (2004-08-11 02:40) [10]

>Вот и COM точно так же.
не точно также.

>Можно писать под любую платформу, практически на любом современном языке следуя идеологии COM.
это как?

Просто многие воспринимают COM, как набор библиотек и интерфейсов,
так оно и есть. CoInitialize, CoCreateInstance и т.д. IUnknown, IDispatch - без всего этого COM - не COM.

присущих только Win-based платформам.
ну если кто-то портирует все это под юникс, будет присуще не только win-платформе. точно также, как и .NET. ну и что?

Лучшая для начала - "Основы COM"
я читал эту книгу.

а как по-твоему - интерфейсы в языке дельфи - это COM?


 
Aleksey Pavlov ©   (2004-08-11 03:30) [11]

Читать мало - надо понять =)

Интерфейсы в Delphi - это интерфейсы в Delphi и ничего больше.

ВСЁ что есть в COM"е может быть реализовано на любой платформе. Если ты воспринимаешь методы COM"а (QueryInterface, AddRef и Release) как догму, которую нельзя реализовать самостоятельно (и ничего тут портировать не надо), тогда для тебя COM - это действительно только "CoInitialize, CoCreateInstance и т.д. IUnknown, IDispatch".

А если ты действительно читал Основы COM, то должен был обратить внимание на слова автора, что "COM - это идеология". Можно написать программу без единого вызова CoInitialize, CoCreateInstance, без использования IUnknown, QueryInterface, фабрики классов и всего того, что тебе представляется сутью COM - но это может быть программа построенная по идеологии COM.


 
nikkie ©   (2004-08-11 03:54) [12]

ну спасибо, что научил уму-разуму.

хорошо, ты вроде согласен, что IUnknown, CoCreateInstance и т.д. - это технология, а не идеология. как эта технология называется? COM, OLE или ActiveX?

Роджерсон: "Задача этой книги - отделить COM от OLE и уделить первой то внимание, которого она заслуживает. Я вообще не собираюсь обсуждать в этой книге OLE. Я хочу рассмотреть базовые механизмы COM."

значит, технология называется COM.


 
Aleksey Pavlov ©   (2004-08-11 04:10) [13]

IUnknown - идеалогия.
CoCreateInstance - технология.

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

И вообще, как я понял мы немного о разных вещах разговариваем =)
Давай договоримся так: есть идеология (объектная компонентная модель - COM), на базе которой можно реализовать ту или иную технологию, а есть её конкретное воплощение в виде технологии (реализация технологии от компании Microsoft). IMHO это устроит всех =)

И вообще, спорим тут о технологиях и идеологиях, а о терминах не договорились, определений не дали ;)

Ладно, я спать, мне завтра на работу с утра идти - COM"ить :)


 
nikkie ©   (2004-08-11 04:56) [14]

>И вообще, спорим тут о технологиях и идеологиях, а о терминах не договорились, определений не дали ;)
думал я тебя попросить тебя дать определения, но решил, что это будет удар ниже пояса...

IMHO это устроит всех =)
ну вот и отлично. возвращаясь к баранам: раз есть такая технология, которую ты разрешил мне называть COM, то выживет ли она, когда произойдет .NET-ификация всего мира?


 
Aleksey Pavlov ©   (2004-08-11 05:31) [15]

.NET - в некотором смысле инкапсулирует COM(+), так что с этой точки зрения COM будет заменяться .NET"ом. Но сам COM не умрёт как таковой, т.к. за интерфейсами будующее.
А как создать объект автоматизации (или его аналог в .NET) мне лично всё равно: хоть предварительно вызывая CoInitialize, хоть какой-нибудь DotNetInitialize =) Главное, "что у ней внутрях".

Так что формально я согласен, что .NET рано или поздно "заменит" COM (как COM "заменил" OLE и DDE). Но от COM, как от идеологии никуда не денешься.

А вообще, все классные технологии в будующем сольются в одну единую, мощную, лаконичную, безошибочную, вечную и добрую технологию и наступит мир во всём Мире!!! =)
Но произойдёт это очччччеень не скоро, очень =)


 
nikkie ©   (2004-08-11 06:06) [16]

тяжело мне рассуждать на тему .NET, поскольку не вступил я еще в эту реку. но насколько я могу судить, идеология .NET отличается от идеологии COM.

где в .NET AddRef/Release? нету. вместо него хитрый сборщик мусора, не использующий счетчики ссылок.

где в .NET QueryInterface? нету. вместо него - обычное приведение типа.

где знаменитый HRESULT и if (SUCCEEDED(hr))? нету. вместо него - механизм исключений.

что же что из технологии COM пригодится в .NET? да практически ничего. разве что идеология интерфейсов. но идеология интерфейсов - это далеко не COM. иначе бы мы сказали, что Java - это среда разработки COM-приложений.



Страницы: 1 вся ветка

Текущий архив: 2004.08.29;
Скачать: CL | DM;

Наверх




Память: 0.51 MB
Время: 0.039 c
3-1091561658
Alex_Bredin
2004-08-03 23:34
2004.08.29
Триггер не работает.


3-1091532057
Jgn
2004-08-03 15:20
2004.08.29
CheckBox in EHGrid


1-1092196174
maxkat
2004-08-11 07:49
2004.08.29
глобальные переменные!


14-1092038001
KSergey
2004-08-09 11:53
2004.08.29
Visa Classic


1-1092212250
Frozzen
2004-08-11 12:17
2004.08.29
TBitMap выдает Exception