- •Языки программирования и методы трансляции. Ответы на экзаменационные вопросы.
- •1 Курс 2 семестр
- •1 Вопрос.
- •2 Вопрос.
- •3 Вопрос.
- •4 Вопрос.
- •5 Вопрос.
- •6 Вопрос.
- •7 Вопрос.
- •8 Вопрос.
- •9 Вопрос.
- •10 Вопрос.
- •11 Вопрос.
- •12 Вопрос.
- •13 Вопрос.
- •14 Вопрос.
- •15 Вопрос.
- •16 Вопрос.
- •17 Вопрос.
- •18 Вопрос.
- •19 Вопрос.
- •20 Вопрос.
- •21 Вопрос.
- •22 Вопрос.
- •23 Вопрос.
- •24 Вопрос.
Языки программирования и методы трансляции. Ответы на экзаменационные вопросы.
1 Курс 2 семестр
2012 год
Рекомендации:
Друзья! Если Вы хотите более точную и своевременную информацию, тогда предоставляйте ту информацию, которой обладаете.
Если бы каждый скинул всего, лишь по 2 лекции, тогда ответы на билеты появились бы гораздо раньше, ежели в последний день.
Отдельная благодарность Васильевой Екатерине и пожелавшему остаться неизвестным студенту УВП 1-ого курса.
Всего наилучшего,
Настенька.
1 Вопрос.
Основные парадигмы программирования. Инкапсуляция. Наследование. Полиморфизм.
Парадигма программирования – это стиль написания программ, который подчиняется определенным идеям и правилам.
Основные парадигмы программирования:
1). Процедурное программирование.
Программист представляет свою программу в виде нескольких процедур, собирает в нужном порядке.
Например, FORTRAN
2). Структурное программирование.
Акцент сместился с организации процедур на ориентацию структур данных.
Например, ALGOL-60, Pascal, Modula-2, C.
3). Модульное программирование.
Возникла идея объединить данные и процедуры их обработки в более крупные блоки – модули.
Например, FORTRAN-II, Кобол.
4). Объектно-ориентированное программирование(ООП).
По мере усложнения появились идеи классов – объединения данных и процедур их обработки. Отличие в том, что кроме процедур класс содержит описание объекта и используется для создания объектов.
Например, Object Pascal, C++, Java.
Основные принципы ООП:
1). Инкапсуляция – механизм, который связывает данные с процедурами их обработки и сохраняет их в безопасности, как от внешнего влияния, так и от ошибок использования.
2). Наследование – процесс построения иерархии классов, когда потомки наследуют все свойства своих предков, могут изменять их и добавлять новые.
3). Полиморфизм – свойство, позволяющее одинаково называть процедуры сходные по смыслу, но рассматривать их действия по разному.
2 Вопрос.
Определение класса на языке С++. Спецификаторы доступа к членам класса. Оператор разрешения видимости.
Класс является абстрактным типом данных, определяемых пользователем, и представляет собой объединение данных и функций для работы с ними. Класс не связан с памятью компьютера.
Внутри класса интерфейс описывается прототипами.
Данные именуются полями, а функции – методами.
Описание синтаксиса простого класса:
class <имя класса> {[private:]<описание скрытых элементов класса>public:<описание доступных элементов>};
Есть несколько замечаний при описании синтаксиса класса:
1). При описании данных одного типа, они могут быть объединены;
2). Для обращения к элементам класса нужно указывать только имя;
3).В описании класса можно описать определение метода, если его тело является коротким.
Спецификаторы доступа управляют видимостью элементов класса.
Рекомендуется поля объявлять закрытыми(private), а методы для доступа к ним открытыми(public). Элементы, описанные после private, видимы только внутри класса, то есть к ним невозможно обратиться из функции, не являющейся элементом класса. Это позволяет говорить о таком признаке ООП, как инкапсуляция.
При определении метода вне класса необходимо сообщить компилятору, к какому классу он принадлежит, с помощью оператора доступа к области видимости ‘::’.
Например, void complex1::display() {…}