Анотація дисципліни “Алгоритми мовою Java” 2025

Обсяг дисципліни, годин (кредитів ЄКТС): 5 кредитів (150 год.)

МЕТА НАВЧАЛЬНОЇ ДИСЦИПЛІНИ:

Метою даного курсу є закріплення у студентів базових знань по програмуванню на мові JAVA. Засвоєння основних принципів об’єктного підходу, ознайомлення з історією мови програмування JAVA і його еволюцією на базі тих, що існують. Студенти повинні освоїтися з термінологією програмування та алгоритмами мови JAVA і навчитися використовувати переваги об’єктно-орієнтованого програмування для комп’ютерного моделювання реальних і концептуальних систем.

 

ЗАВДАННЯ НАВЧАЛЬНОЇ ДИСЦИПЛІНИ:

Надання студентам необхідних знань та практичних навичок з основ програмування, принципи та алгоритми мови JAVA в історичному контексті, парадигма ООП, об’єктно-орієнтований підхід до створення програм, переваги і цілі ООП, використання технологій в роботі. Студент повинен уміти розбити вихідну програму на взаємозв’язаних логічних модулі відповідно до принципів ООП, користуватися середовищем програмування NetBeans, закодувати програму і отримати виконуваний модуль.

ПЕРЕДРЕКВІЗИТИ:

Передумовою для вивчення дисципліни є володіння теоретичними та практичними знаннями з курсів «Інформаційні технології», «Основи алгоритмізації та програмування», «Алгоритми і методи обчислень» та «Основи WEB-дизайну»

ПОСТРЕКВІЗИТИ:

Дисципліни, які будуть використовувати результати навчання даного курсу: «Об’єктно-орієнтоване програмування», «Комп’ютерні системи та мережі», «Дослідження операцій» та інші.

 

Навчальні цілі дисципліни полягають у формуванні у студентів:

загальних програмних компетентностей компонентам освітньої програми»

  ЗК 1 ЗК 2 ЗК 3 ЗК 4 ЗК 7 ЗК 8 ЗК 9 ЗК 10 ЗК 12 ЗК 13 ЗК 14 ЗК 22 ЗК 23 ЗК 24
ВК 2.21 + + + + + + + + + + + + + +

ЗК 1. Здатність до абстрактного мислення, аналізу та синтезу.

ЗК 2. Здатність застосовувати знання у практичних ситуаціях.

ЗК 3. Здатність планувати та управляти часом.

ЗК 4. Знання і розуміння предметної області та розуміння професії.

ЗК 7. Навички використання інформаційних і комунікаційних технологій.

ЗК 8. Здатність проведення досліджень на відповідному рівні.

ЗК 9. Здатність вчитися і бути сучасно навченим.

ЗК 10. Здатність до пошуку, оброблення та аналізу інформації зрізних джерел.

ЗК 12. Здатність до адаптації та дії в новій ситуації.

ЗК 13. Здатність генерувати нові ідеї (креативність).

ЗК 14. Уміння виявляти, ставити та вирішувати проблеми.

ЗК 22. Здатність працювати автономно.

ЗК 23. Здатність розробляти та управляти проектами.

ЗК 24. Прихильність безпеці.

 

спеціальних (фахових) програмних компетентностей компонентам освітньої програми»

  ФК 2 ФК 3 ФК 11 ФК 15
ВК 2.21 + + + +

ФК 2. Здатність використовувати сучасні методи і мови програмування для розроблення алгоритмічного та програмного забезпечення.

ФК 3. Здатність створювати системне та прикладне програмне забезпечення комп’ютерних систем та мереж.

ФК 11. Здатність оформляти отримані робочі результати у вигляді презентацій, науково-технічних звітів.

ФК 15. Здатність аргументувати вибір методів розв’язування спеціалізованих задач, критично оцінювати отримані результати, обґрунтовувати та захищати прийняті рішення.

 

