Advanced Java
General data
Course ID: | 1000-2M22ZJ |
Erasmus code / ISCED: | (unknown) / (unknown) |
Course title: | Advanced Java |
Name in Polish: | Zaawansowana Java |
Organizational unit: | Faculty of Mathematics, Informatics, and Mechanics |
Course groups: |
(in Polish) Przedmioty obieralne na studiach drugiego stopnia na kierunku bioinformatyka Elective courses for Computer Science |
ECTS credit allocation (and other scores): |
6.00
|
Language: | (unknown) |
Type of course: | elective monographs |
Short description: |
The aim of this course is to familiarize students with the advanced aspects of Java and their practical use in an extensive programming project. |
Full description: |
The aim of this course is to familiarize students with advanced aspects of Java (reflection, annotations, classloaders, dynamic proxy) and their practical use in libraries and frameworks. As part of the lecture, we will learn about the construction of a servlet container and we will try to implement it in teams of several people. Then we will test it efficiently, we will try to determine the bottlenecks of our solution and tune it’s performance. We will not use ready-made solutions and libraries, but implement our own in Java SE following the example of the existing ones. Similarly, for the jax-rs and jpa specifications - we will implement a simplified version of the library supporting the creation of rest services and a solution supporting object-relational mapping (ORM). All of this with the use of git, unit testing, integration and CI / CD. In the laboratory part, we will check how artificial intelligence based on a neural network or a genetic algorithm can cope with the fight at https://www.codingame.com/multiplayer/bot-programming with programs based on heuristics, Minimax or the Monte Carlo method. |
Bibliography: |
JSR 340: Java Servlet 3.1 Specification JSR-000370 Java API for RESTful Web Services 2.1 Specification Final Release JSR 338: JavaTM Persistence 2.2 |
Learning outcomes: |
Knowledge The students know in detail a selected tool or programming language [K_W02, K_W09, K_W10]. Skills The students are able to complete programming projects in a selected tool or programming language [K_U05]. Competences The students are able to acquire and develop on their own the knowledge concerning a selected tool or programming language [K_K04]. |
Assessment methods and assessment criteria: |
Credit for the lecture: by team writing a web server similar to a servlet container, a library supporting the creation of rest sites and a library supporting object-relational mapping. Laboratory credit: by writing several small programs (5-6) playing on https://www.codingame.com/multiplayer/bot-programming |
Classes in period "Winter semester 2023/24" (past)
Time span: | 2023-10-01 - 2024-01-28 |
Navigate to timetable
MO TU W TH WYK
LAB
FR |
Type of class: |
Lab, 30 hours
Lecture, 30 hours
|
|
Coordinators: | Jakub Sitek | |
Group instructors: | Jakub Sitek | |
Students list: | (inaccessible to you) | |
Examination: |
Course -
Grading
Lecture - Examination |
Copyright by University of Warsaw.