Code Monkey home page Code Monkey logo

oop's Introduction

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

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

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

  • 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, техническая поддержка, консультации.


Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.