Previous year: summer semester 2018 / 2019
Due to the current situation, the lectures of the NPRG021 course will be held online using the ZOOM platform https://zoom.us/ (works on most of the commonly used systems, i.e., Windows, Linux, Mac, Android). The lecture in English will be held at the usual time at 14:00 on Monday. Instructions how to connect will be sent via email.
The practicals will not be held. The slides with exercises will be regularly provided at here. At the end of the lecture, the exercises will be explained. Also, do not hesitate to contact the particular teachers of the practicals with questions.
- Practicals are in the Unix computer lab
- Sign yourself to a practical using the information system
- who is not signed to a practical within first three weeks of the semester will not receive “zápočet”
- Information for those who do not want to attend the practicals
- if you do not want to attend practicals, you can also sign yourself to the “virtual” practical
- for the “virtual”practical, there are the same requirements and deadline as for the “regular” ones
- if you repeat the course the requirements you fulfilled previous
year can be accepted (but only in the scope of a single study)
- explicitly write about it to the teacher of the particular practical (within first three weeks of the semester)
- if you did not write the home project program, the topic is not
- but it is not necessary to think out a new one; you can propose the original one
- implementations of exercises from the practicals can be obtained
- WARNING: commonly there are incomplete implementations
Exam and “zápočet”
- Exam is a written test
- To obtain “zápočet” it is necessary to create a home project program and successfully pass the practical programming test
- Next, there will be three home-works
- It is necessary to obtain at least 150 of points from them
- Homeworks will be posted in ReCodEx and announced during the lecture
- Practicals attendance is mandatory! If you miss more than 3 practicals, you have to obtain at least 210 from the home-works
- The home project has to non-trivially exploiting a covered technology.
- The project has to be appropriately complex.
- The topic of the project has to be agreed (by email) with the lecturer till 22nd May 2020. “Agreed” means that the topic is suggested by a student and confirmed by the lecturer.
- The project should be submitted till the end of June; the latest
deadline is 22nd September 2020.
- The project is submitted by email; only if it is necessary the project is shown personally.
- The project is submitted as a zip archive, which contains:
build.xmlfile for ant (allows compilation, javadoc generation, and execution of the project),
- Maven or Gradle can be used too
- user documentation (as a plain-text or html or pdf) so the project can be launched and tested,
- explicitly specified version of Java, which is necessary for
compilation and execution (ideally specified directly in
- In-depth view of the Java language
- Reflection API
- Generics, annotations
- ClassLoaders, Security
- Distributed technologies: RMI,…
- Component model JavaBeans
- Java Enterprise Edition: Servlets, EJB, Spring,…
- Java Micro Edition: Java for mobile and embedded systems, CLDC, MIDP, MEEP
- Other Java technologies: Java APIs for XML, JDBC, JMX,…
- Other languages compiled to Java bytecode (Kotlin,…)