MPSU / OOP

Object-oriented programming course

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Объектно-ориентированное Программирование

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

Объектно-ориентированное программирование встречается во многих языках программирования:

  • C++

  • С#

  • Python

  • Java

  • JavaScript

  • Swift

  • Ruby

  • И других

В данном курсе мы будем рассматривать ООП на языке C++.

Состав курса.

  • Лабораторные работы
    • 72 балла. 12 Лабораторных по 6 баллов каждая.
  • Тесты
    • 8 баллов. 2 Теста по 4 балла каждый.
  • Экзамен
    • 20 баллов.

Qt Creator

Лабораторные работы будут выполняться в IDE QtCreator.

В данный момент существуют проблемы с установкой ввиду блокировки российского IP со стороны разработчика.

Установить можно несколькими способами:

Для операционных систем:

  • Используя VPN. Переходите на официальный сайт и скачиваете онлайн инсталлятор. Он запросит авторизацию, без VPN вас не пропустит дальше! Если у вас безлимитный VPN, то этот вариант для вас наилучший.
  • Используя VPN и оффлайн инсталлятор более старой версии. Переходите сюда и скачиваете инсталляторы для своей операционной системы. Далее вам необходимо включить VPN и залогиниться, после начнется процесс установки, он не будет тратить трафик, так как все уже скачано вместе с инсталлятором.

Для операционных систем:

В процессе работы с Qt Creator у вас могут возникать ошибки и проблемы. Обращайтесь с проблемами в раздел issues. Так будет пополняться методичка по их устранению.


Git

Git - это распределенная система контроля версий, которая позволяет управлять историей изменений вашего проекта.

В рамках нашего курса мы рекомендуем вам изучить git, как это работает и зачем нужно. В этом вам поможет данный гайд. Вы также можете обращаться к нам, авторам курса, и мы с радостью поможем и ответим на ваши вопросы.

В дальнейшем вам очень пригодятся эти знания не только на работе, но и в вузе.


Лабораторные работы

Всего в курсе 12 лабораторных работ.

  1. Чтение CSV. Функциональная реализация
  2. Реализация в ООП
  3. CSVWriter
  4. Наследование
  5. Абстрактный класс, JSON
  6. Перегрузка операторов
  7. Шаблоны
  8. Исключения
  9. Рисование
  10. Умные указатели
  11. Перетаскивание
  12. Защита и ответы на вопросы

К каждой лабораторной работе прилагается небольшая теоретическая справка, которая может дополняться, а также примеры кода.


Сдача лабораторных работ

Сдача производится очно преподавателю. В процессе сдачи могут быть заданы вопросы по теме лабораторной работы или коду. Также будет оцениваться оформление кода.

Критерии оценивания лабораторных работ:

  • Код полностью работает и без багов.
  • Код красиво оформлен.
  • Ответ на вопрос.
  • Сдано в срок

При выполнении лаборторных работ вам необходимо форматировать свой код. Требуется это для того, чтобы люди учились писать красивый и структурированный код, который смогут прочитать другие разработчики.

Сдать лабораторную работу можно не позже следующего занятия.

Если при сдаче лабораторной работы код сложно разобрать, будут транслитные переменные и тд, то вы попросту не получите балл за этот пункт.

Как оформлять код можно почитать тут.

Подробнее будет рассказано на первой лабораторной работе.


Экзамен

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


Авторы курса

Если у вас возникают какие либо вопросы или трудности, то можете смело написать нам!

  • Орлов Александр Николаевич - лекции, структура курса и лабораторных работ, консультации.
  • Сорокин Александр Владиславович telegram - организация репозитория, написание лабораторных работ, Git Guide, сборка и установка Qt, техническая поддержка, консультации.
  • Рахимкулов Захар Максимович telegram - написание лабораторных работ, Style Guide, техническая поддержка, консультации.


About

Object-oriented programming course


Languages

Language:C++ 100.0%Language:JavaScript 0.0%