460-2058/02 – Java Programming I (JAVA I)

Gurantor departmentDepartment of Computer ScienceCredits4
Subject guarantorIng. Jan Kožusznik, Ph.D.Subject version guarantorIng. Jan Kožusznik, Ph.D.
Study levelundergraduate or graduateRequirementChoice-compulsory type A
Year2Semesterwinter
Study languageEnglish
Year of introduction2019/2020Year of cancellation
Intended for the facultiesFEIIntended for study typesBachelor
Instruction secured by
LoginNameTuitorTeacher giving lectures
KOZ01 Ing. Jan Kožusznik, Ph.D.
Extent of instruction for forms of study
Form of studyWay of compl.Extent
Full-time Graded credit 1+2

Subject aims expressed by acquired skills and competences

In Java, student is familiar with: -difference between inheritance as class extension and subtyping as interfaces; -type system and difference between primitive types and object types; -casting among different primitive types and object types; -auto boxing and unboxing between primitive and wrapper types; -accessing filesystem; -interprocess communication through Internet connection. In Java, student can: -construct runnable program; -design and implement a class; -use subclassing to design class hierarchies; -separate code to namespaces and access elements for different namespaces; -use dynamic dispatch; -use interfaces as encapsulation mechanism; -handle and propagate errors by exception mechanism; -use Collection framework for data abstraction and construction for-each, -process strings with regular expressions; -read and write data from text files and binary files; -use lambda expression; -run parallel code in separate thread In Java, student is able assess alternative implementation of collections with respect of performance

Teaching methods

Lectures
Tutorials
Experimental work in labs
Project work

Summary

Students improve their knowledge of object oriented programming a gain another insight in programming languages problematics from point fo view of modern programming language Java. Course follows courses „Introduction to programming“ and „Object oriented programming“ and students are required to pass these courses successfully before enrollment into the course.

Compulsory literature:

SCHILDT, Herbert, 2017. Java: A Beginner’s Guide, Seventh Edition. 7 edition. New York: McGraw-Hill Education. ISBN 978-1-259-58931-7. Oracle.The Java™ Tutorials. accessed September 21, 2016,http://docs.oracle.com/javase/tutorial/index.html.

Recommended literature:

KOŽUSZNIK, Jan. Programming language 1. Opory k předmětu vzniklé v rámci projektu InterDV. SCHILDT, Herbert, 2017. Java: The Complete Reference, Tenth Edition. 10 edition. New York: McGraw-Hill Education. ISBN 978-1-259-58933-1. Bruce Eckel: Thinking in Java, ISBN: 978-0131872486 Joshua Bloch: Effective Java, ISBN: 978-0321356680

Way of continuous check of knowledge in the course of semester

homework, tests, oral exam

E-learning

Other requirements

Knowledge of the object oriented design and skill in the field of the object oriented programming.

Prerequisities

Subject codeAbbreviationTitleRequirement
460-2052 UPR Introduction to Programming Recommended
460-2055 OOP Object Oriented Programming Recommended

Co-requisities

Subject has no co-requisities.

Subject syllabus:

Lectures: 1. Description of Java technology architecture. 2. Data types and programming constructions in Java. 3. Class definition, overriding in Java. Packages. 4. Interface – definition, using, implementation. 5. Class extension. Nested classes, simple lambda expressions. 6. User interface in JavaFX. 7. Generic data types. Exceptions. 8. Collections framework. 9. Strings and regular expressions. 10. Input/Output. 11. Working with filesystem and an advanced working with I/O. 12. Threads and synchronization. 13. Internet communication. Labs: 1. Description of Java technology architecture. 2. Data types and programming constructions in Java. 3. Class definition, overriding in Java. Packages. 4. Interface – definition, using, implementation. 5. Class extension. Nested classes, simple lambda expressions. 6. User interface in JavaFX. 7. Generic data types. Exceptions. 8. Collections framework. 9. Strings and regular expressions. 10. Input/Output. 11. Working with filesystem and an advanced working with I/O. 12. Threads and synchronization. 13. Internet communication.

