3 Этап (продолжение)
Основным достоинством ООП является естественная декомпозиция программного обеспечения, существенно облегчающая его разработку. Это обеспечивает более полную локализацию данных и интеграцию их с подпрограммами обработки - это позволяет практически независимо параллельно разрабатывать множество объектов. В данной технологии впервые введены новые способы организации программ, основанные на механизмах наследования, полиморфизма, инкапсуляции и др. Эти механизмы позволяют конструировать сложные объекты из сравнительно простых, что существенно увеличивает скорость разработки новых объектов и повышает степень использования разработанных объектов.
Основным недостатком данного подхода является необходимость перекомпиляции всего программного обеспечения при изменении реализации одного или более программных объектов.
4 этап
Компонентный подход и CASE-технологии (начало 21 века до нашего времени)
Технология предполагает построение ПО из отдельных компонентов - физически отдельно существующих частей ПО, которые взаимодействуют между собой через стандартный двоичный интерфейс.
В отличие от обычных объектов объекты-компоненты можно контейнировать в динамически вызываемые библиотеки или исполняемые файлы, распространять их в двоичном виде без исходных текстов и использовать в любом языке программирования, поддерживающем эту технологию.
Компонентный подход в настоящее врем реализован в основе двух основных технологий:
1) технология COM (component object model) фирмы micrisoft. Определяет общую идею взимодействия программ любых типов: библиотек, приложений, ОС и другое, то есть позволяет одной части ПО использовать функции, предоставляемые другой, независимо от того, функционируют эти частив пределах одного процесса, в разных процессах на одном компьютере или на разных ЭВМ.
По технологии COM приложение предоставляет свои службы в распоряжение других объектов, используя специальные интерфейсы. Это обеспечивает "взаимодействие объектов между собой", что приводит к появлению клиент-сервер (клиент - потребитель, сервер - источник). Объекты COM всегда функционируют в составе серверов 3 основных типов:
- внутренний сервер. Реализуется динамическими библиотеками, которые подключаются к приложению-клиенту и работают в одном с ним адресном пространстве - наиболее эффективный сервер, не требующий специальных средств.
- локальный сервер создается отдельным процессором, как правило выполняемым модулем с расширением exe, который работает на одном компьютере с клиентами
- удаленный сервер создается процессом, который работает на другом компьютере
2) технология CORBA (common object request broker architecture - общая архитектура с посредником обработки общих запросов). Разрабатывается компания OMG. Реализует подход аналогичный COM, но на базе собственных объектов и интерфейсов CORBA. Программное ядро CORBA реализовано для всех основных аппаратных и программных платформ и поэтому эту технологию возможно использовать в разнородной вычислительной среде. Организация взаимодействия между клиентами и серверам в данном случае осуществляется специальным посредником VisiBroker.
Сложность современных программных систем в настоящее время невозможна без использования средств автоматизации, в силу ограниченных возможностей памяти человека, не способной фиксировать все детали, которые необходимо учитывать при разработке ПО. В настоящее время применяют специальные автоматизированные технологии разработки сопровождения программных продуктов, ориентированных как на структурные, так и на объектные методы программирования и получившие название CASE-технологии.
Тема 2
Основы современных технологий разработки сложных
программных систем
Большинство современных программ объективно обладают повышенной сложностью. Основной причиной усложнения современного ПО является логическая сложность решаемых задач.