забезпечення програмних результатів навчання (ПРН) відповідними компонентами освітньої програми»

  ПРН 1 ПРН 2 ПРН 6 ПРН 7 ПРН 8 ПРН 9 ПРН 10 ПРН 13 ПРН 14 ПРН 15 ПРН 16 ПРН 20
ВК 2.21 + + + + + + + + + + + +

ПРН 1. Знати і розуміти наукові положення, що лежать в основі функціонування комп’ютерних засобів, систем та мереж.

ПРН 2. Мати навички проведення експериментів, збирання даних та моделювання в комп’ютерних системах.

ПРН 6. Вміти застосовувати знання для ідентифікації, формулювання і розв’язування технічних задач спеціальності, використовуючи методи, що є найбільш придатними для досягнення поставлених цілей.

ПРН 7. Вміти розв’язувати задачі аналізу та синтезу засобів, характерних для спеціальності.

ПРН 8. Вміти системно мислити та застосовувати творчі здібності до формування нових ідей.

ПРН 9. Вміти застосовувати знання технічних характеристик, конструктивних особливостей, призначення і правил експлуатації програмно-технічних засобів комп’ютерних систем та мереж для вирішення технічних задач спеціальності.

ПРН 10. Вміти розробляти програмне забезпечення для вбудованих і розподілених застосувань, мобільних і гібридних систем, розраховувати, експлуатувати, типове для спеціальності обладнання.

ПРН 13. Вміти ідентифікувати, класифікувати та описувати роботу комп’ютерних систем та їх компонентів.

ПРН 14. Вміти поєднувати теорію і практику, а також приймати рішення та виробляти стратегію діяльності для вирішення завдань спеціальності з урахуванням загальнолюдських цінностей, суспільних, державних та виробничих інтересів.

ПРН 15. Вміти виконувати експериментальні дослідження за професійною тематикою.

ПРН 16. Вміти оцінювати отримані результати та аргументовано захищати прийняті рішення.

ПРН 20. Усвідомлювати необхідність навчання впродовж усього життя з метою поглиблення набутих та здобуття нових фахових знань, удосконалення креативного мислення.

 

В результаті вивчення дисципліни студент повинен
знати:

  • принципи та алгоритми мови JAVA в історичному контексті
  • парадигма ООП
  • об’єктно-орієнтований підхід до створення програм
  • що таке клас
  • що таке об’єкт
  • зв’язок між об’єктами
  • переваги і цілі ООП
  • природність
  • надійність
  • повторне використання
  • супровід
  • здібність до розширення
  • інкапсуляція
  • спадкоємство
    • множинне спадкоємство
    • абстракції
  • поліморфізм
  • інтерфейси
  • об’єкти на реальному світі
  • використання попередніх технологій в ООП

 

вміти:

  • розбити вихідну програму на взаємозв’язаних логічних модулі відповідно до принципів ООП
  • користуватися середовищем програмування NetBeans
  • закодувати програму і отримати виконуваний модуль

 

Зміст дисципліни (тематика):

 

Змістовий модуль 1.

  1. Навіщо потрібні структури даних і алгоритми? Зберігання реальних даних. Інструментарій програміста
  2. Моделювання. Огляд структур даних
  3. Об’єктно-орієнтоване програмування
  4. Структури даних бібліотеки Java
  5. Підтримка масивів у Java
  6. Розподіл програми на класи

Змістовий модуль 2.

  1. Масиви
  2. Просте сортування
  3. Стеки і черги
  4. Пов’язані списки
  5. Рекурсія
  6. Нетривіальне сортування
  7. Двійкові дерева
  8. Хеш-таблиці
  9. Графи. Зважені графи
  10. Криптографічні алгоритми та захист інформації
  11. Розробка програмного забезпечення для людей з обмеженими можливостями

 

 

Види робіт:
лекції, самостійна робота, лабораторні заняття

 

Форма підсумкового контролю: залік