- •102.Что такое подпрограмма?
- •103. Для чего нужно разбиение программы на подпрограммы?
- •104. Назовите способы передачи параметров в подпрограмму.
- •105. Перечислите недостатки разработки программы снизу-вверх.
- •106. Где располагаются динамические структуры данных?
- •107. На каком этапе происходит выделение памяти под динамическую структуру данных?
- •111. Какое свойство объектно-ориентированного программирования позволяет скрыть детали реализации объекта от других частей программы?
- •108. Какую дисциплину обслуживания реализует стек?
- •109. Какую дисциплину обслуживания реализует очередь?
- •110. Какие операции определены для стека и очереди?
- •112. Какое свойство объектно-ориентированного программирования позволяет называть одним и тем же именем разные методы в разных объектах иерархии?
- •113. Что обычно содержит класс?
112. Какое свойство объектно-ориентированного программирования позволяет называть одним и тем же именем разные методы в разных объектах иерархии?
Полиморфизм. Полиформизм - присваивание действию одного имени, которое затем совместно используется вниз и вверх по иерархии объектов, причем каждый объект иерархии выполняет это действие способом, именно ему подходящим.
113. Что обычно содержит класс?
Класс — разновидность абстрактного типа данных в объектно-ориентированном программировании (ООП), характеризуемый способом своего построения.
Классы могут содержать в себе самые различные элементы: переменные, константы, функции и другие классы. включает не только данные, но и функции и процедуры.
Функции и процедуры класса называются методами и содержат исходный код, предназначенный для обработки внутренних данных объекта данного класса.
114. Перечислите преимущества и недостатки объектно-ориентированного программирования.
Достоинства:
1.Классы представляют собой удобный инструмент :
Классы позволяют проводить конструирование из полезных компонент, обладающих простыми инструментами – это дает возможность абстрагироваться от деталей реализации.
Данные и операции вместе образуют определенную сущность и они не «размазываются» по всей программе
Локализация кода и данных улучшает наглядность и удобство сопровождения программного обеспечения.
Инкапсуляция информации защищает наиболее критичные данные от несанкционированного доступа
2. Дает возможность создавать расширяемые системы
Преимущества объектно-ориентированного программирования (еще одна версия)
Наследование. Краеугольный камень ООП. В объектно-ориентированном программировании есть возможность наследовать структуру и поведение класса от другого класса. Связи наследования классов образуют иерархию классов. Множественным наследованием называют определение производного класса сразу от нескольких суперклассов. Наследование – это эффективный способ выделения многократно используемых фрагментов кода, но у него есть и минусы
Полиморфизм. следствием наследования. полиморфизм – это возможность единообразного общения с объектами разных классов через определенный интерфейс.
Интерфейс. - это не только открытые методы и свойства самого класса. Такие языки, как правило, не поддерживают множественного наследования и компенсируют это тем, что любой объект может иметь один базовый объект и реализовывать любое количество интерфейсов.
Недостатки:
-ООП порождает огромные иерархии классов (приводит к тому, что функциональность расползается по базовым и производным членам класса, и отследить логику работы того или иного метода становится сложно.)
-В некоторых языках все данные являются объектами, в том числе и элементарные типы, а это не может не приводить к дополнительным расходам памяти и процессорного времени.
-На скорости выполнения программ может неблагоприятно сказаться реализация полиморфизма, которая основана на механизмах позднего связывания вызова метода с конкретной его реализацией в одном из производных классов.
