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

ID: 6000
Навчальна дисципліна професійної підготовки
Год внедрения: 
2020.
Количество кредитов ЭКТС: 
5.50.
Форма контроля: 
Зачет.
Преподаватель: 
к.т.н., доц. Рудніченко М. Д.
Количество аудиторных занятий: 
14 годин лекційних занять, 30 години лабораторних занять, 30 годин практичних занять.

Анотація навчальної дисципліни

Мета дисципліни:

формування у здобувачів вищої освіти практичних навичок в використанні обєктно-орієнтованої парадигми проектування та розробки програмної логіки із застосуванням сучаних технологій, бібліотек та фреймворков зі створення програмних застосувань на базі мови програмування Java.

Завдання дисципліни:
  • вивчити основні принципи об’єктно-орієнтованого програмування;
  • отримати вміння практичного застосування принципів ООП; 
  • отримати базові знання та розвинути навички використання мови програмування Java для розробки об’єктно-орієнтованих програмних застосувань;
  • освоїти можливості використання інтегрованих середовищ розробки програмних застосувань.

 

Програмні компетентності

  • Здатність до абстрактного мислення, аналізу та синтезу.
  •  Здатність застосовувати знання у практичних ситуаціях. 
  • Здатність до розуміння предметної області та професійної діяльності.
  • Здатність до пошуку, оброблення та узагальнення інформації з різних джерел.
  • Здатність оцінювати та забезпечувати якість виконуваних робіт.
  • Здатність аналізувати об’єкт проектування або функціонування та його предметну область.
  • Здатність  застосовувати стандарти в області ІСТ при розробці функціональних профілів, побудові та інтеграції систем, продуктів, сервісів і елементів інфраструктури організації.
  • Здатність до проектування, розробки, налагодження та вдосконалення системного, комунікаційного та програмно-апаратного забезпечення ІСТ, Інтернету речей (ІоТ), комп’ютерно-інтегрованих систем та системної мережної структури, управління ними.
  • Здатність управляти якістю продуктів і сервісів ІСТ протягом їх життєвого циклу.
  • Здатність вибору, проектування,    розгортання інтегрування, управління, адміністрування та супроводжування ІСТ та інфокомунікацій, сервісів та інфраструктури організації.
  • Здатність управляти та    користуватися    сучасними інформаційно-комунікаційними системами та технологіями (у тому числі такими, що базуються на використанні Інтернет). 
  • Здатність використовувати сучасні технології проектування в розробці алгоритмічного та програмного забезпечення ІСТ.
  • Здатність оволодіти сучасними технологіями програмування та тестування програмного забезпечення.

 

Програмні результати навчання

 Використовувати базові знання інформатики й сучасних ІСТ, навички програмування, технології безпечної роботи в комп'ютерних мережах, методи створення баз даних та інтернет-ресурсів, технології розроблення алгоритмів і комп’ютерних програм мовами високого рівня із застосуванням об’єктно-орієнтованого програмування для розв’язання задач проектування і використання ІСТ

Демонструвати знання сучасного рівня технологій інформаційних систем, практичні навички програмування та використання прикладних і спеціалізованих комп’ютерних систем та середовищ з метою їх запровадження у професійній діяльності.

Обґрунтовувати вибір технічної структури та розробляти відповідне програмне забезпечення, що входить до складу ІСТ.

Видобувати знання шляхом інтеграції та аналізу великих даних, отриманих з різноманітних та різнорідних джерела інформації. Вміти обґрунтовувати вибір абстрактних типів даних та структур даних при проектуванні програмного забезпечення ІСТ.

 

Кількість аудиторних занять

14 годин лекційних занять, 30 години лабораторних занять, 30 годин практичних занять

 

Форми організації освітнього процесу та види навчальних занять

  • Л – лекційні заняття;
  • ЛЗ – лабораторні заняття;
  • ПЗ – практичні заняття;
  • СРС – самостійна робота здобувача вищої освіти;
  • РГР – розрахунково-графічна робота;
  • ПКО – поточні контрольні опитування;
  • МКР – модульна контрольна робота;
  • К – консультації.

 