Conditions for subject completion

Full-time form (validity from: 2019/2020 Winter semester)
Task nameType of taskMax. number of points
(act. for subtasks)
Min. number of pointsMax. počet pokusů
Graded credit Graded credit 100 (100) 51 3
        Test 01 Written test 5  0
        Test 02 Written test 10  0
        Homeworks Other task type 10  0
        Project Semestral project 30  15
        Final Test Written test 45  20
Mandatory attendence participation: Participation in the exercises is compulsory and is monitored. The scope of the compulsory participation will be communicated to the students by the course supervisor at the beginning of the semester. lectures - at least 70% laboratories - at least 90%

Show history

Conditions for subject completion and attendance at the exercises within ISP: Completion of all mandatory tasks within individually agreed deadlines. The extent of participation in the exercises is agreed by the student with the course supervisor at the beginning of the semester.

Show history

Occurrence in study plans

Academic yearProgrammeBranch/spec.Spec.ZaměřeníFormStudy language Tut. centreYearWSType of duty
2024/2025 (B0613A140010) Computer Science P English Ostrava 2 Choice-compulsory type B study plan
2024/2025 (B0714A060019) Biomedical Assistive Technology P English Ostrava 2 Choice-compulsory type B study plan
2023/2024 (B0613A140010) Computer Science P English Ostrava 2 Choice-compulsory type B study plan
2023/2024 (B0714A060019) Biomedical Assistive Technology P English Ostrava 2 Choice-compulsory type B study plan
2023/2024 (B0541A170009) Computational and Applied Mathematics P English Ostrava 2 Optional study plan
2022/2023 (B0613A140010) Computer Science P English Ostrava 2 Choice-compulsory type B study plan
2022/2023 (B0714A060019) Biomedical Assistive Technology P English Ostrava 2 Choice-compulsory type B study plan
2022/2023 (B0541A170009) Computational and Applied Mathematics P English Ostrava 2 Optional study plan
2022/2023 (B2647) Information and Communication Technology (2612R025) Computer Science and Technology P English Ostrava 2 Choice-compulsory study plan
2021/2022 (B0714A060019) Biomedical Assistive Technology P English Ostrava 2 Choice-compulsory type B study plan
2021/2022 (B0613A140010) Computer Science P English Ostrava 2 Choice-compulsory type B study plan
2021/2022 (B0541A170009) Computational and Applied Mathematics P English Ostrava 2 Optional study plan
2021/2022 (B2647) Information and Communication Technology (2612R025) Computer Science and Technology P English Ostrava 2 Choice-compulsory study plan
2020/2021 (B0714A060019) Biomedical Assistive Technology P English Ostrava 2 Choice-compulsory type B study plan
2020/2021 (B0613A140010) Computer Science IJA P English Ostrava 2 Choice-compulsory type A study plan
2020/2021 (B2647) Information and Communication Technology (2612R025) Computer Science and Technology P English Ostrava 2 Choice-compulsory study plan
2020/2021 (B0714A060009) Mobile Technology P English Ostrava 2 Compulsory study plan
2020/2021 (B0541A170009) Computational and Applied Mathematics P English Ostrava 2 Optional study plan
2019/2020 (B0613A140010) Computer Science IJA P English Ostrava 2 Choice-compulsory type A study plan
2019/2020 (B0541A170009) Computational and Applied Mathematics P English Ostrava 2 Optional study plan
2019/2020 (B0714A060009) Mobile Technology P English Ostrava 2 Compulsory study plan

Occurrence in special blocks

Block nameAcademic yearForm of studyStudy language YearWSType of blockBlock owner
EFREI 2023/2024 Full-time English Optional 401 - Study Office stu. block
EFREI 2022/2023 Full-time English Optional 401 - Study Office stu. block
EFREI 2021/2022 Full-time English Optional 401 - Study Office stu. block
EFREI 2020/2021 Full-time English Optional 401 - Study Office stu. block

Assessment of instruction



2023/2024 Winter