Об'єктно-орієнтоване проєктування та програмування
Спеціальність: Комп'ютерні науки (Системи штучного інтелекту)
Код дисципліни: 6.122.13.O.009
Кількість кредитів: 6.00
Кафедра: Системи штучного інтелекту
Лектор: Михайлишин В. Ю.
Семестр: 2 семестр
Форма навчання: денна
Завдання: Сформувати у студентів науково-обґрунтовані погляди на сучасні технологічні процеси в інформаційній галузі. Ознайомити їх з об’єктно-орієнтованим програмуванням. Його концепцією, основними сутностями та способами застосування. Навчити дотримуватись SOLID принципів та використовувати дизайн патерни у процесі розробки.
Результати навчання: 1. Використовувати методологію системного аналізу об’єктів, процесів і систем для задач аналізу, прогнозування, управління та проектування динамічних процесів в макроекономічних, технічних, технологічних і фінансових об’єктах.
2. Застосовувати знання методології та CASE-засобів проектування складних систем, методів структурного аналізу систем, об'єктно- орієнтованої методології проектування при розробці і дослідженні функціональних моделей організаційно-економічних і виробничо- технічних систем.
Необхідні обов'язкові попередні та супутні навчальні дисципліни: Алгоритмізація та програмування ч.1
Командна робота та презентаційні навички
Алгоритмізація та програмування ч.2
Короткий зміст навчальної програми: Метою курсу є формування знань студента щодо проєктування та розробки програмного забезпечення із застосуванням об'єктно-орієнтованої парадигми програмування. У курсі розглядаються принципи об'єктно-орієнтованого програмування (інкапсуляція, успадкування, поліморфізм), необхідність оптимального балансу між наслідуванням та композицією, специфіка використання абстрактних класів та інтерфейсів, елементи об’єктно орієнтованого аналізу та проектування, підходи до проектування інформаційних систем з використання об’єктно-орієнтованого дизайну, принципи DRY, KISS, SOLID та шаблони проєктування. Для створення об'єктно-орієнтованих комп’ютерних програм в курсі використовуються мови програмування C#, С++, Java та інтегровані середовища розробки Visual Studio Community (JetBrains Rider, Visual Studio Code, Intelij Idea).
Навчальна дисципліна «Мови та парадигми програмування» відноситься до циклу загальної підготовки навчальної програми бакалавра за спеціальністю 122 «Комп’ютерні науки» (спеціалізація «Системи штучного інтелекту»).
Опис: Основні принципи ООП. SOLID принципи.
Оголошення та ініціалізація змінних; приведення примітивних типів; різниця між примітивними типами та вказівниковими типами; читання і запис полів об’єкта; життєвий цикл об’єкта
Використання Java операторів
СТВОРЕННЯ І ВИКОРИСТАННЯ МАСИВІВ МОВОЮ ЯВА
ВИКОРИСТАННЯ ЦИКЛІВ МОВИ JAVA
РОБОТА З МЕТОДАМИ ТА ІНКАПСУЛЯЦІЄЮ ЗАСОБАМИ МОВИ JAVA
РОБОТА З НАСЛІДУВАННЯМ ЗАСОБАМИ МОВИ ЯВА
РОБОТА З СПЕЦІАЛІЗОВАНИМИ КЛАСАМИ МОВИ JAVA
БАГАТОПОТОКОВІСТЬ І АСИНХРОННІСТЬ ЗАСОБАМИ МОВИ JAVA
Методи та критерії оцінювання: 1. Виконання лабораторних та практичних робіт та їх захист.
2. Написання контрольних робіт.
3. Написання розрахунково-графічної роботи
4. Екзамен.
Критерії оцінювання результатів навчання: Лабораторна робота, Практична робота, Розрахунково-графічна робота - 40 балів
Іспит, Усна компонента - 60 балів
Порядок та критерії виставляння балів та оцінок: 100-88 балів - атестований з оцінкою «відмінно» - Високий рівень: здобувач освіти демонструє поглиблене володіння поняттєвим та категорійним апаратом навчальної дисципліни, системні знання, вміння і навички їх практичного застосування. Освоєні знання, вміння і навички забезпечують можливість самостійного формулювання цілей та організації навчальної діяльності, пошуку та знаходження рішень у нестандартних, нетипових навчальних і професійних ситуаціях. Здобувач освіти демонструє здатність робити узагальнення на основі критичного аналізу фактичного матеріалу, ідей, теорій і концепцій, формулювати на їх основі висновки. Його діяльності ґрунтується на зацікавленості та мотивації до саморозвитку, неперервного професійного розвитку, самостійної науково-дослідної діяльності, що реалізується за підтримки та під керівництвом викладача. 87-71 балів - атестований з оцінкою «добре» - Достатній рівень: передбачає володіння поняттєвим та категорійним апаратом навчальної дисципліни на підвищеному рівні, усвідомлене використання знань, умінь і навичок з метою розкриття суті питання. Володіння частково-структурованим комплексом знань забезпечує можливість їх застосування у знайомих ситуаціях освітнього та професійного характеру. Усвідомлюючи специфіку задач та навчальних ситуацій, здобувач освіти демонструє здатність здійснювати пошук та вибір їх розв’язання за поданим зразком, аргументувати застосування певного способу розв’язання задачі. Його діяльності ґрунтується на зацікавленості та мотивації до саморозвитку, неперервного професійного розвитку. 70-50 балів - атестований з оцінкою «задовільно» - Задовільний рівень: окреслює володіння поняттєвим та категорійним апаратом навчальної дисципліни на середньому рівні, часткове усвідомлення навчальних і професійних задач, завдань і ситуацій, знання про способи розв’язання типових задач і завдань. Здобувач освіти демонструє середній рівень умінь і навичок застосування знань на практиці, а розв’язання задач потребує допомоги, опори на зразок. В основу навчальної діяльності покладено ситуативність та евристичність, домінування мотивів обов’язку, неусвідомлене застосування можливостей для саморозвитку. 49-00 балів - атестований з оцінкою «незадовільно» - Незадовільний рівень: свідчить про елементарне володіння поняттєвим та категорійним апаратом навчальної дисципліни, загальне уявлення про зміст навчального матеріалу, часткове використання знань, умінь і навичок. В основу навчальної діяльності покладено ситуативно-прагматичний інтерес.
Рекомендована література: Joshua Bloch. Effective Java, Second Edition. – Addison-Wesley – 2008 – 346p.
Raoul-Gabriel Urma. Java 8 in Action: Lambdas, Streams, and functional-style programming, First Edition. – Manning Publications – 2014 – 424p
Ho, Clarence, Harrop, Rob, Schaefer, Chris. Pro Spring 4. – Apress – 2014 – 683 p
Уніфікований додаток: Національний університет «Львівська політехніка» забезпечує реалізацію права осіб з інвалідністю на здобуття вищої освіти. Інклюзивні освітні послуги надає Служба доступності до можливостей навчання «Без обмежень», метою діяльності якої є забезпечення постійного індивідуального супроводу навчального процесу студентів з інвалідністю та хронічними захворюваннями. Важливим інструментом імплементації інклюзивної освітньої політики в Університеті є Програма підвищення кваліфікації науково-педагогічних працівників та навчально-допоміжного персоналу у сфері соціальної інклюзії та інклюзивної освіти. Звертатися за адресою:
вул. Карпінського, 2/4, І-й н.к., кімн. 112
E-mail: nolimits@lpnu.ua
Websites: https://lpnu.ua/nolimits https://lpnu.ua/integration
Академічна доброчесність: Політика щодо академічної доброчесності учасників освітнього процесу формується на основі дотримання принципів академічної доброчесності з урахуванням норм «Положення про академічну доброчесність у Національному університеті «Львівська політехніка» (затверджене вченою радою університету від 20.06.2017 р., протокол № 35).