Ứng dụng của Lambda trong Design Patterns (Part 1)

Ở bài viết này tôi muốn giới thiệu cách sử dụng Lambda từ Java 8.0 để tạo ra “Gang of four Design Patterns”:

1. Factory Pattern

Ví dụ: một ngân hàng với các sản phẩm là: Loan, Stock và Bond, chúng ta có cách thiết kế pattern như sau khi sử dụng class:

Trong đó Loan, Stock, Bond đều được kế thừa từ Product. Như vậy khi muốn tạo ra sản phẩm là Loan ta sẽ gọi như sau:

Với phương pháp Lambda:

Giải quyết mọi vấn đề trong Scalable Social Network – Đăng kí ngay!
Giải quyết mọi vấn đề trong Scalable Social Network – Đăng kí ngay!

2. Observer Pattern

Ví dụ: Chúng ta thiết kế một hệ thống để tạo ra thông báo tương tự Twitter. Tức là vài tờ báo (The New York Times, The Guardian) cùng theo dõi feed của new feeds và sẽ nhận được thông báo nếu một tweet chứa keyword cho trước.

Với cách sử dụng class thông thường:

Chúng ta có demo việc sử dụng pattern trên như sau:

Rõ ràng The New York Times sẽ tiếp nhận được tweet trên.

Với Lambda ta có thể trực tiếp liên kết các observers như sau:

ITZone via Viblo

Chia sẻ bài viết ngay