Програмування 2

Навчальна дисципліна професійної підготовки
Обсяг освітнього компонента: 
• у кредитах ЄКТС — 6.5.
Кількість аудиторних занять: 
60 годин лекційних занять, 46 годин лабораторних занять.
Семестровий контроль: 
Екзамен.
Викладач: 
к.т.н., доц. Комлева Н.О..
Анотація: 

Мета дисципліни: надбання знань з теоретичних основ розробки прикладного програмного забезпечення, основних принципів побудови алгоритмів для рішення різних завдань та  прийомів об’єктно-орієнтованого програмування, використовуючи мову програмування С/С++.
.
Завдання дисципліни:
– формалізація запропонованого завдання;
 вибір структур даних та складання відповідних алгоритмів для  вирішення задачі;
оволодіння стилем та прийомами об’єктно-орієнтованого програмування мовою програмування С++, 
побудова програм мовою програмування С/С++ за допомогою сучасних засобів їх розробки;
оволодіння основами тестування та принципами налагодження програм..
 
Основні результати навчання
 
 Навички вербального та письмового репрезентування практичних розробок.
 Володіти основними положеннями та методами математичного, комплексного та функціонального аналізу, лінійної алгебри та аналітичної геометрії, теорії диференціальних рівнянь, зокрема рівнянь математичної фізики, теорії ймовірностей, математичної статистики та випадкових процесів, чисельними методами, методами оптимізації, методами аналізу даних.
Поєднувати методи математичного та комп'ютерного моделювання з неформальними процедурами експертного аналізу для пошуку оптимальних рішень.
Вміти застосовувати сучасні технології програмування та розроблення програмного забезпечення, програмної реалізації чисельних і символьних алгоритмів.
 Використовувати в практичній роботі спеціалізовані програмні продукти та програмні системи комп'ютерної математики.
 Володіти загальними принципами функціонування та архітектури комп'ютерних систем та основами операційних систем. 
 Володіти системним програмним забезпеченням, знати принципи роботи компіляторів, інтерпретаторів, компонувальників, налагоджувачів утиліт, систем управління файлами, драйверів тощо.
 

Форми організації освітнього процесу та види навчальних занять

Л – лекційні заняття; ЛЗ – лабораторні заняття; СРЗ – самостійна робота здобувача вищої освіти; МКР – модульна контрольна робота; К – консультації.

Тематика та види навчальних занять
 
1 тиждень
 
Л1. Мова програмування С++: історична довідка. Введення в ООП
ЛЗ1 Освоєння роботи з налаштуваннями середовища Microsoft Visual C++.
ЛЗ1. Проходження основних етапів роботи над об’єктно-орієнтованою програмою на тестовому прикладі.
СРЗ. К.
 
2 тиждень
 
Л2. Об’єктно-орієнтована декомпозиція.  Поняття класу та об’єкту.
ЛЗ2 Створення програмного класу. Застосування класу для роботи з об’єктами цього класу. 
СРЗ. К.
 
3 тиждень
 
Л3. Робота з проектом у середовищі Microsoft Visual C++.ЛЗ3. Функції і оператори вибору і переходу в мові C.
ЛЗ.3. Створення програмного класу з  використанням конструктору для ініціалізації та з деструктором.
ЛЗ.3. Застосування класу для роботи з об’єктами цього класу.
СРЗ. К.
 
4 тиждень
 
Л4. Класи.  Члени класу – дані  та  функції. Специфікатори доступу.
ЛЗ4. Створення програмного класу з  використанням спеціальних методів – гетерів та сетерів.
Застосування класу для роботи з об’єктами цього класу.
СРЗ. К.
 
5 тиждень
 
Л5. Iнiцiалiзацiя об’єкта – конструктори.   Деструктори.
ЛЗ5. Створення програмного класу з  використанням статичних даних.
ЛЗ5. Організація використання статичних даних.
СРЗ. К.
 
6 тиждень
 
Л6. Гетери та сетери як інтерфейс для доступу до даних класу.
ЛЗ6. Створення програмного класу з  перетворенням типу об'єктів класу.
Організація використання об'єктів різних типів із застосуванням перетворення типів об'єктів.
СРЗ. К.
 
7 тиждень
 
Л7. Статичнi дані і класи. Перетворення типу об'єктів класу. 
ЛЗ7 Створення програмного класу з  використанням дружніх функцій.
ЛЗ7. Застосування дружніх функцій для доступу к об'єктам декількох класів.
СРЗ. К.
 
8 тиждень
 
Л8. Дружнi  функції класу.  
ЛЗ8. Створення програмного класу з  перевантаженими унарними та бінарними операторами з використанням функцій-членів класу. Застосування доступу до перевантажених операторів.
МКР1. 
СРЗ. К.
 
9 тиждень
 
Л9. Перевантаження операторів з використанням функцій-членів та функцій-нечленів класу.
ЛЗ9. Створення програмного класу з  перевантаженими унарними та бінарними операторами з використанням дружніх функцій.
ЛЗ9. Застосування доступу до перевантажених операторів.
СРЗ. К.
 
