Програмування, частина 2 (Об'єктно-орієнтоване програмування)
Спеціальність: Комп'ютерна інженерія
Код дисципліни: 6.123.00.O.013
Кількість кредитів: 6.00
Кафедра: Електронні обчислювальні машини
Лектор: доцент Морозов Юрій Васильович.
Семестр: 2 семестр
Форма навчання: денна
Завдання: загальні компетентності:
– базові знання фундаментальних наук, в обсязі, необхідному для освоєння загально-професійних дисциплін;
– базові знання в галузі комп’ютерної інженерії (комп’ютерної логіки, теорії програмування, електротехніки) необхідні для освоєння професійно-орієнтованих дисциплін.
– здатність до аналізу та синтезу;
– здатність до застосування знань на практиці;
– здатність здійснювати пошук та аналізувати інформацію з різних джерел;
– здатність розв’язувати поставлені задачі та приймати відповідні рішення;
– креативність, здатність до системного мислення.
фахові компетентності:
– базові знання технічних характеристик, конструктивних особливостей, призначення і правил експлуатації комп’ютерних систем, мереж та обладнання;
– знання сучасних технологічних процесів та систем автоматизації технологічної підготовки виробництва;
– здатність застосовувати та інтегрувати знання і розуміння дисциплін інших інженерних галузей;
– здатність досліджувати проблему та визначати обмеження, у тому числі технічні та обумовлені проблемами сталого розвитку, а також проблемами впливу на навколишнє середовище та безпеку життєдіяльності.
Результати навчання: розуміти теоретичні основи об’єктно-орієнтованого програмування; знати прийоми об’єктно-орієнтованого програмування та аналізу; володіти прийомами програмування з використанням методів об’єктно-орієнтованого програмування; вміти аналізувати предметну область, що моделюється застосовуючи об’єктно-орієнтовані підходи; вміти розробляти програмне забезпечення із застосуванням об’єктно-орієнтованих підходів та сучасних інструментальних засобів.
Необхідні обов'язкові попередні та супутні навчальні дисципліни: Програмування, ч.1 (Основи алгоритмізації та програмування)
Короткий зміст навчальної програми: Об’єктна модель. Основні концепції мови програмування С++. Класи: інтерфейс і реалізація. Застосування методів об’єктно-орієнтованого програмування: об’єктно-орієнтована мова С++ та її стандартна бібліотека, перевантаження операторів, шаблони.
Опис: 1. Об’єктна модель: абстрагування, інкапсуляція, модульність, ієрархія, типізація, паралелізм, збережуваність.
2. Основні концепції мови програмування С++. Константи, вбудовувані функції, перевантаження функцій.
Особливості реалізація стандартного та файлового введення-виведення в С++. Перевантаження операцій введення-виведення.
Особливості реалізації роботи з динамічною пам’яттю.
3. Класи: інтерфейс і реалізація. Члени класів: дані, функції. Види функцій членів класу: конструктори, деструктори, селектори, модифікатори. Відносини між класами: асоціація, успадкування, агрегація, використання, інстанціювання.
4. Успадкування класів. Види успадкування. Особливості успадкування функцій членів класу. Віртуальні функції та поліморфізм. Дружні функції та класи. Перевантаження функцій та операторів. Ієрархія класів.
Множинне успадкування. Невизначеність при множинному успадкуванні. Віртуальне успадкування.
5. Параметризоване програмування в С++: шаблони та інстанціонування. Шаблони функцій та класів.
Особливості організації стандартної бібліотеки шаблонів (STL): контейнери, алгоритми, ітератори. Використання компонентів STL.
6. Технологія розробки об’єктно-орієнтованого програмного забезпечення. Об’єктно-орієнтовані аналіз, проектування та програмування. Еволюція створення об’єктно-орієнтованої програми.
Методи та критерії оцінювання: поточний контроль - письмові звіти з лабораторних робіт, усне опитування, оцінювання виконаних індивідуальних завдань (30%); підсумковий контроль - контрольний захід, диф. залік: письмово-усна форма (70 %).
Критерії оцінювання результатів навчання: Максимальна кількість балів для оцінки поточного контролю (ПК) знань за семестр – 40 балів.
Екзаменаційний контроль проводиться в письмово-усній формі.
Максимальна кількість балів для оцінки екзаменаційного контролю – 60 балів.
Порядок та критерії виставляння балів та оцінок: 100-88 балів - атестований з оцінкою «відмінно» - Високий рівень: здобувач освіти демонструє поглиблене володіння поняттєвим та категорійним апаратом навчальної дисципліни, системні знання, вміння і навички їх практичного застосування. Освоєні знання, вміння і навички забезпечують можливість самостійного формулювання цілей та організації навчальної діяльності, пошуку та знаходження рішень у нестандартних, нетипових навчальних і професійних ситуаціях. Здобувач освіти демонструє здатність робити узагальнення на основі критичного аналізу фактичного матеріалу, ідей, теорій і концепцій, формулювати на їх основі висновки. Його діяльності ґрунтується на зацікавленості та мотивації до саморозвитку, неперервного професійного розвитку, самостійної науково-дослідної діяльності, що реалізується за підтримки та під керівництвом викладача. 87-71 балів - атестований з оцінкою «добре» - Достатній рівень: передбачає володіння поняттєвим та категорійним апаратом навчальної дисципліни на підвищеному рівні, усвідомлене використання знань, умінь і навичок з метою розкриття суті питання. Володіння частково-структурованим комплексом знань забезпечує можливість їх застосування у знайомих ситуаціях освітнього та професійного характеру. Усвідомлюючи специфіку задач та навчальних ситуацій, здобувач освіти демонструє здатність здійснювати пошук та вибір їх розв’язання за поданим зразком, аргументувати застосування певного способу розв’язання задачі. Його діяльності ґрунтується на зацікавленості та мотивації до саморозвитку, неперервного професійного розвитку. 70-50 балів - атестований з оцінкою «задовільно» - Задовільний рівень: окреслює володіння поняттєвим та категорійним апаратом навчальної дисципліни на середньому рівні, часткове усвідомлення навчальних і професійних задач, завдань і ситуацій, знання про способи розв’язання типових задач і завдань. Здобувач освіти демонструє середній рівень умінь і навичок застосування знань на практиці, а розв’язання задач потребує допомоги, опори на зразок. В основу навчальної діяльності покладено ситуативність та евристичність, домінування мотивів обов’язку, неусвідомлене застосування можливостей для саморозвитку. 49-00 балів - атестований з оцінкою «незадовільно» - Незадовільний рівень: свідчить про елементарне володіння поняттєвим та категорійним апаратом навчальної дисципліни, загальне уявлення про зміст навчального матеріалу, часткове використання знань, умінь і навичок. В основу навчальної діяльності покладено ситуативно-прагматичний інтерес.
Рекомендована література: 1. Буч Г. Объектно-ориентированный анализ и проектирование с примерами приложений на С++. Второе издание. М.: «Издательство Бином», 1999.
2. Страуструп Б. Язык программирования С++. Третье издание. - М.: «Издательство Бином», 1999.
3. Грегори К. Использование Visual С++. Специальное издание. - М.: «Диалектика», 1999.
Уніфікований додаток: Національний університет «Львівська політехніка» забезпечує реалізацію права осіб з інвалідністю на здобуття вищої освіти. Інклюзивні освітні послуги надає Служба доступності до можливостей навчання «Без обмежень», метою діяльності якої є забезпечення постійного індивідуального супроводу навчального процесу студентів з інвалідністю та хронічними захворюваннями. Важливим інструментом імплементації інклюзивної освітньої політики в Університеті є Програма підвищення кваліфікації науково-педагогічних працівників та навчально-допоміжного персоналу у сфері соціальної інклюзії та інклюзивної освіти. Звертатися за адресою:
вул. Карпінського, 2/4, І-й н.к., кімн. 112
E-mail: nolimits@lpnu.ua
Websites: https://lpnu.ua/nolimits https://lpnu.ua/integration
Академічна доброчесність: Політика щодо академічної доброчесності учасників освітнього процесу формується на основі дотримання принципів академічної доброчесності з урахуванням норм «Положення про академічну доброчесність у Національному університеті «Львівська політехніка» (затверджене вченою радою університету від 20.06.2017 р., протокол № 35).