Thứ Tư, 13 tháng 3, 2013

Singleton

1. Khái niệm 

Singleton pattern mô tả việc đảm bảo 1 class chỉ có duy nhất 1 thể hiện (instance), và cung cấp một global point để truy xuất nó.

2. Vấn đề thực tế

Trong thế giới tự nhiên, có nhiều đối tượng chỉ cho phép 1 và chỉ 1 thể hiện (instance) của nó. Ví dụ như hệ thống trung tâm xử lý thì chỉ có một thể hiện (instance) vì nếu có 2 thì sẽ không còn được gọi là hệ thống trung tâm nữa mà sẽ là phân tán xử lý. Hoặc khi thực thi các các chương trình mà trong cùng thời điểm chỉ có 1 tiến trình được phép tồn tại...khi đó chúng ta sẽ phải cần sử dụng đến singleton pattern.

3. Giải pháp

Trong mô hình của singleton pattern, class được khởi tạo và trả về chính nó. Nếu có yêu cầu tạo 1 instance mới, class sẽ kiểm tra việc khởi tạo instance nào chưa, nếu phát hiện đã có sự tồn tại của 1 instance của class, nó sẽ trả về chính instance đã được khởi tạo lần đầu tiên. Điều này đảm bảo trong bất kỳ thời điểm nào cũng sẽ có 1 và chỉ 1 instance của class tồn tại trong ứng dụng.

4. Mô hình




5. Sample code


6. Mối liên quan với các pattern khác

Không có nhận xét nào:

Đăng nhận xét