Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ответы ПИС.doc
Скачиваний:
19
Добавлен:
26.11.2018
Размер:
923.14 Кб
Скачать

31. Объектно-ориентированное проектирование

Объектно-ориентированное проектирование (ООП) — это часть объектно-ориентированной методологии, которая предоставляет возможность программистам оперировать понятием «объект», нежели понятием «процедура» при разработке своего кода. Программа, полученная при реализации объектно-ориентированного исходного кода, описывает взаимодействие этих объектов.

Объектно-ориентированное проектирование - это поступательный итеративный процесс. Граница между объектно-ориентированным анализом и проектированием расплывчата и построение проекта программного изделия состоит из ряда циклов, в которых уточняются описания классов и взаимодействия между ними и т.д.. Эти циклы повторяются до получения требуемого результата.

Таким образом, процесс объектно-ориентированного проектирования состоит из циклического выполнения четырех основных шагов:

- Определение классов и объектов на определенном уровне абстракции.

- Определение семантики классов.

- Определение (идентификация) связей между классами и объектами.

- Реализация классов.

На каждом повторении этого цикла уточняются описания классов и перерабатываются проектные документы.

32. Объектно-ориентированная реализация

Объектно-ориентированного программирование – это программирование, при котором применяется методология, подразумевающая объектную декомпозицию предметной области.

Обьектно-ориентированное программирование - это методология программирования, которая основана на представлении программы в виде совокупности объектов, каждый из которых является реализацией определенного класса, а классы образуют иерархию на принципах наследования.

В данном определении можно выделить три части:

1) объектно-ориентированное программирование использует в качестве элементов конструкции объекты, а не алгоритмы;

2) каждый объект является реализацией определенного класса;

3) классы организованы иерархически.

Таким образом, объект – это любая физическая или абстрактная четко идентифицируемая сущность.

Помимо атрибутов объекты обладают некоторыми функциональными возможностями, которые в объектно-ориентированном программировании (ООП) называют операциями или методами.

Объект – это экземпляр некоторого класса объектов или просто класса. Классы могут быть связаны друг с другом различными отношениями. При наследовании все атрибуты и методы родительского класса наследуются классом-потомком, также одни методы класса могут замещаться другими.

Существует 3 класса языков, так или иначе связанных с объектами:

Объектно-ориентированные

Объектные

Объектно-базированные

33. Сложность программного обеспечения

Некоторые системы имеют миллионы строк исходного кода, которые, как планируется, должны правильно выполняться. Сложность программного обеспечения можно сравнить со сложностью таких современных машин, как, например, самолеты.

Основные проблемы, возникающие в процессе разработки программного обеспечения:

1. Недостаток прозрачности разработки. Данная проблема возникает при плохом планировании структуры будущего программного продукта.

2. Недостаток контроля. Не имея точной оценки процесса разработки, графики выполнения работ срываются, а установленные бюджеты превышаются; сложно оценить объем проделанной и оставшейся работы.

3. Недостаток мониторинга. При невозможности наблюдать за ходом развития проекта, невозможно также контролировать и процесс разработки в реальном времени.

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

5. Недостаточная надежность системы разработки программного обеспечения. Самая сложная задача — поиск ошибок и их исправление в программах на ЭВМ.

6. Отсутствие гарантий на программы. Это препятствие не является проблемой, которая относилась бы только к системам разработки программного обеспечения. Гарантия качества любого товара или услуги — это проблема выбора поставщика товара/ услуги.