Объектно ориентированное программирование в c: Псевдо ООП в C / Хабр

Содержание

Радченко Глеб Игоревич



Научные интересы

  • Грид-вычисления.
  • Облачные вычисления.
  • Распределенные вычислительные системы.

Публикации

Проекты

  1. Проект Erasmus+ PWs@PhD. Основная цель проекта PWs@PhD – поддержка развития, модернизации, интернационализации высшего образования, а именно исследовательской составляющей европейского образования уровня PhD, содействие созданию новых PhD-программ в странах-партнерах в области программной инженерии.
  2. Сервисно-ориентированный подход к использованию проблемно-ориентированных пакетов в распределенных и грид-средах (проект DiVTB).
  3. Параллельная реализация нейросетевого алгоритма распознавания раздельной речи (Часть 1, Часть 2, Часть 3).

Новости

  • [2013-12-25]  Обновления страниц курсов:
  • [2013-12-17]  Обновления страниц курсов:
  • [2013-11-28]  Обновления страниц курсов:

 

  • [2013-11-07]  Размещены слайды презентаций:
  • [2013-10-26] Размещены слайды презентаций:
  • [2013-06-03]  Размещены слайды презентаций:

[Архив новостей]

Ссылки

  • Mendeley — система для каталогизации и управления библиографией. Встраивается в Microsoft Word, позволяя автоматизировать процесс управления списками литературы при подготовке статей. Поддерживает множество форматов оформления библиографических ссылок, включая ГОСТ-7.0.5-2008.
  • Memsource — операционная среда для выполнения письменных переводов, включающая базы памяти переводов, встроенный машинный перевод, модуль управления терминологией, а также текстовый редактор MemSource Editor. Может импортировать и экспортировать документы всех стандартных форматов, включая Word и PowerPoint.

Мой профиль

 

Объектно-ориентированное программирование (С++)|ИТММ ННГУ

Кафедра информатики и автоматизации научных исследований

Специальность: Прикладная информатика

Преподаватель: Филимонов А.В.

Целями освоения дисциплины (модуля) «Объектно-ориентированное программирование (С++)»  являются получение знаний и практических навыков программирования на языке С++ в рамках объектно-ориентированного программирования.

В курсе приводятся основные аспекты объектно-ориентированного программирования (ООП), даются основы языка С++, как средства реализации объектно-ориентированной парадигмы. Даются основные понятия и конструкции языка, методы реализации базовых операций. Рассматривается способ реализации объектно-ориентированной парадигмы средствами языка С++.

В результате освоения дисциплины обучающийся должен:

Знать: основы терминологии, конструкции (синтаксис, операции, работа с указателями, базовые библиотеки) языка С++, базовые принципы применения языка.

Уметь: Писать программы на языке С++ с использованием одного из компиляторов и одного из визуальных средств разработки.

Владеть: основными принципами компиляции, выполнения и отладки программ на С++ на основе одной из визуальных сред разработки.

Содержание

1. БАЗОВЫЕ ЗНАНИЯ О С++

Начальные сведения о языке. История создания языка и его эволюция. Международный стандарт языка. Сферы применения языка Си++. Пример простой программы. Объясняется процесс ее написания, использования простейших конструкций языка, использования транслятора и запуск программы на выполнение.

Имена, переменные и константы. Правила именования переменных и функций языка, правила записи констант. Понятие ключевого или зарезервированного слова, список ключевых слов Си++.

Операции и выражения. Правила формирования и вычисления выражений в языке Си++. Все операции языка.

Операторы. Описываются все операторы управления, имеющиеся в языке Си++, даются примеры их использования.

Функции. Функции – это основные единицы построения программ при процедурном программировании на языке Си++. Правила их записи, вызова и передачи параметров.

Встроенные типы данных. Рассматриваются все встроенные типы языка Си++: целые числа разной разрядности, вещественные числа, логические величины, перечисляемые значения, символы и их кодировка.

2. КЛАССЫ И ОБЪЕКТЫ.

Классы и объекты. Способы описания классов. Создание объектов. Обращение к атрибутам и методам объектов.

Производные типы данных. Создание и использование массивов, структур, объединений, указателей. Адресная арифметика. Строки и литералы.

