CITB408 Програмиране на Java

Анотация:

В курса CITB408 Програмиране с Java се изучава синтаксисът на езика Java и концепциите за изграждане на обектно-ориентирани софтуерни решения. Курсът е разделен на теоретична и практическа част. Теоретичната част на курса се провежда в лекционна зала и представлява описание на синтаксиса и семантиката на основните програмни структури на езика Java. Разглеждат се и теми свързани с подходите за писане на „добър“ код и изграждане на модулни и лесно разширяеми обектно-ориентирани приложения. Представени са примери за използване на регулярни изрази при обработване на символни низове. В практическата част на курса се решават конкретни задачи, след разглеждане на сходни примерни задания. По време на всички занятия се акцентира на използването на добри практики при проектиране и реализиране на малки софтуерни проекти, с Java базирани технологии.

прочети още
Информационни технологии

Преподавател(и):

гл. ас. Христина Костадинова  д-р

Описание на курса:

Компетенции:

При завършване на курса обучаваните ще могат:

• да разработват обектно-ориентирани софтуерни приложения на Java;

• да използват в софтуерни проекти способи за управление на изключения;

• да записват данни във файлове, да прочитат информация, която е записана във файлове;

• да запазват състоянието на обектите, с които работят (сериализират данните);

• да извличат символни низове от текст като използват регулярни изрази;

• да избират най-подходящите колекции от данни, според изискванията на бизнес логиката и да манипулират ефективно елементите в тези колекции;

• да спазват принципите за разработване на модулни и лесноразширяеми обектно-ориентирани проекти


Предварителни изисквания:
Обучаваните трябва да имат базови знания по език за програмиране и основните концепции при проектиране и разработване на обектно-ориентирани софтуерни приложения.

Форми на провеждане:
Редовен

Учебни форми:
Лекция

Език, на който се води курса:
Български

Теми, които се разглеждат в курса:

  1. Въведение в java. Примитивни типове данни. Оператори в java. Приоритет на изпълнение на операторите. Контролиращи структури в Java. if, switch, while, do-while, for, break, continue. Класове и обекти в Java – част 1. ООП. Член-данни и методи. Конструктори. Ключови думи this, final и static. Тип Изброим (Enum).
  2. Класове и обекти в Java – част 2. Наследяване и полиморфизъм. Използване на super. Предефиниране на методи
  3. Абстрактни класове. Интерфейси. Пакети.
  4. Масиви в Java. Контрол върху версиите на кода (Source Control)
  5. Build Tools. Тестове (Unit Testing)
  6. Управление на изключения. Вход и изход в Java. Сериализация
  7. SOLID Принципи
  8. Generics. Comparable. Comparator. Методи equals() и hashCode()
  9. Collections Framework. List. Queue
  10. Collections Framework. Set. Map. Stream API. Lambda изрази
  11. Символни низове в Java. String, StringBuffer и StringBuilder. Регулярни изрази (Regular Expressions)
  12. Collections Framework. Set. Map. Stream API. Lambda изрази
  13. Шаблони за дизайни при разработване на ООП приложения (Design Patterns)
  14. Представяне на проекти

Литература по темите:

1. Herbert Schildt, Danny Coward, Java: The Complete Reference, Thirteenth Edition 13th Edition, McGraw Hill, 2024

2. Joshua Bloch, Effective Java 3rd Edition, 2018

3. Raoul-Gabriel Urma, Mario Fusco, Alan Mycroft Modern Java in Action: Lambdas, Streams, Functional and Reactive Programming 2nd Edition, Manning, 2018

4. Eric Freeman, Elisabeth Robson, Bert Bates, Kathy Sierra, Head First Design Patterns: A Brain-Friendly Guide, O'Reilly Media, Inc., 2004

5. Alexander Shwets, Dive into Design Patterns, 2024