Тематика та види навчальних занять

  • 1 тиждень 
    • ЛЗ1. Принципи розробки консольних застосувань. Частина 2
    • ПЗ1. Введення в розробку десктопних GUI додатків на Java. Частина 1
    • СРС. К. 
  • 2 тиждень 
    • Л1. Обробники подій у технологіях AWT і SWT для розробки програмних застосувань з графічним інтерфейсом [1, c. 478-480; 3, c.339-373, c.515-570].
    • ЛЗ2. Можливості та особливості обробки виняткових ситуацій. Частина 1
    • ПЗ2. Введення в розробку десктопних GUI застосувань на Java. Частина 2
    • СРС. К. 
  • 3 тиждень
    • ЛЗ3. Можливості та особливості обробки виняткових ситуацій. Частина 2
    • ПЗ3. Робота з дизайнером форм десктопних GUI застосувань на Java. Частина 1
    • СРС. К.
  • 4 тиждень
    • Л2. Обробники подій у фреймворку Swing для розробки програмних застосувань з графічним інтерфейсом [1, c. 345-352; 2, c.201-220; 3, c. 300- 335, c.375-476].
    • ЛЗ4. Створення додатків баз даних за допомогою JDBC. Частина 1
    • ПЗ4. Робота з дизайнером форм десктопних GUI застосувань на Java. Частина 2
    • ПКО1. СРС. К. 
  • 5 тиждень
    • ЛЗ5. Створення додатків баз даних за допомогою JDBC. Частина 2
    • ПЗ5. Створення десктопних GUI застосувань на Java з введенням, обчисленням і виведенням. Частина 1
    • СРС. К. 
  • 6 тиждень
    • Л3. Обробники подій у RIA-технології JAVA FX [4, c.11-23, c.261-267].
    • ЛЗ6. Принципи розробки мережевих застосувань. Частина 1
    • ПЗ6. Створення десктопних GUI застосувань на Java з введенням, обчисленням і виведенням. Частина 2
    • СРС. К. 
  • 7 тиждень
    • ЛЗ7. Принципи розробки мережевих застосувань. Частина 2
    • ПЗ7. Додавання обробників подій зміни стану компоненета десктопних GUI застосувань на Java. Частина 1
    • ПКО2. СРС. К. 
  • 8 тиждень
    • Л4. Концепція колекцій і їх основний перелік [1, c. 314-319; 2, c.253-281; 3, c. 653-711].
    • ЛЗ8. Використання регулярних виразів. Частина 1
    • ПЗ8. Додавання обробників подій зміни стану компоненета десктопних GUI застосувань на Java. Частина 2
    • МКР1. СРС. К. 
  • 9 тиждень
    • ЛЗ9. Використання регулярних виразів. Частина 2
    • ПЗ9. Створення графічних зображень для десктопних GUI застосувань засобами Java. Частина 1
    • СРС. К. 
  • 10 тиждень
    • Л5. Основні принципи застосування та роботи з робочим оточення розробника [5, c.19-33, c.169-221, c.361-394].
    • ЛЗ10. Основи розробки графічного інтерфейсу користувачів. Частина 1
    • ПЗ10. Створення графічних зображень для десктопних GUI застосувань засобами Java. Частина 2
    • СРС. К. 
  • 11 тиждень
    • ЛЗ11. Основи розробки графічного інтерфейсу користувачів. Частина 2
    • ПЗ11. Можливості малювання у власній панелі десктопного GUI застосування з використанням Graphics. Частина 1
    • ПКО3. СРС. К. 
  • 12 тиждень
    • Л6. Принципи роботи систем автоматичного складання проектів [2, c.395-403, c.813-827;8].
    • ЛЗ12. Робота з графічними зображеннями і подіями. Частина 1
    • ПЗ12. Можливості малювання у власній панелі десктопного GUI застосування з використанням Graphics. Частина 2
    • СРС. К. 
  • 13 тиждень
    • ЛЗ13. Робота з графічними зображеннями і подіями. Частина 2
    • ПЗ13. Основи роботи з Java 2D API. Частина 1
    • СРС. К. 
  • 14 тиждень
    • Л7. Принципи побудови модульних тестів [2, c.395-403, c.813-827;8].
    • ЛЗ14. Організація процесів серіалізації даних в зовнішні файли.
    • ПЗ14. Основи роботи з Java 2D API. Частина 2
    • ПКО4. СРС. К.
  • 15 тиждень
    • ЛЗ15. Основи роботи з потоками і багатозадачністю
    • ПЗ15. Можливості створення і використання градієнтів і текстур
    • МКР2. СРС. К.

 

