Об'єктно-орієнтоване програмування

Спеціальність: Управління ІТ продуктами
Код дисципліни: 6.124.04.O.016
Кількість кредитів: 7.00
Кафедра: Інформаційні системи та мережі
Лектор: к.т.н., доцент Завущак Ірина Іванівна
Семестр: 3 семестр
Форма навчання: денна
Мета вивчення дисципліни: Метою курсу є надання студентам глибоких теоретичних знань та практичних навичок об'єктно-орієнтованого програмування (ООП) на мові C#. Студенти навчаться застосовувати основні принципи ООП для розробки програмного забезпечення, включаючи інкапсуляцію, наслідування, поліморфізм та абстракцію. Також курс охоплює використання стандартних бібліотек та розробку складних програмних додатків.
Завдання: Вивчення навчальної дисципліни передбачає формування у здобувачів освіти компетентностей: загальні компетентності: К02. Здатність застосовувати знання у практичних ситуаціях. К04. Знання та розуміння предметної області та розуміння професійної діяльності. К05. Здатність спілкуватися державною мовою усно і письмово. К06. Здатність спілкуватися іноземною мовою. фахові компетентності: К17. Здатність використовувати системний аналіз як сучасну міждисциплінарну методологію, що базується на прикладних математичних методах та сучасних інформаційних технологіях і орієнтована на вирішення задач аналізу і синтезу технічних, економічних, соціальних, екологічних та інших складних систем. К22. Здатність до комп’ютерної реалізації математичних моделей реальних систем і процесів; проектувати, застосовувати і супроводжувати програмні засоби моделювання, прийняття рішень, оптимізації, обробки інформації, інтелектуального аналізу даних. К23. Здатність використовувати сучасні інформаційні технології для комп’ютерної реалізації математичних моделей та прогнозування поведінки конкретних систем а саме: об’єктно-орієнтований підхід при проектуванні складних систем різної природи, прикладні математичні пакети, застосування баз даних і знань. К24. Здатність організовувати роботу з аналізу та проектування складних систем, створення відповідних інформаційних технологій та програмного забезпечення.
Результати навчання: Після завершення курсу студенти зможуть: 1. Розуміти основи об'єктно-орієнтованого програмування та концепції, такі як класи, об'єкти, методи та властивості. 2. Застосовувати принципи ООП (інкапсуляція, наслідування, поліморфізм, абстракція) у практичних завданнях. 3. Розробляти програмні рішення на мові C#, використовуючи ООП для створення структурованих, масштабованих і підтримуваних додатків. 4. Працювати з бібліотеками та фреймворками .NET, розуміти принципи використання зовнішніх компонентів. 5. Дизайнувати архітектуру програм з використанням паттернів проектування. 6. Тестувати та налагоджувати програмний код, виявляючи помилки та оптимізуючи продуктивність додатків. ПР08. Володіти сучасними методами розробки програм і програмних комплексів та прийняття оптимальних рішень щодо складу програмного забезпечення, алгоритмів процедур і операцій. ПР13. Проектувати, реалізовувати, тестувати, впроваджувати, супроводжувати, експлуатувати програмні засоби роботи з даними і знаннями в комп’ютерних системах і мережах.
Необхідні обов'язкові попередні та супутні навчальні дисципліни: • Алгоритмізація і програмування • Дискретна математика • Програмування та командна робота • Методології системного аналізу • Методи обчислень та візуалізація даних • Організація баз даних та знань
Короткий зміст навчальної програми: Дисципліна "Об'єктно-орієнтоване програмування на C#" спрямована на формування у студентів теоретичних знань та практичних навичок з розробки програмного забезпечення з використанням об'єктно-орієнтованого підходу. Курс охоплює основи мови програмування C#, включаючи синтаксис, типи даних та оператори для реалізації циклів та умов. Студенти ознайомляться з ключовими концепціями ООП, такими як класи, інтерфейси, наслідування, поліморфізм та абстракція. Курс також охоплює роботу з файлами та директоріями, обробку виключних ситуацій (exceptions), використання регулярних виразів та бібліотеки LINQ для обробки даних. Значна увага приділяється роботі з колекціями та інтерфейсами, принципам композиції та реалізації Unit тестів для забезпечення якості коду. Студенти вивчать делегати та опрацювання подій (events), що дозволить їм створювати гнучкі та динамічні системи. Важливим аспектом курсу є серіалізація, яка дозволяє зберігати та передавати об'єкти у різних форматах, що є необхідним для створення сучасних додатків. Після завершення курсу студенти зможуть впевнено використовувати всі перелічені інструменти для розробки продуктивного, масштабованого та підтримуваного програмного забезпечення.
Опис: Основи мови програмування C#. .NET Framework. Структура програм та Code Conventions Типи даних у мові програмування C#. Value types Оператори C# для роботи з циклами. Класи Інтерфейси та колекції в мові C# Exception Handling та робота з файлами Наслідування. Абстракція. Поліморфізм Регулярні вирази та LINQ (Language Integrated Query) Композиція. Агрегація.Юніт тести (MS test) Делегати та опрацювання подій (Events) в мові C# Серіалізація та десеріалізація в .Net
Методи та критерії оцінювання: Діагностика знань відбувається шляхом оцінювання виконаних лабораторних робіт, екзаменаційної контрольної роботи у формі тестових запитань трьох рівнів складності. Оцінювання лабораторних робіт складається з усного опитування та перевірки працездатності комп’ютерних програм. Екзаменаційний контроль полягає у виконанні письмової контрольної роботи у вигляді тестів. Кількість тестових завдань – біля 30. Тести охоплюють усі розділи навчальної дисципліни. У випадку багатоваріантних відповідей на тестове завдання оцінювання здійснюється за правилом „все або нічого”.
Критерії оцінювання результатів навчання: • Поточний контроль (40%): письмові звіти з лабораторних робіт, усне опитування; • Підсумковий контроль (60%, екзамен): письмово-усна форма.
Порядок та критерії виставляння балів та оцінок: 100-88 балів - атестований з оцінкою «відмінно» - Високий рівень: здобувач освіти демонструє поглиблене володіння поняттєвим та категорійним апаратом навчальної дисципліни, системні знання, вміння і навички їх практичного застосування. Освоєні знання, вміння і навички забезпечують можливість самостійного формулювання цілей та організації навчальної діяльності, пошуку та знаходження рішень у нестандартних, нетипових навчальних і професійних ситуаціях. Здобувач освіти демонструє здатність робити узагальнення на основі критичного аналізу фактичного матеріалу, ідей, теорій і концепцій, формулювати на їх основі висновки. Його діяльності ґрунтується на зацікавленості та мотивації до саморозвитку, неперервного професійного розвитку, самостійної науково-дослідної діяльності, що реалізується за підтримки та під керівництвом викладача. 87-71 балів - атестований з оцінкою «добре» - Достатній рівень: передбачає володіння поняттєвим та категорійним апаратом навчальної дисципліни на підвищеному рівні, усвідомлене використання знань, умінь і навичок з метою розкриття суті питання. Володіння частково-структурованим комплексом знань забезпечує можливість їх застосування у знайомих ситуаціях освітнього та професійного характеру. Усвідомлюючи специфіку задач та навчальних ситуацій, здобувач освіти демонструє здатність здійснювати пошук та вибір їх розв’язання за поданим зразком, аргументувати застосування певного способу розв’язання задачі. Його діяльності ґрунтується на зацікавленості та мотивації до саморозвитку, неперервного професійного розвитку. 70-50 балів - атестований з оцінкою «задовільно» - Задовільний рівень: окреслює володіння поняттєвим та категорійним апаратом навчальної дисципліни на середньому рівні, часткове усвідомлення навчальних і професійних задач, завдань і ситуацій, знання про способи розв’язання типових задач і завдань. Здобувач освіти демонструє середній рівень умінь і навичок застосування знань на практиці, а розв’язання задач потребує допомоги, опори на зразок. В основу навчальної діяльності покладено ситуативність та евристичність, домінування мотивів обов’язку, неусвідомлене застосування можливостей для саморозвитку. 49-00 балів - атестований з оцінкою «незадовільно» - Незадовільний рівень: свідчить про елементарне володіння поняттєвим та категорійним апаратом навчальної дисципліни, загальне уявлення про зміст навчального матеріалу, часткове використання знань, умінь і навичок. В основу навчальної діяльності покладено ситуативно-прагматичний інтерес.
Рекомендована література: 1. Яковенко А. М. "Програмування на мові C# для початківців". – Київ: Логос, 2019. Основний підручник для початківців, який покриває базові концепції програмування на C#, включаючи синтаксис, структуру програми та основи ООП. 2. Яковлєв В. В. "Об’єктно-орієнтоване програмування на мові C#". – Харків: Видавництво ХНУРЕ, 2020. Поглиблене вивчення принципів ООП з прикладами на C#, включаючи теми успадкування, поліморфізму, інтерфейсів і абстрактних класів. 3. Трохимець Б. І. "Програмування на платформі .NET з використанням C#". – Львів: БаК, 2021. Розкриває особливості роботи з .NET та C#, включаючи роботу з колекціями, делегатами, подіями та обробкою виняткових ситуацій. 4. Кравець О. М., Воробйова С. О. "Алгоритми та структури даних на C#". – Київ: НАУ, 2018. Охоплює алгоритмічні основи та роботу з структурами даних, які є важливими для реалізації об'єктно-орієнтованих програм на C#. 5. Коваленко В. А. "Програмування на C#: Практикум". – Київ: Освіта України, 2020. Практичний посібник з виконанням завдань різного рівня складності для закріплення теоретичних знань.
Уніфікований додаток: Національний університет «Львівська політехніка» забезпечує реалізацію права осіб з інвалідністю на здобуття вищої освіти. Інклюзивні освітні послуги надає Служба доступності до можливостей навчання «Без обмежень», метою діяльності якої є забезпечення постійного індивідуального супроводу навчального процесу студентів з інвалідністю та хронічними захворюваннями. Важливим інструментом імплементації інклюзивної освітньої політики в Університеті є Програма підвищення кваліфікації науково-педагогічних працівників та навчально-допоміжного персоналу у сфері соціальної інклюзії та інклюзивної освіти. Звертатися за адресою: вул. Карпінського, 2/4, І-й н.к., кімн. 112 E-mail: nolimits@lpnu.ua Websites: https://lpnu.ua/nolimits https://lpnu.ua/integration
Академічна доброчесність: Політика щодо академічної доброчесності учасників освітнього процесу формується на основі дотримання принципів академічної доброчесності з урахуванням норм «Положення про академічну доброчесність у Національному університеті «Львівська політехніка» (затверджене вченою радою університету від 20.06.2017 р., протокол № 35).