Java: Advanced Code Design Training Logo

Java: Advanced Code Design Training

Live Online & Classroom Enterprise Training

This advanced Java course is on writing good software using modern engineering techniques.

Looking for a private batch ?

REQUEST A CALLBACK

Need help finding the right training?

Your Message

  • Enterprise Reporting

  • Lifetime Access

  • CloudLabs

  • 24x7 Support

  • Real-time code analysis and feedback

What is Java: Advanced Code Design Training about?

This course will dig deeper into what makes for "good" code -- safe from bugs, easy to understand, and ready for change. We will explore two paradigms for modern programming: (1) grammars, parsing, and recursive datatypes; and (2) concurrent programming with threads. 

This is a challenging and rigorous course that will help you take the next step on your way to becoming a skilled software engineer. 

What are the objectives of Java: Advanced Code Design Training ?

  • Recursion 
  • Regular Expressions & Grammars 
  • Parser Generators 
  • Concurrent Programming 
  • Thread Safety 
  • Distributed Programming - Message Queues, Sockets, Locks, Synchronisation 

Who is Java: Advanced Code Design Training for?

  • Beginner Programmers curious about Clean Code 
  • Experienced Programmers wanting to practice Clean Code 

What are the prerequisites for Java: Advanced Code Design Training?

None

Available Training Modes

Live Online Training

30 Hours

Self-Paced Training

30 Hours

Course Outline Expand All

Expand All

  • Objectives
  • Recursion
  • Decomposition for a Problem
  • Recursive Implementations
  • Helper Methods
  • Recursive Subproblem
  • Recursive Problems vs. Recursive Data
  • Objectives
  • Immutable lists
  • Recursive datatype definitions
  • Functions over recursive datatypes
  • Null vs. empty, Declared type vs. actual type
  • Objectives
  • Grammars
  • Regular Expressions
  • Context-Free Grammars
  • Objectives
  • Parser Generators
  • Calling the parser
  • Handling Errors
  • Objectives
  • Two Models for Concurrent Programming
  • Starting a thread with an anonymous class
  • Shared Memory
  • Message Passing
  • Objectives
  • Strategy 1: Confinement
  • Strategy 2: Immutability
  • Strategy 3: Using Threadsafe Data Types
  • How to Make a Safety Argument
  • Serializability
  • Objectives
  • Client/server design pattern
  • Streams & Blocking
  • Wire protocols
  • Testing client/server code
  • Objectives
  • Two models for concurrency
  • Stopping
  • Thread safety arguments with message passing
  • Objectives
  • Synchronisation
  • Thread safety argument
  • Goals of concurrent program design
  • Final Assessment / Certification

Who is the instructor for this training?

The trainer for this Java: Advanced Code Design Training has extensive experience in this domain, including years of experience training & mentoring professionals.

Reviews