Індивідуальна робота

Виконується РГР. 

Мета РГР: набуття загальних та спеціальних компетентностей майбутніх бакалаврів, поглиблення теоретичних знань та практичних навичок розробки десктопних програмних застосувань на базі використання мови Java. 

  •  1–7 тижні Отримання завдання. Аналіз літературних джерел з основних положень з розробки десктопних програмних застосувань. Аналіз можливостей мови Java для розробки десктопних програмних застосувань. Проектування структури десктопного програмного застосування.
  • 8–14 тижні Розробка структури головних класів проекту. Створення інтерфейсу десктопного програмного застосування. Написання програмного коду реалізації основної логіки десктопного програмного застосування. Написання модульних тестів перевірки роботи коду десктопного програмного застосування. Оформлення пояснювальної записки до РГР.
  • 15 тиждень Захист РГР.

 

Самостійна робота

Самостійна робота складає 91 годину. Розподіл самостійної роботи за видами навчальних робіт:

  • 1) підготовка до лекційних занять – 16 годин;
  • 2) підготовка до лабораторних занять – 30 годин;
  • 3) підготовка до практичних занять – 30 годин;
  • 4) виконання РГР – 15 годин.

 

Процедура оцінювання

Система оцінювання рівня навчальних досягнень ґрунтується на принципах ЄКТС та є накопичувальною. Дисципліна поділяється на 2 семестри та по два семестрові модулі в кожному. Здобувачі протягом 4 семестру готуються до лекційних, лабораторних та практичних занять, загалом виконують 2 модульні контрольні роботи, РГР.

Модульні контрольні роботи № 1, № 2 виконуються у письмовій формі. Модульна робота складається з теоретичної частини (2 запитання) та практичної частини (1 задача). Відповідь на кожне теоретичне питання оцінюється максимум 10 балами. Правильне розв’язання задачі оцінюється в 10 балів.

Кожний модуль оцінюється у максимально можливі 50 балів.

Максимальна оцінка, яку може отримати здобувач за всі виконані види робіт – 100 балів. 

Семестровий модуль № 1

  • ПКО1 та ПКО2 – на базі отриманих результатів по відповідних лабораторних роботах, оцінка за кожне 5 балів. Термін проведення 3 та 7 тижні.
  • РГР(ч.1). Оцінка за виконання – 10 балів. Термін надання – 8 тиждень.
  • МКР1. Модульна контрольна робота – 30 балів (8 тиждень). Перескладання можливе протягом 9–11 тижнів за розкладом консультацій.

Семестровий модуль № 2
 

  • ПКО3 та ПКО4 – на базі отриманих результатів по відповідних лабораторних роботах, оцінка за кожне 5 балів. Термін проведення 11 та 14 тижні.
  • РГР(ч.2). Оцінка за виконання – 10 балів. Термін надання та захист – 14–15 тижні. 
  • МКР2. Модульна контрольна робота – 30 балів (15 тиждень).

Максимальна оцінка за повний обсяг виконаних навчальних елементів дисципліни за кожний семестр – 100 балів.

Підсумковим контролем з дисципліни є залік.

 

Умови допуску до підсумкового контролю

Підсумковим контролем з дисципліни є залік, засвоєння навчального матеріалу з дисципліни оцінюється на підставі результатів поточного та рубіжного модульного контролю. Залік отримують здобувачі вищої освіти, які виконали всі види навчальних елементів навчальної дисципліни не менш, ніж на 60 %.

 

Політика освітнього процесу

Здобувач зобов’язаний своєчасно та якісно виконувати всі отримані завдання; за необхідністю з метою з’ясування всіх не зрозумілих під час самостійної та індивідуальної роботи питань, відвідувати консультації викладача. Дотримуватись принципів академічної доброчесності. 

Виконаний не свій варіант завдання здобувачем не оцінюється.

Робота, яка виконана після встановлених викладачем термінів, не приймається.

Відсутність здобувача на екзамені або на контрольній роботі відповідає оцінці «0».

