Skip to content

Latest commit

 

History

History
19 lines (13 loc) · 1.06 KB

File metadata and controls

19 lines (13 loc) · 1.06 KB

Notification Engine - Generics & Lambda Practice

A modern Core Java project demonstrating advanced concepts like Generics, The Collections Framework, and Lambda Expressions by refactoring a basic notification system into a scalable, bulk-processing engine.

🚀 Features & Concepts Implemented

  • Functional Interfaces & Lambdas: Used @FunctionalInterface to abstract notification behaviors and leverage Java Lambdas for concise code.
  • Generics (): Built a type-safe NotificationManager that safely restricts inputs to valid notification classes.
  • Collections Framework (ArrayList): Transitioned from standard static arrays to dynamic lists to handle real-world, variable data inputs.
  • Clean Architecture: Separated concerns between the data structures, management engine, and execution blocks.

🛠️ How it Works

Instead of manual initialization and individual execution loops, the engine queues notifications dynamically and flushes them using functional streams:

`java public void sendAll() { notifications.forEach(n -> n.send()); }