Содержание
1.Введение 4
2.Текущее состояние объектных систем 5
2.1.COM 5
2.2.XPCOM 6
2.3.VirtualBox XPCOM 7
2.4.GObject 8
2.5.Objective-C runtime 9
2.6.SOM 11
2.7.NOM 13
2.8.WinRT 13
2.9.Итоговая таблица 16
2.10.Другие объектные системы 17
3.Дополнительная информация 17
3.1.Почему C++ не такой же простой, как C? 17
3.2.Common Lisp Object System 19
3.3.Импорт компонент 19
4.Заключение 21
5.Список литературы 22
Отзыв.odt
Ситуация с постоянным выпуском новых версий, появлением платформ и сред больше напоминает шоу-бизнес, чем серьезную вдумчивую работу. В результате мы имеем кучу красивых разноцветных кирпичей, из которых можно построить всё, что угодно, кроме дома, для построения которого мы их собственно и покупали.
— Олег Горский, технический директор ООО «Кубикс»
Во времена 80х и начала 90х различия между такими языками, как C, Pascal и Fortran, были не столь пагубными для взаимной интеграции, как различия между современными ЯП. Можно было написать часть кода на Fortran, подключить пару библиотек на C и скомпилировать всё в рамках единой программы, основным языком которой является Pascal. Эта совместимость осталась далеко в прошлом, и не в последнюю очередь это можно связывать с малой популярностью объектных систем. Под объектными системами следует понимать не связанные с каким–либо одним языком программирования библиотеки и инструменты трансляции IDL (interface definition language) в заглушки на разных языках программирования. Только посредством подобных библиотек и инструментов (каркасов, frameworks) возможно комфортное сосуществование разноязыковых компонент. Кроме того, подобные системы дают возможность изменять реализацию динамических библиотек, не требуя перекомпиляции пользователей библиотек, и это один из мотивов существования объектных систем даже в условиях недостаточной конкуренции на арене языков программирования.
Интеграция гетерогенных компонент интересовала автора длительное время, не в последнюю очередь являясь значимой частью применения малопопулярных языков программирования, таких, как Ада. В данной работе сделан обзор существующих объектных систем и сделано их сравнение. Опыт применения был получен ранее при разных обстоятельствах.
В результате прохождения производственной практики я собрал воедино прежде разрозненные фрагменты информации из области, интересующей меня многие годы. Я перепроверил и закрепил факты о всех рассмотренных объектных системах.