Распределение памяти. Проблемы при явном распределении памяти в Си++, способы их решения. Ссылки и указатели. Распределение памяти под переменные, управление памятью с помощью переопределения операторов new и delete.

Производные классы, наследование. Наследование, виды наследования. Виртуальные методы. Абстрактные классы. Множественное наследование.

Контроль доступа к объекту. Рассматриваются возможности контроля доступа к атрибутам и методам объекта, контроль по чтению и по записи.

Классы – конструкторы и деструкторы. Конструкторы и деструкторы классов. Возможности инициализации объектов. Копирующий конструктор. Операции new и delete.

Дополнительные возможности классов. Рассматриваются дополнительные возможности при определении классов, включая переопределение операций, определение методов inline и задание собственных преобразований типа.

3. КОМПОНОВКА ПРОГРАММ, ПРЕПРОЦЕССОР

Компоновка программ, препроцессор. Компоновка программ, возможности, позволяющие писать большие программы.

Определение, время жизни и области видимости переменных в больших программах
Возможности построения больших программ, использование общих данных. Определение контекста, оператор namespace.

4. ОБРАБОТКА ОШИБОК, ШАБЛОНЫ

Обработка ошибок. Попытка классификации ошибок. Сообщение об ошибке с помощью возвращаемого значения. Исключительные ситуации. Обработка исключительных ситуаций, операторы try и catch.

Ввод-вывод. Потоки. Манипуляторы и форматирование ввода-вывода. Строковые потоки. Ввод-вывод файлов.

Шаблоны. Понятие шаблона. Функции-шаблоны. Шаблоны классов. Примеры использования.

Лабораторный практикум

  1. Простейшая программа на С++. Среда разработки Visual Studio. Ввод программы, компиляция, выполнение.
  2. Арифметические операции и математические функции языка С
  3. Битовые операции
  4. Работа с матрицами. Структуры и массивы структур
  5. Указатели, массивы, символьные строки и функции
  6. Классы, объекты и их ассоциации.
  7. Наследование и ограничение видимости
  8. Обработка ошибок и шаблоны

Литература

а) основная литература:

  1. Г. Шилдт — C++. Руководство для начинающих
  2. Г. Шилдт — Самоучитель C++

б) дополнительная литература:

  1. Роберт Седжвик — Фундаментальные алгоритмы на C++. Части 1-4. Анализ. Структуры данных. Сортировка. Поиск

Отчетность

Курс «Объектно-ориентированное программирование на языке С++»

АктуальностьИдёт набор
Стоимость20 000 руб
Продолжительность72 часа
Группаот 8 до 10 человек
Начало занятийПо мере формирования группы

№ п/пНаименование разделовВсего часовВ том числе
ЛекцииПрактические и лабораторные занятияСамостоятельное изучениеПроверка знаний

1

Раздел 1. Введение в язык программирования С++

12

3

9

 

 

 

 

2

 

 

 

2

2

Раздел 2. Объекты и Классы. Перегрузка операций.  Виртуальные функции.

21

6

15

 

 

 

 

2

 

 

 

2

3

Раздел 3.  Наследование классов.  Обработка исключительных ситуаций 

10

2

8

 

 

4

Раздел 4. Шаблоны. Стандартная библиотека шаблонов (STL)

12

4

8

 

 

 

 

2

 

 

 

2

5

Раздел 5. С++ 11

10

2

8

 

 

 

 

2

 

 

 

2

 

Итого:

72

17

47

 

8

6

Итоговая аттестация

 зачет



СПИСОК ЛИТЕРАТУРЫ

1. Ашарина, И.В. Объектно-ориентированное программирование в С++: лекции и упражнения: Учебное пособие для вузов / И.В. Ашарина. — М.: РиС, 2015. — 336 c.

2. Ашарина, И.В. Язык С++ и объектно-ориентированное программирование в С++. Лабораторный практикум: Учебное пособие для вузов / И.В. Ашарина, Ж.Ф. Крупская. — М.: ГЛТ , 2015. — 232 c.

3. Ашарина, И.В. Язык С++ и объектно-ориентированное программирование в С++. Лабораторный практикум: Учебное пособие / И.В. Ашарина, Ж.Ф. Крупская. — М.: ГЛТ, 2015. — 232 c.

