NDAK15000U Advanced Java
Programming systems software requires managing complexity. Among the myriad of software programming languages, Java has gained prominence recently, as evidenced by projects such as JBoss, Tomcat, Lucene, and Hadoop. In this course we take a look at Java and the available programming methods and paradigms that develop it an excellent tool to develop competitive, distributed systems. This is not a beginner Java course and is intended for students with basic understanding in structured and object-oriented Java programming.
- Advanced Java concurrency and communication constructs and libraries.
- Advanced Java generics and reflection constructs.
- Design and implement unit tests.
- Implement multi-threaded Java programs.
- Build distributed programs with network communication as the primary form of communication.
- Make effective use of Java generics in elegant system design.
- Use Reflection for runtime code generation and introspection.
- Analyze and tune the performance of an application running on the Java Virtual Machine.
- Use database adapters to connect to databases.
- Use the Java platform as a tool to build distributed competitor systems and reason about their behavior.
To be defined.
Operating systems concepts, such as concurrency and communication abstractions.
Written feedback is provided as comments to submitted assignments in Absalon.
Continuous feedback will only be provided during the week of teaching.
PhD’s can register for MSc-course by following the same procedure as credit-students, see link above.
- 2,5 ECTS
- Type of assessment
- Written assignment, 5 daysTo pass the course, the student must pass the final larger project assignment. The assignment is take-home, and its duration will be set to five days. Submission in Absalon.
- Exam registration requirements
To qualify for the exam, the student must pass 60% of the assignment points of the five assignments offered during the week the course is held.
- All aids allowed
- Marking scale
- passed/not passed
- Censorship form
- No external censorship
One internal examiner.
- Exam period
The exam will be held in the week following the course.
The re-exam will consist of a resubmission of the larger project assignment used as the regular exam.
Students who do not qualify for the exam can qualify for a re-exam by passing 60% of the assignments of the five assignments offered during the course. The qualification must be obtained at least two weeks before the re-exam.
Criteria for exam assesment
See learning outcomes.
- Practical Training