I'm a Software Engineer with some 12 years of experience with Java and Spring, among other things. I've formed some strong opinions about Enterprise software development during this time, I've seen a couple of horror stories and projects, seen a few good ones too. I'm always happy to rant about all of them.
We'll go over the Java basics, both the core technology and the language syntax. We'll won't go much into details, and instead we'll focus on things that often get overlooked or forgotten when programming in Java. The main topics we'll discuss are Collections, Exceptions, Generics, AOP, Multithreading and Functional programming in Java. We'll cover some of the good and bad practices around those topics.
Participants should be familiar with at least one OOP language (C++, C#, Python, TypeScript). We'll skim over the Java particularities, but the common OOP fundamentals should already be understood.
- Managed code and the JVM
- Core syntax
- Classes and Objects
- Inheritance and Polymorphism
- Collections
- Exceptions
- Generics
- AOP, Annotations and Lombok
- Testing with JUnit
- Shared-memory vs Message-passing
- Immutable types
- Concurrent collections
- ThreadLocal variables
- Lambdas
- Streams
- Java courses on Percipio - ness.percipio.com
- Java Novice to Javanista - https://ness.percipio.com/journey/717919cf-1692-4bcd-b1ab-db5304aedcad
- Javanista to Java Master - https://ness.percipio.com/journey/4bea8592-3c69-4d9b-8bbe-5532b851f561
- Skill Benchmarks on Percipio (tests)
- Java Developer RoadMap (2022) https://javarevisited.blogspot.com/2019/10/the-java-developer-roadmap.html#axzz6WIboPq6g