http://oberon.talk4fun.net/index.php?topic=21.0igor писал(а):
Скажем Блэкбокс, по моему убеждению, совершенно напрасно замешан на COM. Для этого не было никаких веских оснований, зато должно было усложнить портирование на Линукс. По поводу оснований даже страшно предположить (неужели "прогиб" под Microsoft?
Не, не верится...)
Дело, думаю, в том, что Шиперски и Ко. были в первой половине девяностых "авангардом компонентного программирования" и как бы... непосредственно строили свою деятельность в рамках "гонки компонентных технологий". И сочли, видимо, оправданным поддержать COM, показать, как легко они его поддержат, ну и захватить долю рынка. Ну и результат-то был - награда CeBiT как лучшего средства разработки под COM. Только вот COM-то умер.. как архитектура, а не как набор библиотек и межпроцессных связей в Винде.
В итоге можно говорить, что поддержка эта обошлась совсем "малой кровью". Никаких проблем COM не создаёт, он достаточно локализован в коде, тем более, находится преимущественно в подсистеме платформенной реализации (Host), да в ядре. ББ, если Вы не вставляете OLE-объекты и не используете интерфейсы автоматизации к другим приложениям, работает вообще без задействования средств COM (т.е. COM-овский код лежит в памяти "мёртвым грузом" и ничего не делает). Что очевидно подтверждается при эксплуатации ББ под Wine.