• A
  • A
  • A
  • АБB
  • АБB
  • АБB
  • А
  • А
  • А
  • А
  • А
Обычная версия сайта
Магистратура 2021/2022

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

Статус: Курс обязательный (Магистр по компьютерному зрению)
Направление: 01.04.02. Прикладная математика и информатика
Формат изучения: с онлайн-курсом
Охват аудитории: для своего кампуса
Прогр. обучения: Магистр по компьютерному зрению
Язык: английский
Кредиты: 7
Контактные часы: 2

Course Syllabus

Abstract

The ability to write programs using object-oriented programming languages is an important skill for engineers working with computer vision. Therefore, it is very important that all students who come to the "Master of Computer Vision" master program have such skills. The course will cover two object-oriented languages, Python and C ++. These object-oriented languages are most often used when working on projects in the field of computer vision.
Learning Objectives

Learning Objectives

  • To form the student's understanding of methods for implementing the object-oriented approach in the Python language.
  • Develop an understanding of the theoretical foundations and practical skills of programming in the Python language, sufficient for an entry-level developer.
Expected Learning Outcomes

Expected Learning Outcomes

  • Be able to create lambda functions.
  • Be able to define different types of functions.
  • Be able to implement object-oriented programming practices.
  • Be able to install and configure a Python development environment.
  • Be able to organize input and output for programs.
  • Be able to use formatted strings.
  • Be able to work with basic type operations in Python.
  • Be able to work with different types of collections.
  • Be able to work with different types of cycles.
  • Know and understand the type hierarchy.
  • Know how to organize conditions in programs.
  • Know the syntax of class definitions and be able to use the different types of properties of classes and methods.
  • Understand the specifics of implementing object-oriented programming in Python.
  • Understand to distinguish between basic object-oriented programming practices (inheritance, encapsulation, polymorphism, abstraction).
Course Contents

Course Contents

  • Basic python syntax
  • Advanced python syntax
  • Object-oriented approach in python
Assessment Elements

Assessment Elements

  • non-blocking Weekly Quizzes Tests
  • non-blocking Final Project
Interim Assessment

Interim Assessment

  • 2021/2022 1st module
    0.4 * Final Project + 0.6 * Weekly Quizzes Tests
Bibliography

Bibliography

Recommended Core Bibliography

  • Eric Matthes. (2019). Python Crash Course, 2nd Edition : A Hands-On, Project-Based Introduction to Programming: Vol. 2nd edition. No Starch Press.
  • Ivor Horton, & Peter Van Weert. (2020). Beginning C++20 : From Novice to Professional: Vol. 6th ed. Apress.

Recommended Additional Bibliography

  • Josh Lospinoso. (2019). C++ Crash Course : A Fast-Paced Introduction. No Starch Press.