Tags
Language
Tags
May 2025
Su Mo Tu We Th Fr Sa
27 28 29 30 1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
Attention❗ To save your time, in order to download anything on this site, you must be registered 👉 HERE. If you do not have a registration yet, it is better to do it right away. ✌

( • )( • ) ( ͡⚆ ͜ʖ ͡⚆ ) (‿ˠ‿)
SpicyMags.xyz

Java Data Oriented Programming Masterclass

Posted By: ELK1nG
Java Data Oriented Programming Masterclass

Java Data Oriented Programming Masterclass
Published 5/2025
MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz
Language: English | Size: 2.87 GB | Duration: 9h 48m

Master the Modern Java: Records, Pattern Matching, and Sealed Types for Clean Domain Models and Smarter Error Handling

What you'll learn

Understand the core principles of Data Oriented Programming (DOP) and how it differs from traditional Object Oriented Programming (OOP)

Use Java Records to model immutable data structures cleanly and concisely

Design clear and controlled hierarchies using sealed classes and interfaces

Handle domain-specific errors using algebraic data types (ADTs) and sealed hierarchies

Replace verbose inheritance-based models with expressive, data-driven design

Use guarded and nested patterns to handle complex business rules with ease

Refactor legacy OOP codebases into modern, maintainable DOP-style architectures

Understand how modern Java features lead to better readability

Build real-world applications using pure data models, functional logic, and modern Java syntax

Model business rules, responses, and error cases using type-safe alternatives to exceptions

Learn how to use records and sealed types in serialization for clean APIs

Gain practical experience through a hands-on project

Requirements

Knowledge on Java

It is a Hands-On course. You should be willing to write code!

Comfortable with Indian Accent

Patience To Learn!

Description

Lets deep dive into Data Oriented Programming (DOP) in Java. A modern, practical, and forward-looking programming paradigm that is reshaping how Java applications are designed and developed.In this masterclass, you will learn how to write clearer, safer, and more maintainable Java code by shifting your mindset from objects and inheritance to data and behavior separation. Through hands-on lessons and real-world use cases, you will discover how to leverage Java’s latest language features Records, Sealed Types, and Pattern Matching to build data-centric applications that are easy to reason about and evolve.What You Will LearnCrash Courses on Key Modern Java FeaturesRecords: Learn how Java Records simplify data modeling, enforce immutability, and reduce boilerplate & when to choose records over classes.Sealed Types: Master sealed classes and interfaces to build expressive, restricted hierarchies and eliminate misuse of inheritance.Pattern Matching: Simplify conditionals using pattern matching with switch expressions, including nested and guarded patterns.Foundations of Data Oriented ProgrammingUnderstand the principles of DOP and how it contrasts with traditional OOP.Dive into Algebraic Data Types (ADTs) in Java using Records and Sealed Types to model domain logic precisely and safely.Practical Use Cases and Real-World IntegrationImplement DOP in real-world scenarios, from API modeling to complex business rules.Serialize and deserialize sealed hierarchies using Jackson including how to work with polymorphic types in JSON.Explore data modeling, validation logic, and how DOP can simplify state machines, complex business workflows.Better Error HandlingUse sealed hierarchies to represent all possible error cases.Apply pattern matching to handle errors in a concise and exhaustive way. No missed edge cases. Hands-On Final ProjectWhy Take This Course?This course is designed for Java developers who want to:Stay ahead with modern Java features Write more declarative, composable, and readable codeReplace legacy boilerplate with expressive data modelsUnderstand the real value of Records, Sealed Types, and Pattern Matching beyond syntaxLearn data oriented thinking, ADTs, and functional ideas without leaving JavaWhether you are building APIs, business systems or modern backend services, this course will transform how you model, process, and reason about data in Java.

Overview

Section 1: Introduction

Lecture 1 Before You Enroll

Section 2: Records

Lecture 2 *** Resource ***

Lecture 3 Project Setup

Lecture 4 How Records Work

Lecture 5 Code With Me & Package Structure

Lecture 6 Record Equality

Lecture 7 Canonical Constructor

Lecture 8 CompactConstructor

Lecture 9 Compact Constructor - Validation

Lecture 10 Non-Canonical Constructor

Lecture 11 Are Records Immutable?

Lecture 12 Accessor Method Override

Lecture 13 Nullable Fields

Lecture 14 No Extra Instance Fields

Lecture 15 Static Members

Lecture 16 Records Implementing Interface

Lecture 17 Reflection

Lecture 18 Organizing Records

Lecture 19 Summary

Section 3: Sealed Types

Lecture 20 Need For Sealed Types

Lecture 21 Sealed Type Demo - Part 1

Lecture 22 Sealed Type Demo - Part 2

Lecture 23 Sealed Interface With Records

Lecture 24 [Clarification] - Records With Side Effects!!

Lecture 25 Summary

Section 4: Pattern Matching

Lecture 26 Is instanceof Bad?

Lecture 27 Pattern Matching - instanceof

Lecture 28 Switch Expression

Lecture 29 Type Pattern

Lecture 30 Pattern Label Dominance

Lecture 31 Guarded Pattern

