Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ПО верхнего уровня( 8 первых вопросов).docx
Скачиваний:
0
Добавлен:
10.01.2020
Размер:
98.52 Кб
Скачать

1.ActiveX — фреймворк для определения программных компонентов, пригодных к использованию из программ, написанных на разных языках программирования. Программное обеспечение может собираться из одного или более таких компонентов, чтобы использовать их функционал.

Впервые эта технология была внедрена в 1996 году компанией Microsoft как развитие технологий Component Object Model (COM) и Object Linking and Embedding (OLE) и теперь она широко используется в операционных системах семейства Microsoft Windows, хотя сама технология и не привязана к операционной системе.

Множество приложений для Microsoft Windows, включая приложения самой компании Microsoft, такие, как Internet ExplorerMicrosoft OfficeMicrosoft Visual StudioWindows Media Player, используют управляющие элементы ActiveX, чтобы реализовать набор функциональных возможностей и в дополнение инкапсулировать их собственный функционал в управляющие элементы ActiveX, чтобы предоставить возможность встраивать их в другие приложения.

Управляющие элементы ActiveX

Управляющие элементы ActiveX — это как строительные блоки для программ, они могут быть использованы для создания распределённого приложения (клиент-серверное приложение, использующее технологию распределенных вычислений), работающего через браузер (веб-обозреватель). Примеры включают в себя настраиваемые приложения по сбору данных, просмотру определённых типов файлов и отображения анимации.

Управляющие элементы ActiveX сравнимы с технологией Java-апплетов: программисты разрабатывают оба механизма, чтобы браузер мог не только скачать, но и обработать их. Однако, Java-апплеты могут работать под любой платформой, тогда как управляющие элементы ActiveX официально обрабатываются только Microsoft Internet Explorer и операционной системой Microsoft Windows.

Вредоносное ПО, такое, как компьютерные вирусы и шпионящее ПО, можно случайно установить с вебсайтов злоумышленников, используя технологию управляющих элементов ActiveX.

Программисты могут создавать управляющие элементы ActiveX с помощью любого языка программирования, поддерживающего разработку компонентов Component Object Model(COM), включая приложенный ниже список:

  • C++

  • Borland Delphi

  • Visual Basic

  • .NET Framework (C#/VB.NET)

Распространённые примеры управляющих элементов ActiveX включают кнопкиспискидиалоговые окна и т. д.

Применение

Технология ActiveX — средство, при помощи которого Internet Explorer (IE) использует другие приложения внутри себя. С помощью ActiveX IE загружает Windows Media Player, Quicktime и другие приложения, которые могут воспроизводить файлы, внедрённые в веб-страницы. Элементы управления ActiveX активизируются при щелчке по такому объекту на веб-странице, например, .WMV-файлу, чтобы загрузить его для отображения в окне браузера Internet Explorer.

Firefox и другие кроссплатформенные браузеры используют программный интерфейс подключаемых модулей Netscape (Netscape Plugin Application Programming Interface, NPAPI).NPAPI выполняет функции, подобные таковым из ActiveX.

Ссылки

Деннинг А. ActiveX для профессионалов = ActiveX Controls Inside Out / Пер. с англ. Е. Матвеев. — СПб.: Питер, 1998. — 624 с. — ISBN 5-314-00056-3

2. APIApplication Programming Interface

Интерфейс программирования приложений (иногда интерфейс прикладного программирования) (англ. application programming interface, API [эй-пи-ай])[1] — набор готовыхклассовпроцедурфункцийструктур и констант, предоставляемых приложением (библиотекой, сервисом) для использования во внешних программных продуктах. Используется программистами для написания всевозможных приложений.

Api как средство интеграции приложений

API определяет функциональность, которую предоставляет программа (модульбиблиотека), при этом API позволяет абстрагироваться от того, как именно эта функциональность реализована.

Если программу (модуль, библиотеку) рассматривать как чёрный ящик, то API — это множество «ручек», которые доступны пользователю данного ящика, которые он может вертеть и дёргать.

Программные компоненты взаимодействуют друг с другом посредством API. При этом обычно компоненты образуют иерархию — высокоуровневые компоненты используют API низкоуровневых компонентов, а те, в свою очередь, используют API ещё более низкоуровневых компонентов.

По такому принципу построены протоколы передачи данных по Интернет. Стандартный стек протоколов (сетевая модель OSI) содержит 7 уровней (от физического уровня передачи бит до уровня протоколов приложений, подобных протоколам HTTP и IMAP). Каждый уровень пользуется функциональностью предыдущего уровня передачи данных и, в свою очередь, предоставляет нужную функциональность следующему уровню.

Важно заметить, что понятие протокола близко по смыслу к понятию API. И то и другое является абстракцией функциональности, только в первом случае речь идёт о передаче данных, а во втором — о взаимодействии приложений.

API библиотеки функций и классов включает в себя описание сигнатур и семантики функций.

Сигнатура функции

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

Иногда различают сигнатуру вызова и сигнатуру реализации функции. Сигнатура вызова обычно составляется по синтаксической конструкции вызова функции с учётом сигнатуры области видимости данной функции, имени функции, последовательности фактических типов аргументов в вызове и типе результата. В сигнатуре реализации обычно участвуют некоторые элементы из синтаксической конструкции объявления функции: спецификатор области видимости функции, её имя и последовательность формальных типов аргументов.

Например, в языке программирования C++ простая функция однозначно опознаётся компилятором по её имени и последовательности типов её аргументов, что составляет сигнатуру функции в этом языке. Если функция является методом некоторого класса, то в сигнатуре будет участвовать и имя класса.

В языке программирования Java сигнатуру метода составляет его имя и последовательность типов параметров; тип значения в сигнатуре не участвует.

Семантика функции

Семантика функции — это описание того, что данная функция делает. Семантика функции включает в себя описание того, что является результатом вычисления функции, как и от чего этот результат зависит. Обычно результат выполнения зависит только от значений аргументов функции, но в некоторых модулях есть понятие состояния. Тогда результат функции может зависеть от этого состояния, и, кроме того, результатом может стать изменение состояния. Логика этих зависимостей и изменений относится к семантике функции. Полным описанием семантики функций является исполняемый код функции или математическое определение функции.