Course title, code: Java Applications, GAINBAN-JAVAALKA-1
Getting to know the Java programming language, the Java Spring framework, Creating graphical applications with JavaFX, learning to use a modern development environment (IntelliJ, NetBeans, Eclipse).
- Java basics, loops, types, methods, file management, - Complex data structures, Array, List, Map, Set. - Object oriented programming in Java - Database management, JDBC, ORM, Hibernate, JPA - Database management tasks with multiple tables - Server-side programming, Java Spring, Java Spring Boot, MVC, Annotations - Development of server-side applications - Thymeleaf template engine, Forms, Server-side validation, - Java Persistence API, Hibernate, ORM, - Dependency injection, CRUD operations. - Spring Boot Security, - Authentication and Authorization, - RESTful API,
Course content - labs:
- Java basics, loops, types, methods, file management, - Complex data structures, Array, List, Map, Set. - Object oriented programming in Java - Database management, JDBC, ORM, Hibernate, JPA - Database management tasks with multiple tables - Server-side programming, Java Spring, Java Spring Boot, MVC, Annotations - Development of server-side applications - Thymeleaf template engine, Forms, Server-side validation, - Java Persistence API, Hibernate, ORM, - Dependency injection, CRUD operations. - Spring Boot Security, - Authentication and Authorization, - RESTful API,
Knowledge:
- He/she knows the operations of hardware and software elements, the technology of their implementation, how to solve problems related to their operation and the possibilities of the interconnection of IT and other technical systems.
- He/she knows the main programming paradigms, programming languages, development tools. His/her knowledge covers the modelling of IT systems, creation of database based systems, as well as the structure, operation and implementation of computer networks. His/her knowledge covers the characteristics of intelligent systems, the specificity of mobile application development, the management of state-of-the art general purpose operating systems, as well as the aspects of IT security.
- He/she is familiar with the important software development methodologies, and the notation systems for IT designs and documentation.
- He knows the vocabulary and special terms of the engineering profession in the Hungarian and English languages at least on the basic level.
- He/she is able to develop applications, program client-server and WEB, mobile operating systems, develop multiplatform systems.
He/she can apply his/her knowledge acquired during his/her study to acquire deeper knowledge in the field of information engineering and to process special literature and solve problems related to information technology.
- He/she constantly improves his/her knowledge and keeps up with the development of the computer engineering profession.
- He/she is open to acquire new methods, programming languages and develop skills to use them.
- He/she makes an effort to work efficiently and to high standards.
- He/she has a security-conscious attitude in posession of his/her professional knowledge, and is aware of potential threats and opportunities for attack, as well as is prepared to prevent them.
Mid-term study requirements:
During the semester, students take two 20-point computer-based exams in the laboratory, and at home they complete a 30-point Homework assignment from the lecture topics and a 30-point Homework assignment from the laboratory topics. The conditions for a successful semester are: achieving a total of at least 20 points on the two computer-based exams, at least 15 points on the lecture Homework assignment, and at least 15 points on the lab Homework assignment. In the first week of the semester, the instructor informs the students about the venue and time of the exams and information about the Homeworks.
Exam requirements:
1st position: The use of GAI tools is not permitted when solving tasks. This means that GAI tools cannot be used when creating or solving formative or summative assessment elements, and the use of generative AI constitutes academic misconduct. The use of AI tools for language and spelling checking is not subject to the complete ban under the 1st position.
Learning materials uploaded to Teams. All students are provided with separate, modern computer access in the laboratories. Internet resources are available in the computer service room reserved for students.
[1] Joshua Bloch: Effective Java, Addison-Wesley Professional, 2023, ISBN: 0134686047 {2} Herbert Schildt, Danny Coward: The Complete Reference, MCGRAW HILL BOOK CO, 2023, ISBN: 1265058431 [3] AJ Henley Jr, Dave Wolf: Introduction to Java Spring Boot: Learning By Coding, Independently Published, 2023 ISBN: 1088797245 [4] Juha Hinkula: Full Stack Development with Spring Boot 3 and React, Packt Publishing Ltd, 2023, ISBN: 1805126814
Online sources: https://www.w3schools.com/java/java_intro.asp https://www.geeksforgeeks.org/java/java/ https://www.java.com/en/ https://www.programiz.com/java-programming https://www.w3schools.com/java/ https://spring.io/ https://www.geeksforgeeks.org/advance-java/spring-boot/ https://www.baeldung.com/spring-boot https://www.tutorialspoint.com/spring_boot/index.htm