Programming II
1000-ZiPR2
Introduction to the Java platform.
Basics of syntax and object-oriented structures.
Auxiliary tools.
Exceptions.
Inheritance, polymorphism.
Interfaces, abstract, inner, nested, and anonymous classes.
Streams and lambda expressions.
Basic API: collections, files, IO, Date and Time.
Threads.
JavaFX.
JDBC and JPA.
Android.
Basics of network programming and network communication support.
Total student workload
1) Lectures – 15 hours.
2) Laboratories – 25 godzin
a. Assigned tasks – 40 godzin
b. Preparation for classes – 40 godzin
3) Preparation for exam – 20 godzin
4) Preparation of final project – 40 godzin
5) Literatury studying – 20 godzin
TOGETHER: 200 godzin
8 ECTS points
Learning outcomes - knowledge
(in Polish) zna podstawowe konstrukcje programistyczne oraz pojęcia składni i semantyki języka Java (K_W03)
ma wiedzę na temat inżynierii oprogramowania, w tym projektowania (wzorce projektowe, architektura oprogramowania, analiza i projektowanie obiektowe), wykorzystania API, narzędzi i środowisk wytwarzania oprogramowania (K_W11)
Learning outcomes - skills
(in Polish) Po ukończeniu kursu student osiąga następujące efekty (kody odnoszą się do efektów dla studiów 1 stopnia na kierunku informatyka - studia inżynierskie):
potrafi pracować indywidualnie, potrafi zarządzać swoim czasem oraz podejmować zobowiązania i dotrzymywać terminów (K_U03)
potrafi pisać, uruchamiać i testować programy w wybranym środowisku programistycznym (K_U05)
projektuje, analizuje pod kątem poprawności i złożoności obliczeniowej oraz programuje algorytmy; wykorzystuje podstawowe techniki algorytmiczne i struktur danych (K_U07)
posiada umiejętność tworzenia prostych, bezpiecznych aplikacji internetowych z wykorzystaniem baz danych (K_U14)
potrafi zaprojektować wygodny interfejs użytkownika ze szczególnym uwzględnieniem aplikacji internetowych (K_U15)
potrafi stworzyć model obiektowy prostego systemu (K_U16)
projektuje oprogramowanie zgodnie z metodyką obiektową (K_U22)
tworzy, ocenia i realizuje plan testowania oprogramowania (K_U26)
Learning outcomes - social competencies
(in Polish) Myśli twórczo w celu udoskonalenia istniejących bądź stworzenia nowych rozwiązań (K_K02)
Jest nastawiony na jak najlepsze wykonanie zadania; dba o szczegół; jest systematyczny (K_K04)
Jest nastawiony na nieustanne zdobywanie nowej wiedzy, umiejętności i doświadczeń; rozumie potrzebę ciągłego doskonalenia się i podnoszenia kompetencji zawodowych (K_K06)
Teaching methods
1. Lectures.
2. Computer laboratories.
3. Homeworks and final project.
Expository teaching methods
- informative (conventional) lecture
Exploratory teaching methods
- laboratory
- practical
Prerequisites
- Programming in C++.
- Basic knowledge about object-oriented programming.
Course coordinators
Assessment criteria
Laboratories: homoweorks and projects.
Lecture: exam
Passing of the course takes place by presenting a programming project made independently in Java and its correct presentation and answering the questions asked.
Bibliography
1. Thinking in Java, Bruce Eckel - the latest edition
2. Documentation for Java SKD.
Additional information
Additional information (registration calendar, class conductors,
localization and schedules of classes), might be available in the USOSweb system: