Об’єктно-орієнтоване програмування (105 – Прикладна фізика та наноматеріали, ОП Комп’ютерні технології в прикладній фізиці)

Тип: Нормативний

Кафедра: фізики твердого тіла

Навчальний план

СеместрКредитиЗвітність
33Іспит
64Іспит

Лекції

СеместрК-сть годинЛекторГрупа(и)
316доцент Бовгира О. В.ФзП-21
632доцент Бовгира О. В.ФзП-31

Лабораторні

СеместрК-сть годинГрупаВикладач(і)
332ФзП-21
632ФзП-31доцент Бовгира О. В., Еліяшевський Ю. І.

Опис навчальної дисципліни

Курс розроблено таким чином, щоб надати учасникам відповідні теоретичні знання, уміння, навички, загальні та фахові компетентності для продукування нових ідей, розв’язання комплексних проблем у галузі обчислювальної фізики.

Об’єктно-орiєнтоване програмування є одним iз основних пiдходiв до розробки великих програмних проектiв при розв’язку прикладних та наукових задач. Розуміння його концепції, переваг та недолiкiв в комплексi iз практичними навичками розробки та написання програм в рамках цiєї парадигми є важливою складовою пiдготовки сучасного фахiвця. У результаті вивчення дисципліни в студентів формуються навички проектування, програмування й налагодження об’єктно-орієнтованих програм мовою програмування С++ та C#.

Зміст курсу:

  • Основи об’єктно-орієнтованої мови програмування
  • Поняття об’єктно-орієнтованого аналізу, проектування та програмування
  • Повторне використання класів
  • Принципи об’єктно-орієнтованого проектування класів
  • Оброблення виняткових ситуацій
  • Стандартні бібліотеки класів середовищ розробника програм

Метою і завданням навчальної дисципліни є засвоєння необхідних знань iз основ об’єктно – орiєнтованого програмування, отримання навичок використання класiв, механiзмiв наслiдування, iнкапсуляцiї та полiморфiзму; отримання практичних навичок самостiйно будувати програми середнього рiвня складності з використанням об’єктно – орієнтованої парадигми програмування; застосування здобутих знань та пiдходiв для розв’язання практичних задач рiзного рiвня складності, що в подальшому стане цінним інструментом у майбутнiй професiйнiй дiяльностi.

Рекомендована література

Базова:

  1. Бублик В.В. Об’єктно-орієнтоване програмування: [Підручник] / В.В.Бублик. – К.: ІТкнига, 2015. – 624 с.
  2. Кравець П.О. Об’єктно-орієнтоване програмування: навч. посібник / П.О.Кравець. – Львів: Видавництво Львівської політехніки, 2012. – 624 с.
  3. Жуковський С.С. Об‘єктно-орієнтоване програмування мовою С++. / Жуковський С.С., Вакалюк Т.А. Навчально-методичний посібник. – Житомир: Вид-во ЖДУ, 2016. – 100 c.
  4. Ярошко С.А. Методи розробки алгоритмів. Програмування мовою С++ : навчальний посібник / С.А. Ярошко, О.С. Ярошко –  Львів : ЛНУ імені Івана Франка, 2022.  – 248 с.
  5. Алхімова С. М. Обєктно-орієнтоване програмування : підручник. У 2-х ч. Ч. 2. Об’єктно-орієнтований підхід до розробки програмного забезпечення / С. М. Алхімова. – Київ: КГП ім. Ігоря Сікорського, Вид-во «Політехніка», 2019. – 192 с.
  6. Васильєв О. Програмування на С++ в прикладах і задачах : Навч. посіб. / О. Васильєв. – Київ : Видавництво Ліра-К, 2017. – 382 с.

Допоміжна:

  1. Грицюк Ю.І. Об’єктно-орієнтоване програмування мовою С++: навчальний посібник / Ю.І. Грицюк, Т.Є. Рак. – Львів: Львівського ДУ БЖД, 2011. – 404 с.
  2. Бойко Б. І. Об’єктно-орієнтоване програмування. Лабораторний практикум: навчальний посібник / Б. І. Бойко, Л. Л. Омельчук, Н. Г. Русіна – К.: «Айс Принт», 2016. – 90 с.
  3. Stroustrup B. The Desіgn and Evolutіon of C / Дизайн і еволюція C++.
  4. Meyers S. Effectіve STL / Ефективне використання STL.
  5. Мартін, Роберт. Чиста архітектура. Мистецтво розроблення програмного забезпечення [Текст] / Р. Мартін ; пер. з англ. І. Бондаря-Терещенка. – Харків : Фабула : Ранок, 2020. – 368 с.
  6. Фрімен Ерік. Head Fіrst. Патерни проєктування / Ерік Фрімен, Елізабет Робсон, Кеті Сьєрра і Берт Бейтс; пер. з англ. Г. Якубовська – Харків : ВД «Фабула», 2020. – 672 с.

Інформаційні ресурси:

  1. Системи онлайн-освіти: https://prometheus.org.ua/, https://www.coursera.org, http://www.udacity.com
  2. https://www.bestprog.net/uk/sitemap_ua/c/
  3. https://www.tutorialspoint.com/cplusplus/cpp_object_oriented.htm
  4. https://www.learncpp.com/cpp-tutorial/
  5. https://www.codesdope.com/cpp-oop/

Силабус:

Завантажити силабус