YoVDO

Data Oriented Programming in Java 21 - Solving the Countdown Game

Offered By: Java via YouTube

Tags

Java Courses Stream API Courses Data-Oriented Programming Courses Sealed Types Courses

Course Description

Overview

Save Big on Coursera Plus. 7,000+ courses at $160 off. Limited Time Only!
Explore Data Oriented Programming in Java 21 through a practical demonstration of solving the Countdown game. Learn how to leverage new JDK features including Records, Sealed Types, Pattern Matching, Unnamed Patterns, Exhaustive Switches, and Stream API enhancements like mapMulti() and Gatherers. Discover efficient coding techniques as you implement both top-down and bottom-up algorithms, utilize anonymous classes as non-denotable types, and compare different approaches to solve this mathematical puzzle. Gain insights into writing readable, efficient Java code while tackling a fun programming challenge.

Syllabus

Do you feel like a coffee break?
Introducing the Countdown game and its rules
Introducing the Haskell algorithm translated to Java
Computing all the permutations of all the subsets
Splitting the sets to apply the four operations
Filtering the invalid operations
Computing the final result and the string of characters
Using Data Oriented Programming to model the data
Wrapping up this algorithm
Writing a bottom up algorithm leveraging Data Oriented Programming
Using Optional to discard invalid mapping operations
Getting rid of Optional with Stream.mapMulti
Implementing resolve with an exhaustive switch and pattern matching
Using a Gatherer to inserting an element at a specific place in a sorted stream
Using anonymous classes and non-denotable types
Using the Gatherer in the final process
Making the algorithm efficient
Writing the final algorithm using Records
Comparing the two algorithms
That's it for today, talk to you soon!


Taught by

Java

Related Courses

Building Web Apps With Clojure
YouTube
Data Oriented GUI Design in Rust - Principles and Implementation
Rust via YouTube
Data-Oriented Programming in Java - Records, Sealed Classes, and Pattern Matching
Java via YouTube
Data Oriented Programming in Java
Devoxx via YouTube
Data-Oriented Programming - On the Expressiveness of Non-Control Data Attacks
IEEE via YouTube