Udacity Logo
Log InJoin for Free

Advanced Java Programming Techniques

Course

The best Java programs combine excellent software designs with modern language features. This course will teach you some lesser known features of Java, such as functional programming, I/O, serialization, and reflection. Strengthen your software design intuition by exploring the design ideas that underpin understandable, extensible and scalable software systems. Learn the basic concepts and techniques of concurrent programming in Java, so your programs can take advantage of modern, multi-core hardware.

The best Java programs combine excellent software designs with modern language features. This course will teach you some lesser known features of Java, such as functional programming, I/O, serialization, and reflection. Strengthen your software design intuition by exploring the design ideas that underpin understandable, extensible and scalable software systems. Learn the basic concepts and techniques of concurrent programming in Java, so your programs can take advantage of modern, multi-core hardware.

Intermediate

4 weeks

Real-world Projects

Completion Certificate

Last Updated February 6, 2024

Skills you'll learn:
Java reflection • Design pattern fundamentals • Java stream API • Dependency injection
Prerequisites:
Design pattern fundamentals • Basic Java • Concurrent computing

Course Lessons

Lesson 1

Introduction to Advanced Java Programming Techniques

In this lesson, you'll be introduced to the course and what to expect!

Lesson 2

Functional Programming in Java

In this lesson, you'll learn how to implement lambdas, functional interfaces, and other Java functional programming tools.

Lesson 3

Working with Files & I/O

In this lesson, you'll learn how to use files and streams in Java.

Lesson 4

Design Patterns

In this lesson, you'll learn about common design patterns and when to use them.

Lesson 5

Reflection

In this lesson, you'll learn reflection, the ability of a program to examine its own structure at runtime.

Lesson 6

Introduction to Concurrent Programming

In this lesson, you'll be introduced to concurrency and threading in Java.

Lesson 7 • Project

Project: Parallel Web Crawler

In this lesson, you will create a parallel web crawler to replace legacy code at a large company.

Taught By The Best

Photo of Dustin Hellstern

Dustin Hellstern

Software Engineer

Dustin is a software engineer with 15 years of Java experience, including over 7 years designing and building large-scale systems for one of the top companies in the tech industry. He is excited to share his knowledge with you in this program.

The Udacity Difference

Combine technology training for employees with industry experts, mentors, and projects, for critical thinking that pushes innovation. Our proven upskilling system goes after success—relentlessly.

Demonstrate proficiency with practical projects

Projects are based on real-world scenarios and challenges, allowing you to apply the skills you learn to practical situations, while giving you real hands-on experience.

  • Gain proven experience

  • Retain knowledge longer

  • Apply new skills immediately

Top-tier services to ensure learner success

Reviewers provide timely and constructive feedback on your project submissions, highlighting areas of improvement and offering practical tips to enhance your work.

  • Get help from subject matter experts

  • Learn industry best practices

  • Gain valuable insights and improve your skills

Unlock access to Advanced Java Programming Techniques and the rest of our best-in-class catalog

  • Unlimited access to our top-rated courses

  • Real-world projects

  • Personalized project reviews

  • Program certificates

  • Proven career outcomes

Full Catalog Access

One subscription opens up this course and our entire catalog of projects and skills.

Month-To-Month

4 Months

Average time to complete a Nanodegree program

*Discount applies to the first 4 months of membership, after which plans are converted to month-to-month.

Get Started Today

Advanced Java Programming Techniques

Month-To-Month


  • Unlimited access to our top-rated courses
  • Real-world projects
  • Personalized project reviews
  • Program certificates
  • Proven career outcomes

4 Months

Average time to complete a Nanodegree program

  • All the same great benefits in our month-to-month plan
  • Most cost-effective way to acquire a new set of skills
Discount applies to the first 4 months of membership, after which plans are converted to month-to-month.