- •Препроцессор. Директивы препроцессора.
- •Описание, определение и вызов функций. Параметры по умолчанию. Встроенные функции.
- •Особенности работы с указателями разных типов в языке с.
- •Модели памяти. Функции работы с динамической памятью.
- •Шаблоны функций. Перегружаемые функции.
- •Организация ввода-вывода.
- •Разработка надежного программного обеспечения. Обработка исключительных ситуаций.
- •13. Особенности программирования для ос Windows.
- •14. Библиотека динамической компоновки. Области применения. Разработка и использование dll-библиотек.
- •15. Объектно-ориентированное программирование. Классы. Определение спецификации доступа.
- •16. Объектно-ориентированное программирование. Полиморфизм.
- •17. Ооп. Наследование. Области видимости для классов.
- •18. Ооп. Классы. Дружественные функции.
- •19. Понятие компоненты. Типы компонент. Свойства. Контейнерные компоненты.
- •20. Организация процесса конструирования по. Типы по. Стратегии конструирования.
- •21. Понятие жизненного цикла. Модели жизненного цикла.
- •22. Особенности процесса синтеза программных систем.
- •23. Разработка структуры программы. Модульное программирование. Критерии оценки программ.
- •24. Проектирование программ. Методы нисходящего и восходящего проектирования.
- •27. Классические методы анализа проектирования. Метод Джексона.
- •28. Структурные методы проектирования. Sadt.
- •29. Структурные методы проектирования программных систем. Использование dfd и er диаграмм.
- •30. Case-системы. Классификация.
- •31. Методы контроля и тестирования по. Статический и динамический контроль. Функциональное тестирование.
- •32. Методы контроля и тестирования по. Структурное тестирование. Многомодульное тестирование.
- •33. Разработка интерфейса пользователя. Структуры диалога. Критерии выбора структуры диалога.
- •34. Разработка интерфейса пользователя. Описание диалога. Использование сетей переходов для представления структуры диалога. Правила свёртки сети переходов.
- •40. Критерии оценки качества по. Документирование и оценка качества в соответствии с iso 9000.
- •41. Основные понятия сом-технологии.
41. Основные понятия сом-технологии.
Технология COM позволяет создать и использовать программные компоненты, представляющие различные сервисы другим приложениям, компонентам и ОС. COM является одной из реализаций распределенных вычислений, которые базируются на предоставлении возможности приложениям использовать для расширения своих функциональности готовые компоненты и объекты.
Согласно COM технологии ОО подход используется не в рамках одного приложения, а в рамках ОС. В отличие от стандартных классов, определенных в исходном тексте и реализуемых как объекты в адресном пространстве одного процесса, COM объекты могут располагаться в адресных пространствах разных процессов. В настоящее время существует 3 спецификации COM:
1) OLE документы – составные документы, содержащие внедренные или связанные объекты, которые создаются через контейнеры «с активизацией по месту».
2) OLE Automation – данная спецификация описывает принцип создания сервера и контролера, управляющего его поведением с помощью скриптов или макросов. Имеет смысл только при разнесении адресных пространств клиента и сервера. Управление сервером осуществляется через обращение к его методам со стороны других объектов (COM-контроллеров).
|
Каждый COM-сервер и каждый класс COM-объектов обладают уникальным 128‑битным идентификатором. В общем случае COM-сервер – приложение, которое создает COM-объект и делает его доступным для других программ.
|
3) управляющие элемент Active X, использующие специальный вариант протокола автоматизации. Это библиотеки, содержащие исполняемый код. Из них можно создавать готовые приложения или увеличивать функциональность существующих (языки программирования могут быть разные). Создаются в том случае, когда их функциональность уникальна и в дальнейшем планируется использовать иную среду разработки.
Этапы разработки: создать элемент ActiveX-control; задать его имя, имя модулей и базовый класс, на основе которого создается элемент; дополнить свойства и методы необходимой реализацией; откомпилировать проект; зарегистрировать элемент ActiveX; протестировать (желательно в иной среде разработки).
Сервер автоматизации предлагает для доступа объект специального типа dispatch object. При этом в адресном пространстве приложения контроллера присутствует вариантная переменная, предоставляющая доступ к объекту на сервере. Этапы разработки сервера автоматизации (СА): 1) Создается обычное приложение, подлежащее автоматизации. 2) В приложение добавляется описание класса COM-объектов, созданных этим приложением для осуществления доступа к функциям сервера. 3) Приложение превращают в СА с помощью элемента Automation Object. Определяется имя класса, интерфейс, свойства и методы COM-объекта. 4) Определяется код для реализации методов объекта автоматизации. 5) Компиляция и запуск приложения, который приводит к регистрации созданного COM-сервера в системном реестре.
Схема удаленного запуска СА (в случае, когда COM-сервер и COM-контроллер физически разделены). Proxy – представитель сервера в адресном пространстве клиента. Stub – представитель клиента в адресном пространстве сервера, который содержит реальный указатель на интерфейс. |
|
Stub и Proxy соединяются между собой, используя технологию удаленного вызова процедур RPC. Proxy не содержит реализации интерфейса; все аргументы вызываемых функций помещаются в пакет, передаваемый Stub объекту. Этот объект распаковывает переданные аргументы, помещает в стек и обращается к реальному объекту, используя существующий указатель на интерфейс. Результат выполнения упаковывается пакет и посылается Proxy-объекту, который распаковывает его и передает клиенту.
Дополнительно на сервере размещается специальный резидентный процесс SCM, который осуществляет запуск сервера и возвращает указатель на интерфейс клиентскому процессу. SCM отвечает за безопасность сервера и требует предварительной регистрации клиента на сервере.
