Advanced Java Programming
This course provides advanced training in developing software using the Java Platform, Standard Edition, or Java SE. It is intended for students with solid experience in structured and object-oriented Java programming, including use of the Collections API and exception handling. Generic types should be understood, at least at a basic level; the course does begin with a refresher and then a more advanced treatment of generic types.
After a quick introduction to the Java Time API, students get familiar with the I/O streams model, file handling, and object serialization, and learn to use streams to communicate over network sockets. A two-chapter unit covers multi-threaded programming and concurrency techniques. We look at dynamic typing in Java, in the Reflection API and with dynamic proxies, and understand the underpinnings of source-code annotations.
Finally, several chapters at the end of the course introduce unit-testing and test-driven-development practices. Here for the first time we introduce external libraries -- JUnit, and the Mockito dynamic-mocking library -- and the study is not entirely about technology but leans more into design and good practice.
Delegates will learn to
•Make effective use of Java generic types.
•Understand the structure of streams in Java, and learn how to use streams to manage file I/O.
•Learn how to use Java Serialization to internalize and externalize potentially complex graphs of objects.
•Communicate between processes using network sockets.
•Write multi-threaded Java applications that safely manage concurrent access to application state.
•Use the Reflection API and dynamic proxies for highly generic tasks, discovery, or code-generation.
•Use standard annotations and develop custom annotations to express meta-data in Java source files.
•Build unit tests for Java classes using JUnit.
•Write effective tests, and design classes for testability.
•Understand test-driven development (TDD) and use dynamic mocking to support isolated testing.
• Reflection API
• Scripting API
• Compiler API
• XML Processing
• XML and XSD
• JAXB lib.
• Threads and Concurrent Programming
• Quick summary
• Multi Thread
• Database Programming
• NIO and NIO2
• Create File
• Delete, Write
• File Control
• Digital Signatures
• Message Digests
• Symmetric/Asymmetric Ciphers
• New Features
• Stream API
• Paralel Stream
completing Java Programming course.
|Capacity||Max 12 Persons|
|Training Type||Classroom / Virtual Classroom|