Advanced Java
JAVA is a powerful programming language that is excellent for business,finance,web development, API development, micro-services, Mobile Development etc.This course will help you master computer programming and software development using JAVA. If you're an experienced developer, this course will help you to become familiar with the JAVA programming language on an even deeper level.
This JAVA programming course quickly takes you through programming concepts for revision and then moves onto the far more advanced concepts quickly and shows you how to implement various programming concepts in JAVA. Throughout the course, you'll create and run programs that make use of one or more JAVA concepts, such as program structure with implementing design patterns, and various advanced programming concepts.
Learning Outcome
By the end of this course, the learner may be expected to have understanding and skill on the following:
- In depth advanced development methodologies using Java.
- Understanding of advanced design patterns for development using Java.
- Construction patterns
- UML
- Advanced OOP concepts pertaining to Java development.
- Advanced programming concepts of Java.
- Efficient development practices.
- Integration Techniques.
Prerequisites:
Skills:
- Good understanding of OOP.
- Ability to program in Java.
- Ability to use IDE for Java.
- Compile and Deploy software in Java.
- Understand the entire development lifecycle in Java.
- Deep understanding of the workings of the OS in use (including the filing system).
- Basic CLI.
System
- OS with full admin / root access.
- Access to all ports.
- Full Network Access.
Lab Requirements (can be provided by trainer for USD 20 per user)
- Ubuntu server (18.04 or above)
- Root access
- 16GB RAM
- 50GB Storage
- Minimum of 5Mbps symmetric link
Outline
Duration: 3 days.
Daily routine: Each day shall constitute 8 hours inclusive of two 15 minute breaks and an hour’s lunch break.
Difficulty: Moderate
- Design Patterns
- Introducing Design Patterns
- Behavioral Design Patterns
- Introducing behavioral design patterns
- Chain of responsibility pattern
- Command pattern
- Iterator pattern
- Creational Design Patterns
- Introduction
- Abstract factory
- Builder
- Singleton
- Architectural Patterns
- Introduction
- Event-driven pattern
- Microservices pattern
- Model-view-controller pattern
- Programming Concepts
- Recursion
- Instance Construction
- Static initialization
- Object Methods
- How to design Classes and Interfaces
- Uses of Generics
- Enums and Annotations
- Efficient Methods
- Programming Guidelines
- Advanced Exception Handling
- Concurrency Best Practices
- Built-in Serialization
- Reflection
- Dynamic Language Support
- Java Compiler API
- Java Agents
- Practical Implementation: Streaming in Java
- Kafka streaming
- Setup and configuration
- Starting Cluster and Producer
- Controlling Producers
- Serializers
- Auto-committing and refactoring code
- Partition assignments
- Multiple producers
- Assessment
Practical, connected learning
My wider training approach brings hands-on implementation and systems thinking together, connecting technology with real operational needs.