Lecture 32 Unnamed Variable

Lecture 33 Record Pattern

Lecture 34 Nested Record Pattern

Lecture 35 Switch Exhaustiveness

Lecture 36 Summary

Section 5: Principles Of Data Oriented Programming

Lecture 37 Introduction To Data Oriented Programming

Lecture 38 Algebraic Data Types

Lecture 39 Sealed Record - Pattern Matching - Demo 1

Lecture 40 Sealed Record - Pattern Matching - Demo 2

Lecture 41 Enum vs Sealed

Lecture 42 Data Oriented Programming Principles

Lecture 43 Importance Of Types

Lecture 44 [Clarification] - Can Records Have Methods?

Lecture 45 Summary

Section 6: Domain Modeling

Lecture 46 Domain Modeling

Lecture 47 Modeling State Change

Lecture 48 Loan Application Workflow - Requirements

Lecture 49 Loan Models

Lecture 50 Modeling Loan Status & Processor

Lecture 51 Loan State Transition - Implementation - Part 1

Lecture 52 Loan State Transition - Implementation - Part 2

Lecture 53 Loan Workflow - Demo

Lecture 54 [Clarification] - Why Does Loan Status Contain Loan?

Lecture 55 Summary

Section 7: Modeling Uncertainty With Types

Lecture 56 Option Type

Lecture 57 Either Type

Lecture 58 [Clarification] - What About More Than 2 Options?

Section 8: Error Handling

Lecture 59 Problems With Checked Exceptions

Lecture 60 Error Handling With Sealed Types

Lecture 61 Generic Result Type - Part 1

Lecture 62 Generic Result Type - Part 2

Lecture 63 [Clarification] - Is Throwing Exception Bad?

Section 9: Polymorphic Deserialization

Lecture 64 Polymorphic Deserialization - Introduction

Lecture 65 Auto Deduction

Lecture 66 Property Based Deduction

Lecture 67 Mixin

Lecture 68 Summary

Section 10: [Application Development] - Order Workflow Processing - Phase 1

Lecture 69 *** Resource ***

Lecture 70 Order Processing System

Lecture 71 External Services

Lecture 72 Order Workflow Discussion

Lecture 73 Implementation Discussion

Lecture 74 Project Setup

Lecture 75 Code With Me

Lecture 76 Creating Models - Part 1

Lecture 77 Creating Models - Part 2

Lecture 78 Creating Models - Part 3

Lecture 79 Modeling Errors

Lecture 80 Application Exceptions

Lecture 81 [Clarification] - Why Do We Have Interface For Single Implementation?

Lecture 82 Product Client - Implementation

Lecture 83 Customer Client & Payment Client

Lecture 84 Billing Client & Shipping Client

Lecture 85 Request Validator Service

Lecture 86 Price Calculator

Lecture 87 Payment & Billing Service

Lecture 88 Shipping Service

Lecture 89 Order States

Lecture 90 Order Orchestrator - State Transition - Part 1

Lecture 91 Order Orchestrator - State Transition - Part 2

Lecture 92 [Clarification] - Do We Need Fulfilled State?

Lecture 93 Order Service & Mapper

Lecture 94 Order REST Controller

Lecture 95 @ControllerAdvice - Problem Detail

Lecture 96 Application Exception Handling

Lecture 97 Logging Interceptor

Lecture 98 Application Configuration

Lecture 99 Jackson Mixin

Lecture 100 Final Demo Preparation

Lecture 101 Final Demo

Lecture 102 [Clarification] - Order Cancellation Workflow Orchestrator

Section 11: [Application Development] - Order Workflow Processing - Phase 2

Lecture 103 *** Resource ***

Lecture 104 Phase 2 - Adding Support For Coupon

Lecture 105 [Clarification] - Why Do We Call Coupon Service From Request Validator?

Lecture 106 External Service

Lecture 107 Modeling Coupon

Lecture 108 Coupon None vs Optional Coupon

Lecture 109 Updating Other Models

Lecture 110 Coupon Client

Lecture 111 Request Validator Changes For Coupon

Lecture 112 Applying Coupon

Lecture 113 Application Configuration Changes

Lecture 114 Phase 2 - Final Demo

Section 12: [Application Development] - Order Workflow Processing - Phase 3

Lecture 115 *** Resource ***

Lecture 116 Phase 3 - Requirements Discussion

Lecture 117 External Services

Lecture 118 Modeling Shipping Status

Lecture 119 Declined Shipping - Domain Error

Lecture 120 Handling Refund, Invoice, Declined Shipping - Part 1

Lecture 121 Handling Refund, Invoice, Declined Shipping - Part 2

Lecture 122 Updating Orchestrator For Declined Shipping

Lecture 123 Application Exception Handling

Lecture 124 Phase 3 - Final Demo

Section 13: Persistence

Lecture 125 Sealed Types With Persistence

Lecture 126 1 Table For All Subclasses

Lecture 127 1 Table Per Subclass

Lecture 128 What About Document DB?

Section 14: Whats Next?

Lecture 129 Whats Next?

Any Java Developer / Architect who is interested in learning modern Java features