Прикладне програмування

Спеціальність: Комп'ютерні науки (Системи штучного інтелекту)
Код дисципліни: 6.122.13.O.016
Кількість кредитів: 6.00
Кафедра: Системи штучного інтелекту
Лектор: Виклюк Я.
Семестр: 3 семестр
Форма навчання: денна
Мета вивчення дисципліни: Метою викладання дисципліни є вивчення студентами основних понять та структур мови програмування, оволодіння базовими та розширеними функціональними можливостями і створення об’єктно-орієнтованих і процедурних програм.
Завдання: Вивчення навчальної дисципліни передбачає формування у здобувачів освіти компетентностей: загальні компетентності (ЗК): ЗК1. Здатність до абстрактного мислення, аналізу та синтезу. ЗК2. Здатність застосовувати знання у практичних ситуаціях. ЗК3. Знання та розуміння предметної області та розуміння професійної діяльності. ЗК6. Здатність вчитися й оволодівати сучасними знаннями. ЗК7. Здатність до пошуку, оброблення та аналізу інформації з різних джерел. ЗК8. Здатність генерувати нові ідеї (креативність). ЗК9. Здатність працювати в команді. ЗК11. Здатність приймати обґрунтовані рішення. ЗК12. Здатність оцінювати та забезпечувати якість виконуваних. фахові компетентності (ФК): ФК3. Здатність до логічного мислення, побудови логічних висновків, використання формальних мов і моделей алгоритмічних обчислень, проектування, розроблення й аналізу алгоритмів, оцінювання їх ефективності та складності, розв’язності та нерозв’язності алгоритмічних проблем для адекватного моделювання предметних областей і створення програмних та інформаційних систем. ФК8. Здатність проектувати та розробляти програмне забезпечення із застосуванням різних парадигм програмування: узагальненого, об’єктно-орієнтованого, функціонального, логічного, з відповідними моделями, методами й алгоритмами обчислень, структурами даних і механізмами управління. ФК12. Здатність забезпечити організацію обчислювальних процесів в інформаційних системах різного призначення з урахуванням архітектури, конфігурування, показників результативності функціонування операційних систем і системного програмного забезпечення.
Результати навчання: ПР3. Використовувати знання закономірностей випадкових явищ, їх властивостей та операцій над ними, моделей випадкових процесів та сучасних програмних середовищ для розв’язування задач статистичної обробки даних і побудови прогнозних моделей ПР6. Використовувати методи чисельного диференціювання та інтегрування функцій, розв'язання звичайних диференціальних та інтегральних рівнянь, особливостей чисельних методів та можливостей їх адаптації до інженерних задач, мати навички програмної реалізації чисельних методів. ПР9. Розробляти програмні моделі предметних середовищ, вибирати парадигму програмування з позицій зручності та якості застосування для реалізації методів та алгоритмів розв’язання задач в галузі комп’ютерних наук.
Необхідні обов'язкові попередні та супутні навчальні дисципліни: Попередні навчальні дисципліни: Алгоритмізація і програмування Командна робота та презентаційні навички Супутні і наступні навчальні дисципліни: Операційні системи
Короткий зміст навчальної програми: Python - це інтерпретована об'єктно-орієнтована мова програмування високого рівня з строгою динамічною типізацією. Структури даних високого рівня разом із динамічною семантикою та динамічним зв'язуванням роблять її привабливою для швидкої розробки програм, а також як засіб поєднання існуючих компонентів. Python підтримує модулі та пакети модулів, що сприяє модульності та повторному використанню коду. Інтерпретатор Python та стандартні бібліотеки доступні як у скомпільованій так і у вихідній формі на всіх основних платформах. В мові програмування Python підтримується кілька парадигм програмування, зокрема: об'єктно-орієнтована, процедурна, функціональна та аспектно-орієнтована. Прикладні пакети Anaconda, Pandas, NumPy, SciPy відкривають широкі можливості для наукових досліджень із мінімум зусиль і затрат на розгортання робочого середовища. Навчальна дисципліна є інструментальною основою для виконання аналітичної частини подальших дисциплін, а також курсових робіт. Навчальна дисципліна Прикладне Програмування відноситься до циклу професійної підготовки навчальної програми бакалавра за спеціальністю 122 Комп’ютерні науки.
Опис: ТИПИ ДАНИХ І КОЛЕКЦІЙ. ФУНКЦІЇ І МОДУЛІ. РОБОТА З ФАЙЛАМИ. ОБ’ЄКТНО-ОРІЄНТОВАНЕ ПРОГРАМУВАННЯ. БАГАТОПОТОКОВІСТЬ ТА АСИНХРОННІСТЬ. ТЕСТУВАННЯ КОДУ. PYTHON ДЛЯ НАУКОВЦІВ. ДИСТРИБУТИВ ANACONDA І МЕНЕДЖЕР ПАКЕТІВ CONDA. БІБЛІОТЕКА PANDAS. БІБЛІОТЕКА NumPy. БІБЛІОТЕКА Matplotlib
Методи та критерії оцінювання: 1. Виконання лабораторних та практичних робіт та їх захист. 2. Написання контрольних робіт. 3. Написання розрахунково-графічної роботи 4. Екзамен.
Критерії оцінювання результатів навчання: Лабораторна робота, Практична робота, Розрахунково-графічна робота - 40 балів Іспит, Усна компонента - 60 балів
Порядок та критерії виставляння балів та оцінок: 100–88 балів – («відмінно») виставляється за високий рівень знань (допускаються деякі неточності) навчального матеріалу компонента, що міститься в основних і додаткових рекомендованих літературних джерелах, вміння аналізувати явища, які вивчаються, у їхньому взаємозв’язку і роз витку, чітко, лаконічно, логічно, послідовно відповідати на поставлені запитання, вміння застосовувати теоретичні положення під час розв’язання практичних задач; 87–71 бал – («добре») виставляється за загалом правильне розуміння навчального матеріалу компонента, включаючи розрахунки , аргументовані відповіді на поставлені запитання, які, однак, містять певні (неістотні) недоліки, за вміння застосовувати теоретичні положення під час розв’язання практичних задач; 70 – 50 балів – («задовільно») виставляється за слабкі знання навчального матеріалу компонента, неточні або мало аргументовані відповіді, з порушенням послідовності викладення, за слабке застосування теоретичних положень під час розв’язання практичних задач; 49–26 балів – («не атестований» з можливістю повторного складання семестрового контролю) виставляється за незнання значної частини навчального матеріалу компонента, істотні помилки у відповідях на запитання, невміння застосувати теоретичні положення під час розв’язання практичних задач; 25–00 балів – («незадовільно» з обов’язковим повторним вивченням) виставляється за незнання значної частини навчального матеріалу компонента, істотні помилки у відповідях на запитання, невміння орієнтуватися під час розв’язання практичних задач, незнання основних фундаментальних положень.
Рекомендована література: 1. Allen Downey. Think Python, 2nd Edition. How to Think Like a Computer Scientist / O’Reilly, 2015. - 289 p. 2. Charles R. Severance. Python for Everybody: Exploring Data in Python 3 / CreateSpace Independent Publishing Platform, 2016. - 244 pages 3. Wes McKinney & PyData Development Team. pandas: powerful Python data analysis toolkit
Уніфікований додаток: Національний університет «Львівська політехніка» забезпечує реалізацію права осіб з інвалідністю на здобуття вищої освіти. Інклюзивні освітні послуги надає Служба доступності до можливостей навчання «Без обмежень», метою діяльності якої є забезпечення постійного індивідуального супроводу навчального процесу студентів з інвалідністю та хронічними захворюваннями. Важливим інструментом імплементації інклюзивної освітньої політики в Університеті є Програма підвищення кваліфікації науково-педагогічних працівників та навчально-допоміжного персоналу у сфері соціальної інклюзії та інклюзивної освіти. Звертатися за адресою: вул. Карпінського, 2/4, І-й н.к., кімн. 112 E-mail: nolimits@lpnu.ua Websites: https://lpnu.ua/nolimits https://lpnu.ua/integration
Академічна доброчесність: Політика щодо академічної доброчесності учасників освітнього процесу формується на основі дотримання принципів академічної доброчесності з урахуванням норм «Положення про академічну доброчесність у Національному університеті «Львівська політехніка» (затверджене вченою радою університету від 20.06.2017 р., протокол № 35).