Мистецтво програмування
Мета дисципліни:
Дисципліна «Мистецтво програмування» є складовою частиною дисциплін циклу спеціальних дисциплін загально професійної підготовки нормативного блоку.
Мета викладання дисципліни «Мистецтво програмування » – формування навичок у розробці програмного забезпечення с використанням інструментів, шо надає операційна система Windows. Формування у студентів практичних навичок, які б дали змогу ефективно застосовувати їх при розробки додатків під операційну систему Windows.
Завдання дисципліни:
У результаті вивчення запропонованої навчальної дисципліни студенти повинні знати наступне:
– принципи побудови графічної підсистеми Windows;
– керування пам'яттю в Windows.
– механізм переривань ОС Windows.
Основні результати навчання
Володіти загальними принципами функціонування та архітектури комп’ютерних систем та основами операційних систем.
Форми організації освітнього процесу та види навчальних занять
Л – лекційні заняття; ЛЗ – лабораторні заняття; СРС – самостійна робота здобувача вищої освіти; РГР – розрахунково-графічна робота; ПКО – поточні контрольні опитування; МКР – модульна контрольна робота; К – консультації.
Тематика та види навчальних занять
1 тиждень
ЛЗ1. Поняття вікна у Windows. Основні елементи вікна. Концепція батьківського та дочірнього вікна. Структура програми з подієвим керуванням. Мінімальна програма для Windows з вікном на екрані. Створення та відображення вікна.
СРС. К.
2 тиждень
Л1. Модель програмного інтерфейсу операційної системи Windows. Нотація програмного інтерфейсу. Поняття об'єкта ядра та описника об'єкта ядра операційної системи Windows. Модель архітектури Windows.
СРС. К.
3 тиждень
ЛЗ2. . Виведення інформації у вікно. Механізм перемальовки вікна. Концепція області оновлення вікна. Операції з областю оновлення вікна.
СРС. К.
4 тиждень
Л2. Растрові зображення. Види растрових зображень. Значки та курсори. Спосіб виведення растрових зображень із ефектом прозорого фону. Апаратно-залежні та апаратно-незалежні растрові зображення. Операції із растровими зображеннями. Виведення растрових зображень
ПКО1
СРС. К.
5 тиждень
ЛЗ3. Системи координат. Трансформація. Матриця трансформацій. Види трансформацій та їх подання у матриці трансформацій. Перетворення у сторінковій системі координат. Режими масштабування.
СРС. К.
6 тиждень
Л3. Виведення тексту у Windows. Концепція шрифту. Характеристики шрифту Поняття фізичного та логічного шрифту. Операції із фізичними шрифтами. Операції із логічними шрифтами. Параметри ширини та висоти логічного шрифту.
СРС. К.
7 тиждень
ЛЗ4. Поняття процесу та потоку. Створення та завершення потоку. Призупинення та відновлення потоку. Контекст потоку.
ПКО2
СРС. К.
8 тиждень
Л4. Поняття асинхронної процедури (APC). Асинхронні процедури режиму ядра: спеціальна та нормальна APC-процедури. Асинхронні процедури режиму користувача.
МКР1. СРС. К.
9 тиждень
ЛЗ5. Синхронізація потоків у межах процесу Windows. Критична секція. Операції із критичною секцією. Атомарні операції.
СРС. К.
10 тиждень
Л5. Операції з очікуваною умовою. Приклад використання очікуваної умови синхронізації потоків.
СРС. К.
11 тиждень
ЛЗ6. Процедури очікування на звільнення об'єкта ядра. Очікувані таймери. Віконні таймери..
ПКО3
СРС. К.
12 тиждень
Л6. Структури даних загального призначення як ядра ОС Windows. Подання рядків стандарту Unicode. Подання двозв'язкових списків..
СРС. К.
13 тиждень
ЛЗ7. Поняття асинхронної процедури (APC). Призначення асинхронних процедур. Типи асинхронних процедур. Операції із асинхронними процедурами.
СРС. К.
14 тиждень
Л7. Керування пам'яттю в Windows. Менеджер пам'яті Віртуальна пам'ять процесу. Керування пам'яттю в режимі користувача. Сторінка віртуальної пам'яті. Купа (сміттєзвалище, heap). Проеціювання файлів на згадку.
ПКО4
СРС. К.
15 тиждень
ЛЗ8. Структура віртуальної пам'яті Windows. Види сторінок. Стану сторінок. Структура віртуальної адреси. Трансляція віртуальної адреси у фізичну. Кешування віртуальних адрес.
МКР2. СРС. К.
Індивідуальна робота
Не передбачена.
Самостійна робота
Самостійна робота складає 60 годин. Розподіл самостійної роботи за видами навчальних робіт:
1) підготовка до лекційних занять – 20 годин;
2) підготовка до лабораторних занять – 40 годин;
Процедура оцінювання
Система оцінювання рівня навчальних досягнень ґрунтується на принципах ЄКТС та є накопичувальною. Дисципліна поділяється на два семестрові модулі. Здобувачі протягом семестру готуються до лекційних та лабораторних робіт, виконують 2 модульні контрольні роботи.
Модульні контрольні роботи виконуються у письмовій формі. Модульна робота складається з теоретичної частини (2 запитання) та практичної частини (1 задача). Відповідь на кожне теоретичне питання оцінюється 5 балами. Правильне розв’язання задачі оцінюється в 15 балів.
Кожний модуль оцінюється у максимально можливі 50 балів:
Семестровий модуль № 1
ЛР1- ЛР4. – 25 балів.
МКР1. – 25 балів (8 тиждень). Перескладання можливе протягом 9–11 тижнів за розкладом консультацій.
Семестровий модуль № 2
ЛР5- ЛР8. – 25 балів.
МКР2. – 25 балів (15 тиждень).
Максимальна оцінка за повний обсяг виконаних навчальних елементів дисципліни у семестрі – 100 балів.
Підсумковим контролем з дисципліни в першому семестрі є залік за результатами виконаних лабораторних робіт та модульних контрольних робіт.
Політика освітнього процесу
Здобувач зобов’язаний своєчасно та якісно виконувати всі отримані завдання; за необхідністю з метою з’ясування всіх не зрозумілих під час самостійної та індивідуальної роботи питань, відвідувати консультації викладача. Дотримуватись принципів академічної доброчесності.
Виконаний не свій варіант завдання здобувачем не оцінюється.
Робота, яка виконана після встановлених викладачем термінів, не приймається.
Відсутність здобувача на екзамені або на контрольній роботі відповідає оцінці «0».
Під час лекції здійснювати телефонні дзвінки забороняється.