Объектно-ориентированные технологии как средство создания сложных ИС
Понятие платформы
Платфо́рма (компьютерная) — совокупность компьютеров, совместимых между собою в том или ином смысле. Аппаратная платформа, программная платформа ОС; виртуальная машина.
Примерно к 1980г целые коллективы, разрабатывающие крупные системы автоматизации с успехом применили новинку - объектно-ориентированные языки программирования, а также объектно-ориентированные методы анализа проблемы и проектирования решения.
· Аналитик умеет говорить на языке объектно-ориентированных описаний и в них представит свои требования до того как отдаст их проектировщику, который создаст для них живую модель.
· Архитектор и проектировщик выяснили, что описать внутреннюю архитектуру на основе понятия объект просто и удобно и программист может сразу же запрограммировать такое объектное проектирование.
· Программист получил в руки инструмент, позволяющий из объектов создавать программы.
Ключевые преимущества объектно-ориентированного подхода — это возможность повторного использования и расширяемость, т.е. объектно-ориентированные системы могут быть легко собраны из ранее написанных компонентов.
В объектно-ориентированном программировании функциональный поток заменяется передачей сообщений между объектами, которые вызывают изменения состояния.
В процессе становления объектно-ориентированного программирования интерес сместился к объектно-ориентированным методам проектирования и анализа.
CASE-средства автоматизированного проектирования и создания программ становятся всё больше необходимы в разработке коммерческих систем. Новые БД, распределенные системы и Web, объектно-ориентированный системный анализ, компоненты.
Понятие объектно-ориентированные методы является очень обширным, как и “объектно-ориентированный” и “объектная технология”. Оно означает объектно-ориентированное программирование, проектирование, анализ и базы данных, т.е. фактически целую философию разработки систем и представления знаний на базе мощного подхода.
Объектно-ориентированное программирование (ООП)
ООП - методология программирования, основанная на представлении программы в виде совокупности объектов, каждый из которых является реализацией определенного типа, использующая механизм пересылки сообщений и классы, организованные в иерархию наследования.
· Абстрагирование - метод решения задачи, при котором объекты разного рода объединяются общим понятием (концепцией).
· Класс - это совокупность объектов, которые имеют общие свойства и методы. Класс может рассматриваться как шаблон для построения экземпляров (объектов).
· Объект - конкретная реализация класса, обладающая характеристиками состояния, поведения и индивидуальности, синоним экземпляра (атрибуты, операции, методы).
· Инкапсуляция - техника, при которой несущественная с точки зрения интерфейса объекта информация прячется внутри него.
· Наследование - свойство объектов, посредством которого экземпляры класса получают доступ к данным и методам классов-предков без их повторного определения.
· Полиморфизм - свойство, позволяющее использовать один и тот же интерфейс для различных действий. Полиморфизм перекраивает общий код, реализующий некоторый интерфейс, так, чтобы удовлетворить конкретным особенностям отдельных типов данных.
· Подстановка - замена родительских классов их подклассами, чтобы воспользоваться преимуществами повторного использования программного обеспечения.
· Сообщения – средства общения объектов (классы и их экземпляры).
· Делегирование - бесклассовое наследование. Не всегда.