Файл: Разработка регламента выполнения процесса «Реализация билетов через розничные кассы».pdf
Добавлен: 05.04.2023
Просмотров: 46
Скачиваний: 2
Введение
В предоставленной курсовой работе проанализирована разработка технологии COM, которая в настоящее время широко используется при разработке программного обеспечивания , интеграции программных товаров в единые информационные системы. Целью разработки COM-технологии являлось стремление к распаду программного обеспечения через стандартизацию устройств взаимодействия программных модулей между собой. На основе предоставленной технологии, которая является масштабируемой, разработка огромное число технологий, которые стали в разнообразных областях применения, стандартами.
Информационные технологии, идут от управления технологическими процессами в индустрии до семейных индивидуальных компьютеров. Массовость применение COM в некоторой степени связано с мощью ее создателя, фирмы Microsoft. С данным приходится считаться, и любой программный продукт, выпущенный на основе платформе Windows, для достижения коммерческого успеха обязан соответствовать инновациям Microsoft.
Русский философ, писатель и общественный деятель XIX века Владимир Одоевский в незаконченном утопическом романе «4338-й год», написанном в 1837 году, похоже, первым предсказал появление современных интернатах и блогов: в тексте романа есть строки: «между знакомыми домами устроены магнетические телеграфы, посредством которых живущие на далёком расстоянии можно было, общаются друг с другом».
Идею применения электрической информационной связи для целей бизнеса упоминал в 1908 году Никола Тесла:
По его мнению «когда проект будет завершён, бизнесмен в Нью-Йорке сможет давать указания, и его подчиненные немедленно будут появляться в его офисе в Лондоне или в любом другом месте. Он может в будущем со своего рабочего места позвонить любому абоненту на планете, не меняя существующего оборудования. Не дорогое устройство, по размерам не больше, чем часы, позволит его обладателю слушать на суше и воде музыку, песни, речи политиков, учёных, проповеди священников, доставляемые на большие расстояния. Таким же образом любое описание, символ, рисунок, текст могут быть переданы из одного места в другое. Миллионы таких устройств могут управляться единственной станцией. Однако важнее всего этого станет беспроводная передача энергии... «[ Никола Тесла, 1908,13].
Целью курсовой работы является анализ структурированного языка запросов SQL, на основании которого разрабатываются базы данных для системы клиент-сервер
Задачами курсовой работы является рассмотрение: архитектуры информационной системы, и в частности клиент-сервер.
Наиболее перспективной, является система клиент-сервера, которое поддерживает большие число пользователей. Она обладает высоким уровнеи защиты информации и все данные и прикладные средства хранятся центролизованно, то есть, в одном месте сосредоточено.
1. Характеристика COM-технологии
COM Технология COM (Component Object Technology) - объектно-ориентированная спецификация программ, предложенная Microsoft. COM предназначена для приумножения надежности взаимодействия программных продуктов между собой. Эта технология не определяет структуру программного продукта, язык программирования и прочие детали реализации. Основным понятием, которым оперирует стандарт COM, является COM-компонент. Программы, построенные на основе платформы COM, и фактически не являются самостоятельными программами, а предполагают собой ком-плект связанных между собой COM-компонентов. Любой составляющий компонент имеет редкий личный идентификатор (GUID) и может одновременно использоваться многими другими программами. Компонент прекрасно взаимодействует с другими программами через COM-интерфейсы - наборы инструментов абстрактных свойств и функций. Каждый COM-компонент должен, как минимум, поддерживать стандартный интерфейс «IUnknown», который предоставляет базизную платформу возможностей для работы с компонентом.Интерфейс «IUnknown» включает в себя 3 метода: QueryInterface, AddRef, Release.Windows ΑPI предоставляет базовые функции, позволяющие использовать COM-компоненты. Библиотеки MFC и, особенно, ΑTL/WTL предоставляют более удобные и гибкие средства для работы с COM. Библиотека ΑTL от Microsoft до сих пор остаётся самым востребованными средством создания COM-компонентов. Но часто COM-разработка остаётся ещё довольно сложным делом, программистам случается вручную выполнять многие рутинные задачи, связанные с COM (особенно это заметно в случае разработки на C++). В дальнейшем (в технологиях COM+ и особенно .NET) Microsoft попыталась упростить задачу разработки COM-компонентов.
COM является стандартом, который определяет модель программного объекта, соответствующий требованиям COM-технологии. Программный объект, созданный согласно спецификации COM называется COM-объектом. Данная технология определяет устройство взаимодействия COM-объектов между собой. COM относится к так называемым двоичным стандартам, т.к. прилагается к оттранслированному в двоичный код программному объекту. Взаимосвязь COM-объектов обеспечивается набором предопределенных подпрограмм, называемыми интерфейсами, доступ к которым обеспечивается через специальные уникальные идентификаторы интерфейсов GUID (Global Unique Interface Identifyer), уникальность которых гарантирует операционная система. Данное устройство идентичен с использованием указателей при доступе к объектам в объектно-ориентированных стилях программирования, что дает воз-можность прозрачного управления объектами, т.к. доступ к ним гарантируется через указатели. COM-технология расширяет это устройство, перенося применение указателей (в виде GUID) для доступа к объектам на уровень операционной системы. Следовательно, COM-объекты могут быть прозрачно друг для друга модифицироваться, т.к. доступ к объектам обеспечивается через GUID . COM разработка включает в себя еще библиотеку, а также библиотеку, в которую входит комплект типовых интерфейсов, которые определяют ядро функциональности COM и небольшой набор ΑPI функций, разработанных для создания COM-объектов и управления ими. Архитектура COM является расширяемой, и на нее платформе базируются другие технологии Microsoft, такие как OLE и ΑctiveX. В настоящее время, эти технологии являются расширениями операционной системы, и определяют свои собственные правила работы и предлагают свои библиотеки для основания объектов и для управления объектами на основе данных технологий. Используя COM как платформу, разработчики программного обеспечения получают возможность создавать собственные свои расширения таким образом, что программные объекты созданные, по правилам -технологии могут работать с другими COM-объектами через унифицированный механизм взаимодействия, который предлагает COM.
COM применяет такое понятие как «класс», которое по смыслу означает то же самое, что и в объектно-ориентированных возможности разработки. COM -объект является объектом COM -класса (COM class). COM -классы, для разницы с классами в объектно-ориентированных языках программирования, с помощью которых может создаваться приложение, обычно называются соклассами (CoClass). Далее в тексте будет использоваться терминология, исходящая из языка объектно-ориентированного программирования.
1.1 Состав COM -объекта
В COM-технологии различаются следующие строительные блоки, используемые для создания объектов:
- Interface (COM-интерфейс) - множество прототипов функций (методов), чисто определенных. Термин «чисто определенный метод» или «абстрактный метод» исходит теории объектно-ориентированного рассмотрения, и означает, что в определении класса отсутствует реализация метода, а присутствует только его определение. От такого класса нельзя создавать объекты. Его предназначение – описать фундаментальные общности для всех производных классов;
- COM object (COM-объект) – объект класса CoClass, который содержит реализацию COM интерфейса;
- ΑctiveX server/ COM (COM сервер или ΑctiveX сервер)– модуль, такой как OCX, EXE или DLL, который содержит машинный код COM или ΑctiveX объектов;
- Class factory (фабрика классов)– объект, который может создавать COM-объекты из CoClass;
- Type library (библиотека типов) – файл, содержащий информацию о типах данных, которые использует COM/ActiveX сервер.
Центральным элементом COM является объект.
Приложения, поддерживающие COM, имеют в своем составе единич-ный объект или несколько объектов COM. Любой объект представляет со-бой индивидуальный экземпляр соответствующего класса и содержит один или несколько интерфейсов. Всякий объект является экземпляром некоторого класса, т.е. представляет собой переменную объектного типа. В следствии этого объект обладает набором инструментов свойств и методов, которые работают с этими свойствами.
К объектам применимы 3 главные свойства: инкапсуляция (Инкапсуляция (encapsulation) - это устройство, который объединяет данные и код, манипулирующий этими данными, а также отстаивает и то, и другое от вмешательства извне или неправильного применения. На языке объектно-ориентированном программирования, код и данные могут быть соединены вместе; в этом случае говорят, что создаётся так называемый "чёрный ящик". Когда коды и данные соединяются таким способом, создаётся объект (object). Другими словами, объект - это то, что под-держивает информацию, наследование (это процесс, посредством которого один объект может приобретать свойства другого) и полиморфизм (в языках программирования полиморфизм - возможность объектов с одинаковой спецификацией иметь различную реализацию). Объекты COM всем этим требованиям соответствует. Применительно к объектам, в целом понятие интерфейса объекта, как он был определен выше, не используется. При первом приближении можно считать, что все методы объекта составляют его один единственный интерфейс, а указателем интерфейса является указатель на объект.Объект COM может иметь любое число интерфейсов (если это число < нуля), причем, каждый интерфейс обладает собственным указателем. Это первое отличие объектов COM от обычных. У объектов COM имеется особенность еще в одном объектом механизме – наследовании. Вообще различают два способа наследования. Наследование реализации подразумевает передачу « родителем» «потомку» всего программного кода. Наследование интерфейса означает передачу только объявления методов, их программный код «потомок» должен предоставить автономно. Объекты COM поддерживают только наследование интерфейса, избегая тем самым возможного нарушения инкапсуляции родителя. Тем не менее, просто так выбросить наследование реализации нельзя. Вместо нее объекты COM используют устройство включения, т.е. при необходимости потомок вызывает нужный метод родителя. Также применяется механизм агрегирования, когда один или несколько интерфейсов одного объекта временно включаются в другой объект путем передачи указателей.
1.2 Интерфейсы
Интерфейсы являются основными архитектурными единицами COM. Они объединяются на семантически связанные группы подпрограмм, через которые COM-объекты осуществляют взаимодействие:
Рисунок 1 Интерфейсы
Термин «интерфейс» используется в информатике, поскольку имеется в виду совокупность разнообразных технических и программных средств и правил (описаний, соглашений, протоколов), обеспечивающих сразу взаимодействие устройств и/или программ в вычислительной системе или обеспечение соответствия систем [1].
Интерфейсы считаются основой взаимодействия всех современных ин-формационных систем. В случае, если интерфейс какого-нибудь объекта (программы, индивидуального персонального компьютера, функции) не меняется (стабилен, стандартизирован), это даёт возможный потенциал модифицировать сам объект, не перестраивая основы его одновременной связи с другими объектами (так, к примеру, научившись работать с одной программой под Windows, пользователь с большей лёгкостью сможет, освоит и другие, потому что они имеют однотипные составляющие интерфейса).
Стандартный метод интерфейс - совокупность унифицированных технических, программных и конструктивных средств, основанных на основе созданных стандартов, реализующих взаимодействие различных функциональных элементов в системе информации, обеспечивающих информационную, электрическую и конструктивную совместимость этих элементов. Стык используется редко-место соединения устройств сети передачи данных . Взаимосвязь между понятиями протокола и интерфейса не всегда однозначна: интерфейс может содержать информацию об элементах протокола, а протокол, в свою очередь, может охватывать несколько интерфейсов (стыков).Главная и основная идея применение стандартных интерфейсов и протоколов - унификация меж- и внутрисистемных и меж- и внутри сети связей для повышения эффективности проектирования вычислительных систем.[2]
В вычислительной системе согласованность может осуществляться на пользовательском, программном и аппаратном уровнях.
COM определяет следующие ключевые аспекты, связанные с COM-интерфейсами:
Таким образом, получение выхода к реализации метода интерфейса объекта представляет собой через последовательную процедуру получения указателей.
С GUID система связывает указатель на интерфейс. Указатель интерфейса, в свою очередь является указателем на vtable, через которую обеспечивается указатель на таблицу указателей на код с осуществлением методов. Большое количество объектов одного класса в системе используют одну общую vtable, и для каждого такого из объектов, создается структура с частными данными, необходимыми для корректного вызова функций.
- Интерфейс включает в себя определенную функциональность. Методы интерфейса семантически связаны по функциональности и назначению. Соответственно этому, методы интерфейса обычно именуется согласно своему назначению, и имя претворяется заглавной I. Для примера, метод IMalloc определен для размещения и освобождения памяти;
- Интерфейс имеет уникальный идентификатор. Интерфейсы различаются посредством использования глобальных идентификаторов GUID, которые применяются для ссылки на идентификаторы конкретных интерфейсов IID (Interface Identifier). Любой интерфейс имеет свой IID, и при регистрации в системе получает связанный с ним GUID. Применение GUID более совершенно, чем использование символьных имен, т.к. гарантирует отсутствие конфликтов между ними при обновлении программных продуктов (выхода новых версий) и при использовании программного обеспечения от различных производителей;
- Не может меняться интерфейс после регистрации в системе. Любой интерфейс предназначен для выполнения определенной, поставленной задачи, и определяет, какие поступившие данные поступают на обработку и какие данные выводятся. Таким образом, после того, как интерфейс появился в системе, и стал доступен для использования, он не должен меняться. Любое изменение в семантике интерфейса ведет к необходимости обновления нового интерфейса. Однако есть вероятность, возможность безопасной реализации много интерфейсных объектов посредством использования для доступа к разным версиям интерфейса разные IID.
- Интерфейсы наследуют функциональность от одного базового предка. Все интерфейсы прямо или косвенно являются потомками интерфейса IUnknown. Этот интерфейс обеспечивает функциональность интерфейса, которая включает в себя динамический опрос объекта (dynamic quering) и управление циклом объекта (lifetime managment). Эта функциональность
обеспечивается тремя методами интерфейса IUnknown: QueryInterface, AddRef и Release. Каждый класс, который реализует интерфейс, должен реализовать эти три метода, наряду с методами, наследованными от другого интерфейса, и своими собственными методами. Ниже представлено краткое описание функционального назначения упомянутых методов:
- QueryInetrface снабжает опрос объекта и доступ к аббревиатуре на интерфейс. QueryInerface является 1 записью в vtable, и предлагает эффективный путь для определения возможностей объекта, в простейшем случае через этот метод при взаимосвязи, обеспечивается передача указателя на интерфейс IUnknown тому объекту, который пытается получить доступ к данному объекту. Этот метод также делает возможным обновление COM объекта без потерь на обновление остальных зависимых объектов, т.к. объект может быть динамически опрошен клиентами через аббревиатуру на IUnknown. Это функция носит название dynamic quering;