Course Outline
Generics
- Why, when, and the benefit/cost of generics for government applications
- Type Erasure
- Type Boundaries
- Wildcards
- Generic Methods
Multithreading
- Java Thread System for government systems
- Managing Threads in a government environment
- Interacting with Threads and Thread State for enhanced performance
- Thread Synchronization to ensure data integrity
- Volatile Fields and Synchronized Methods for safe concurrent access
- wait and notify pattern for efficient thread coordination
- join and sleep pattern for controlled execution flow
- Concurrency API for robust multithreading solutions
- Atomic Operations to prevent race conditions
- Thread Pools for managing resource allocation efficiently
Reflection
- When to use and when not to use reflection in government applications
- Uses for Meta-Data in enhancing flexibility and adaptability
- The Reflection API for dynamic code manipulation
- The Class<T> Class for runtime type information
- The java.lang.reflect Package for advanced reflection capabilities
- Reading Type Information to support dynamic configurations
- Navigating Inheritance Trees to understand class hierarchies
- Dynamic Instantiation for flexible object creation
- Dynamic Invocation for runtime method execution
- Reflecting on Generics to handle generic types dynamically
- Accessing private fields using reflection for deep system integration
Annotations
- Aspect-Oriented Programming (AOP) for modular and maintainable code in government systems
- Built-In Annotations to simplify common tasks
- Annotations Model to define custom metadata
- Annotation Types and Annotations for enhanced code documentation
- Annotations vs. Descriptors (XML) for configuration management
Multiprocess Communication
- Shared Memory for efficient inter-process communication in government applications
- Sockets for network communication
- Non-Blocking Sockets for high-performance data transfer
- TCP for reliable data transmission
- URL Objects for resource access over the web
- HTTP and Other TCP Servers for serving client requests
- Datagram Clients and Servers for lightweight communication
- Multithreading in Servers to handle multiple clients concurrently
Requirements
A solid understanding of Java and Object-Oriented Programming (OOP) principles, including interfaces, inheritance, polymorphism, generics, collections, recursive methods, the use of annotations, and varargs, is essential for government IT professionals to develop robust and scalable applications that align with public sector workflows and governance standards.
Testimonials (5)
That we got a complex overview also about the context - for example why do we need some annotations and what they mean. I liked the practical part of the training - having to manually run the commands and call the rest api's
Alina - ACCENTURE SERVICES S.R.L
Course - Quarkus for Developers
The extra information that was shared, the training was not straightforward groovy, which was nice.
Covenant - Vodacom
Course - Groovy Programming
the trainer can clearly explain the topic and can answer every question.
Hannah Mae Lubigan - Security Bank Corporation
Course - Advanced Spring Boot
Training style and trainer helps solve issues encountered during the exercises.
Carl Angelo Gonzales - Security Bank Corporation
Course - Spring Boot for Beginners
The breadth of the topis covered was quite a bit and the trainer tried to do justice to that.