10 тиждень
 
Л10. Створення класів однозв’язного та двозв’язного списків.
ЛЗ10. Створення власної програми з класами щодо роботи з однозв’язними та двузв’язними списками. Перевірка коректності значень покажчиків.
СРЗ. К.
 
11 тиждень
 
Л11. Сортування елементів однозв’язного та двозв’язного списків.
ЛЗ11. Реалізація заданого алгоритму сортування для елементів однозв’язного та двузв’язного списків.
ЛЗ11. Перевірка коректності значень покажчиків.
СРЗ. К.
 
12 тиждень
 
Л12. Створення класів стеку та черги
ЛЗ12. Створення власної програми з класами щодо роботи зі стеком та чергою.
Перевірка коректності значень покажчиків.
СРЗ. К.
 
13 тиждень
 
Л13. Створення класів для роботи з бінарними деревами. Типи обходу бінарних дерев.
ЛЗ13. Реалізація заданого алгоритму обробки даних, які подані у вигляді бінарного дерева.
ЛЗ13. Перевірка коректності значень покажчиків.
СРС. К.
 
14 тиждень
 
Л14. Успадкування.  Базові і породжені класи.  
ЛЗ14. Проектування ієрархії класів. Застосування класів для роботи з об’єктами цих класів. Створення абстрактного класу. Застосування віртуальних методів
СРЗ. К.
 
15 тиждень
 
Л15. Створення багаторівневої ієрархії.
ЛЗ15. Проектування класу з використанням шаблону. Реалізація заданого алгоритму обробки даних.
ЛЗ15. Проектування класу з використанням контейнерів та ітераторів бібліотеки STL. 
Реалізація заданого алгоритму обробки даних.
СРЗ. К.
МКР2.
 
 
 
Індивідуальна робота
 
Не передбачена
 
 
Самостійна робота
 
Самостійна робота складає 89 годин. Розподіл самостійної роботи за видами навчальних робіт:
1) підготовка до лекційних занять – 29 годин;
2) підготовка до лабораторних занять та до виконання індивідуальних контрольних завдань – разом 30 годин;
3) підготовка до екзамену- 30 годин.
 
Процедура оцінювання
 
Система оцінювання рівня навчальних досягнень ґрунтується на принципах ЄКТС та є накопичувальною. Дисципліна поділяється на чотири семестрові модулі. Здобувачі протягом  семестру готуються до лекційних та лабораторних занять, виконують 2 модульні контрольні роботи.
Модульні контрольні роботи №1, №2 виконуються у письмовій формі. Максимальна оцінка за бездоганне виконання становить 30 балів. Модульна робота складається з теоретичної частини (у формі тестових запитань) та практичної частини (1 завдання). Максимальна оцінка за правильне виконання теоретичної частини становить 15 балів, та за правильне виконання практичної частини становить 15 балів. Кількість тестових запитань – 15. Кожна правильна відповідь оцінюється в 1 бали. Правильне виконання практичної частини оцінюється в 15 балів. Завдання вважається розв’язаним, якщо повністю розкрита суть питання, яка послідовно і логічно викладена, наведено приклади, відповідь проілюстровано необхідною і достатньою кількістю записів, діаграм.
 
Кожний модуль оцінюється у максимально можливі 50 балів:
 
Семестровий модуль № 1

ЛЗ. Оцінка за виконання – 20 балів. Термін надання – 1-8 тиждень.
МК1. Модульна контрольна робота – 30 балів (8 тиждень). Перескладання можливе протягом 9–11 тижнів за розкладом консультацій.

Семестровий модуль № 2

ЛЗ. Оцінка за виконання – 20 балів. Термін надання – 9-15 тиждень.
МК2. Модульна контрольна робота – 30 балів (15 тиждень).

Максимальна оцінка за повний обсяг виконаних навчальних елементів дисципліни – 100 балів.

Остаточним контролюючим моментом освоєння дисципліни  у 2-му семестрі є екзамен. 

Умови допуску до підсумкового контролю
 
До екзамену  допускаються здобувачі вищої освіти, які виконали всі види навчальних елементів навчальної дисципліни на не менш, ніж на 60 %.

Екзамен відбувається за всіма тематичними (змістовними) модулями дисципліни.

Складання/перескладання екзаменів організується за встановленим деканатом розкладом.

Політика освітнього процесу

Здобувач зобов’язаний своєчасно та якісно виконувати всі отримані завдання; за необхідністю з метою з’ясування всіх не зрозумілих під час самостійної та індивідуальної роботи питань, відвідувати консультації викладача. Дотримуватись принципів академічної доброчесності.
 
Робота, яка виконана після встановлених викладачем термінів, не приймається.
 
Відсутність здобувача на контрольній роботі відповідає оцінці «0».

Під час лекції здійснювати телефонні дзвінки забороняється.

Заборонено використання будь-яких підручників, посібників, конспектів лекцій, шпаргалок під час проходження модульних контролів.

2021 рік