4. Белов, В.В. Программирование в Delphi: процедурное, объектно-ориентированное, визуальное: Учебное пособие / В.В. Белов. — М.: ГЛТ, 2009. — 240 c.

5. Белов, В.В. Программирование в Delphi: процедурное, объектно-ориентированное, визуальное: Учебное пособие для вузов / В.В. Белов, В.И. Чистякова. — М.: РиС, 2014. — 240 c.

6. Белов, В.В. Программирование в Delphi: процедурное, объектно-ориентированное, визуальное: Учебное пособие для ву / В.В. Белов, В.И. Чистякова. — М.: ГЛТ, 2009. — 240 c.

7. Васильев, А. C#. Объектно-ориентированное программирование: Учебный курс / А. Васильев. — СПб.: Питер, 2012. — 320 c.

8. Васильев, А. C#. Объектно-ориентированное программирование. Учебный курс / А. Васильев. — СПб.: Питер, 2012. — 320 c.

9. Васильев, А. Java. Объектно-ориентированное программирование: Учебное пособиеСтандарт третьего поколения / А. Васильев. — СПб.: Питер, 2013. — 400 c.

10. Васильев, А.Н. Объектно-ориентированное программирование на C++ / А.Н. Васильев. — СПб.: Наука и техника, 2016. — 544 c.

11. Васильев, А.Н. Java. Объектно-ориентированное программирование: Учебное пособие: для магистров и бакалавров. Базовый курс по объектно-ориентированному программированию / А.Н. Васильев. — СПб.: Питер, 2013. — 400 c.

12. Казанский, А.А. Объектно-ориентированное программирование на Visual Basic 2010 и Visual C# 2010 в среде разработки Microsoft Visual Studio: Учебное пособие / А.А. Казанский. — М.: МГСУ, 2012. — 422 c.

13. Кирютенко, Ю.А. Объектно-ориентированное программирование. Язык Smalltalk / Ю.А. Кирютенко, В.А. Савельев. — М.: Вузовская книга, 2007. — 328 c.

14. Лафоре, Р. Объектно-ориентированное программирование в C++. Классика Computer Science / Р. Лафоре. — СПб.: Питер, 2013. — 928 c.

15. Лафоре, Р. Объектно-ориентированное программирование в С++ / Р. Лафоре. — СПб.: Питер, 2018. — 928 c.

16. Лафоре, Р. Объектно-ориентированное программирование в С++. Классика Computer Science / Р. Лафоре. — СПб.: Питер, 2013. — 304 c.

17. Лафоре, Р. Объектно-ориентированное программирование в С++ / Р. Лафоре. — СПб.: Питер, 2019. — 928 c.

18. Лесневский, А.С. Объектно-ориентированное программирование для начинающих / А.С. Лесневский. — М.: Бином. Лаборатория знаний, 2005. — 232 c.

19. Павловская, Т. С/С++.Процедурное и объектно-ориентированное программирование / Т. Павловская. — СПб.: Питер, 2018. — 496 c.

20. Санников, Е. Курс практического программирования в Delphi. Объектно-ориентированное программирование / Е. Санников. — М.: Солон-пресс, 2013. — 188 c.

21. Хорев, П.Б. Объектно-ориентированное программирование / П.Б. Хорев. — М.: Academia, 2018. — 352 c.

22. Хорев, П.Б. Объектно-ориентированное программирование: Учебное пособие для студ. учреждений высш. проф. образования / П.Б. Хорев. — М.: ИЦ Академия, 2012. — 448 c.

23. Хорев, П.Б. Объектно-ориентированное программирование: Учебное пособие / П.Б. Хорев. — М.: Академия, 2018. — 384 c.

24. Шакин, В.Н. Объектно-ориентированное программирование на Visual Basic в среде Visual Studio .Net / В.Н. Шакин, А.В. Загвоздкина, Г.К. Сосновиков. — М.: Форум, 2013. — 224 c.



    класс человек

    {

    char name [20];

    внутр id;

    public :

    void getdetails () {}

    };

    int main ()

    {

    человек p1;

    }