Під час лекції здійснювати телефонні дзвінки забороняється.

 

Літературні джерела:

  1. Монахов В.В. Мова програмування Java і середовище NetBeans / В.В. Монахов. - СПб .: БХВ-Петербург, 2011. - 704 с.
  2. Блінов І.М. Java. Методи програмування / І. Н. Блінов, В. С. Романчик. - Мінськ: «Чотири чверті», 2013. - 896 с. https://drive.google.com/open?id=1KNvsfr5AGCV9YCOCiStS0S2UL4fLqHCC ava
  3.  Бібліотека професіонала, том 1 / С. Хорстманн, Г.Корнелл. - М .: Вільямс, 2013. - 816 с.
  4. Хорстманн С.Java 2. Бібліотека професіонала, том 2 / С. Хорстманн, Г.Корнелл. - М .: Вільямс, 2013. - 992 с.
  5. Машнін Т.С. JavaFX 2.0: розробка RIA-додатків / Т.С. Машнін.- СПб.: БХВ-Петербург, 2012. - 320 с.
  6. Чакон С. Git для професійного програміста / С. Чакон, Б. Штрауб. - СПб .: Пітер, 2016. - 496 с.
  7. Mitesh Soni Jenkins 2.x Continuous Integration Cookbook / Soni Mitesh, Alan Mark Berg. - Packt Publishing, 2017. - 438 p.
  8. Керівництво по Maven (повна версія) [Електроний ресурс]. - Режим доступу:] https://proselyte.net/tutorials/maven/
  9. Тестування в Java [Електроний ресурс]. - Режим доступу: https://habr.com/ru/post/120101/
  10. Статичний аналіз коду: що можуть інструментальні засоби [Електроний ресурс]. - Режим доступу: http://www.jetinfo.ru/stati/staticheskij-analiz-koda-chto-mogut-instrume...
  11. Робота з базою даних Java DB [Електроний ресурс]. - Режим доступу: https://netbeans.org/kb/docs/ide/java-db_ru.html
  12. Рудніченко М.Д. Методичні вказівки до Виконання лабораторних робіт з дисципліни «Об'єктно-орієнтоване програмування» для студентів спеціальності 126 - Інформаційні системи та технології / Укл .: Рудніченко М.Д., Козлов А.Ю., Косенко О.Д. - Одеса: ОНПУ, 2019. - 144 с. (Електронна версія), Реєстраційний номер № 6405-РС-2019.
  13. Багриновский К.А. Хрустальов Є.Ю. Нові інформаційні технології. - М .: ЕКО, 2015. - 212 с.
  14. Гавриков М.М. Теоретичні основи розробки та реалізації мов програмування: Навчальний посібник. - М .: КНОРУС, 2013. - 178 с.
  15. Голіцина О.Л. Мови програмування: Навчальний посібник. - М .: Форум; ИНФРА-М, 2015. - 400 с.
  16. Жилов Д.А. Теорія інформаційних систем: досвід побудови. - М .: Світ, 2013. -523 с.
  17. Іванова Г.С. Основи програмування Підручник для вузів. - М .: Изд-во МГТУ ім. Н.е. Баумана, 2013. - 303 с.
  18. Лафоре Р. Структури даних і алгоритми в Java. Класика Computers Science. 2-е изд. - СПб .: Пітер, 2013. - 704 с.
  19. Вайсфельд Метт. Об'єктно-орієнтоване мислення. - СПб .: Пітер, 2014. - 304 с.
  20. Гамма Е., Хелм Р. Прийоми об'єктно-орієнтованого проектування. Патерни проектування. - СПб .: Пітер; ДМК Пресс, 2010. - 366 с.
  21. Кауфман В.Ш. Мови програмування. Концепції та принципи. - Саратов: профосвіти, 2017. - 464 с.
  22. Хорев П.Б. Об'єктно-орієнтоване програмування. - Москва: Академія, 2015.
  23. Власенко О.Ф. Основи програмування на Java. Розробка GUI. Методичні вказівки до виконання лабораторних робіт. - Ульяновськ: УлГТУ, 2015. - 101 с.
  24. Телепова Т.П. Програмування графіки. Лабораторний практикум. - Єкатеринбург: Російський державний професійно-педагогічний університет (РГППУ), 2020. - 55 с.