Adapter Pattern

Là mẫu pattern giúp bạn chuyển đổi interface của một class sang một interface khác phù hợp với yêu cầu hơn. Giải quyết vấn đề không tương thích giữa hai giao diện, cho phép các lớp có giao diện khác nhau dễ dàng giao tiếp với nhau thông qua một trung gian (adapter).

Hiểu đơn giản nó như một phần trung gian gắn kết 2 phân riêng biệt lại với nhau. Giả sử bạn mới mua một bộ charge điện thoại. Tuy nhiên bộ charger này chỉ có 2 chân trong khi các lỗ cắm điện trong nhà bạn toàn dùng 3 chân, bạn phải dùng thiết bị adapter để chuyển đổi.

Tóm lại mục đích của Adapter pattern là để THỐNG NHẤT việc sử dụng các object khác nhau theo cùng một phương thức bằng cách sử dụng interface chung.

Class Diagram

  • Client: Đây là lớp sẽ sử dụng đối tượng của bạn (đối tượng mà bạn muốn chuyển đổi giao diện).
  • Adaptee: Đây là những lớp bạn muốn lớp Client sử dụng, nhưng hiện thời giao diện của nó không phù hợp.
  • Adapter: Đây là lớp trung gian, thực hiện việc chuyển đổi giao diện cho Adaptee và kết nối Adaptee với Client thông qua Interface Target.
  • Target: interface định nghĩa các phương thức cho Adapter.

Code mẫu

Kết quả thực thi

 

No Comments

Post A Comment