Програмування для мобільних платформ
Спеціальність: Інженерія програмного забезпечення
Код дисципліни: 6.121.01.E.044
Кількість кредитів: 8.00
Кафедра: Програмне забезпечення
Лектор: Старший викладач Кутельмах Р.К.
Семестр: 6 семестр
Форма навчання: денна
Завдання: Вивчення навчальної дисципліни передбачає формування у здобувачів освіти компетентностей:
фахові компетентності професійного спрямування:
• ФКС 1.4: Уміння розробляти ефективні крос-платформні мобільні застосунки із використанням сучасних мов, технологій і фреймворків.
Результати навчання: У результаті вивчення навчальної дисципліни здобувач освіти повинен бути здатним продемонструвати такі програмні результати навчання:
• розробляти ефективні мобільні застосунки із використанням сучасних мов, технологій і фреймворків;
• знати архітектуру та концепції, що лежать в основі мобільних платформ;
• розуміти основні характеристики, відмінності, особливості сучасних мобільних платформ;
• знати особливості проектування, розроблення та тестування програмного забезпечення для мобільних платформ;
• обирати необхідний інструментарій для роботи з конкретною мобільною платформою;
• розробляти архітектуру ПЗ для мобільних платформ.
Необхідні обов'язкові попередні та супутні навчальні дисципліни: Попередні навчальні дисципліни:
Кросплатформне програмування
Супутні і наступні навчальні дисципліни:
Основи Інтернету речей
Короткий зміст навчальної програми: У процесі вивчення дисципліни студенти ознайомлюються з поняттями і методами розроблення програмного забезпечення для мобільних платформ. Курс охоплює концепції, що лежать в основі архітектури мобільних застосунків, зручного інтерфейсу користувача, UX-дизайну.
Опис: Тема 1: Програмування на Flutter
Початок роботи з Flutter
Dart
Вступ до віджетів
Робота з розміткою
Інтерактивність та навігація у застосунках
Базове керування станом
Вступ до асинхронного програмування
Збереження даних та взаємодія з інтернет-сервісами
Розширене керування станом за допомогою потоків
Використання пакетів Flutter
Тема 2: Мова програмування Kotlin. Основи та розширені можливості.
Android Studio, макети та ресурси.
Активності, фрагменти, навігація.
Додаткова навігація.
Класи View Model та LiveData. Data binding.
Підтримка баз даних засобами бібліотеки Room. Патерн Model-View-ViewModel.
Відображення великих обсягів даних за допомогою Recycler view.
Набір інструментів Jetpack Compose для створення інтерфейсу користувача.
Тема 3: Мобільна платформа iOS.
Огляд мобільної платформи iOS.
Тема 4: UX-дизайн та маркетинг мобільних застосунків.
Проектування зручного інтерфейсу користувача та UX-дизайн. Метод UX-піраміди. Маркетинг мобільних застосунків.
Методи та критерії оцінювання: Оцінювання звітів та усне опитування при захисті лабораторних робіт, усне опитування на іспиті.
Критерії оцінювання результатів навчання: Лабораторні заняття - 45 балів.
Екзаменаційний контроль - 55 балів.
Порядок та критерії виставляння балів та оцінок: 100-88 балів - атестований з оцінкою «відмінно» - Високий рівень: здобувач освіти демонструє поглиблене володіння поняттєвим та категорійним апаратом навчальної дисципліни, системні знання, вміння і навички їх практичного застосування. Освоєні знання, вміння і навички забезпечують можливість самостійного формулювання цілей та організації навчальної діяльності, пошуку та знаходження рішень у нестандартних, нетипових навчальних і професійних ситуаціях. Здобувач освіти демонструє здатність робити узагальнення на основі критичного аналізу фактичного матеріалу, ідей, теорій і концепцій, формулювати на їх основі висновки. Його діяльності ґрунтується на зацікавленості та мотивації до саморозвитку, неперервного професійного розвитку, самостійної науково-дослідної діяльності, що реалізується за підтримки та під керівництвом викладача. 87-71 балів - атестований з оцінкою «добре» - Достатній рівень: передбачає володіння поняттєвим та категорійним апаратом навчальної дисципліни на підвищеному рівні, усвідомлене використання знань, умінь і навичок з метою розкриття суті питання. Володіння частково-структурованим комплексом знань забезпечує можливість їх застосування у знайомих ситуаціях освітнього та професійного характеру. Усвідомлюючи специфіку задач та навчальних ситуацій, здобувач освіти демонструє здатність здійснювати пошук та вибір їх розв’язання за поданим зразком, аргументувати застосування певного способу розв’язання задачі. Його діяльності ґрунтується на зацікавленості та мотивації до саморозвитку, неперервного професійного розвитку. 70-50 балів - атестований з оцінкою «задовільно» - Задовільний рівень: окреслює володіння поняттєвим та категорійним апаратом навчальної дисципліни на середньому рівні, часткове усвідомлення навчальних і професійних задач, завдань і ситуацій, знання про способи розв’язання типових задач і завдань. Здобувач освіти демонструє середній рівень умінь і навичок застосування знань на практиці, а розв’язання задач потребує допомоги, опори на зразок. В основу навчальної діяльності покладено ситуативність та евристичність, домінування мотивів обов’язку, неусвідомлене застосування можливостей для саморозвитку. 49-00 балів - атестований з оцінкою «незадовільно» - Незадовільний рівень: свідчить про елементарне володіння поняттєвим та категорійним апаратом навчальної дисципліни, загальне уявлення про зміст навчального матеріалу, часткове використання знань, умінь і навичок. В основу навчальної діяльності покладено ситуативно-прагматичний інтерес.
Рекомендована література: Рекомендована література
Базова
1. Greenhalgh D., Skeen J., Bailey A., Kotlin Programming: The Big Nerd Ranch Guide 2nd Edition, Big Nerd Ranch Guides, 2021, 541 pp.
2. Griffiths D., Griffiths D., Head First Android Development: A Learner's Guide to Building Android Apps with Kotlin 3rd Edition, O'Reilly Media, 2021, 930 pp.
3. Sills B., Gardner B., Marsicano K., Stewart C., Android Programming: The Big Nerd Ranch Guide 5th Edition, Big Nerd Ranch Guides, 2022, 688 pp.
4. Alessandria S., Flutter Cookbook: 100+ step-by-step recipes for building cross-platform, professional-grade apps with Flutter 3.10.x and Dart 3.x, 2nd Edition, Packt Publishing, 2023, 712 pp.
Допоміжна
5. Ghita C., Kickstart Modern Android Development with Jetpack and Kotlin, Packt Publishing, 2022, 472 pp.
6. Staiano F., Designing and Prototyping Interfaces with Figma, Packt Publishing, 2022, 382 pp.
Навчально-методичне забезпечення
М.В. Давидов, А.Б. Демчук, О.В. Лозинська, Програмне забезпечення мобільних пристроїв: навчальний посібник – Львів: Видавництво «Новий Світ-2000» 2020. – 218 с.
Інформаційні ресурси
1. https://flutter.dev/
2. https://developer.android.com/
3. https://developer.apple.com/ios/
Уніфікований додаток: Національний університет «Львівська політехніка» забезпечує реалізацію права осіб з інвалідністю на здобуття вищої освіти. Інклюзивні освітні послуги надає Служба доступності до можливостей навчання «Без обмежень», метою діяльності якої є забезпечення постійного індивідуального супроводу навчального процесу студентів з інвалідністю та хронічними захворюваннями. Важливим інструментом імплементації інклюзивної освітньої політики в Університеті є Програма підвищення кваліфікації науково-педагогічних працівників та навчально-допоміжного персоналу у сфері соціальної інклюзії та інклюзивної освіти. Звертатися за адресою:
вул. Карпінського, 2/4, І-й н.к., кімн. 112
E-mail: nolimits@lpnu.ua
Websites: https://lpnu.ua/nolimits https://lpnu.ua/integration
Академічна доброчесність: Політика щодо академічної доброчесності учасників освітнього процесу формується на основі дотримання принципів академічної доброчесності з урахуванням норм «Положення про академічну доброчесність у Національному університеті «Львівська політехніка» (затверджене вченою радою університету від 20.06.2017 р., протокол № 35).