![]() |
| Nguồn: http://mydevelopedworld.files.wordpress.com/2013/03/observer-pattern-uml.png |
Một weblog bé tí của một con người bé tí, nhằm chia sẻ những điều bé tí để hy vọng những thứ ấy kết hợp lại thành một cái to lớn.
Showing posts with label Design Patterns. Show all posts
Showing posts with label Design Patterns. Show all posts
October 24, 2013
PHP - Design Pattern - Observer
Labels:
Design Patterns,
Event,
Event-Driven Programming,
PHP,
Web Developer
Location:
Ho Chi Minh City, Vietnam
PHP - Design Pattern - Observer
![]() |
| Nguồn: http://mydevelopedworld.files.wordpress.com/2013/03/observer-pattern-uml.png |
Labels:
Design Patterns,
Event,
Event-Driven Programming,
PHP,
Web Developer
Location:
Ho Chi Minh City, Vietnam
November 13, 2011
PHP - Design Pattern - Multiton & Factory
Tiếp nối chuỗi bài Design Pattern bằng ngôn ngữ PHP, hôm nay mình giới thiệu thêm 2 mẫu thiết kế cũng rất phổ biến và thông dụng, đó là mẫu Multiton và mẫu Factory.
Mẫu Multiton được mở rộng từ mẫu singleton. Nếu bạn nào để ý sẽ phát hiện ngay trong mẫu singleton phần contructor hoàn toàn không có tham số trong đó. Nhưng trong rất nhiều trường hợp, chúng ta cần khởi tạo một đối tượng với những thông số cấu hình nhất định, và cũng chính vì điều này mà multiton ra đời.
Multiton
Mẫu Multiton được mở rộng từ mẫu singleton. Nếu bạn nào để ý sẽ phát hiện ngay trong mẫu singleton phần contructor hoàn toàn không có tham số trong đó. Nhưng trong rất nhiều trường hợp, chúng ta cần khởi tạo một đối tượng với những thông số cấu hình nhất định, và cũng chính vì điều này mà multiton ra đời.
Multiton
<?php
class Multiton
{
private static $_instances = array();
private static $_key;
private $_opt1;
private $_opt2;
protected function __construct($param1, $param2)
{
$this->_opt1 = $param1;
$this->_opt2 = $param2;
}
public static function getInstance($param1, $param2)
{
self::$_key = $param1 . $param2;
if(!self::$_instance[self::$_key] instanceof self)
self::$_instance[self::$_key] = new self($param1, $param2);
return self::$_instance[self::$_key];
}
}
Labels:
Design Patterns,
PHP
Location:
Hồ Chí Minh, Việt Nam
November 6, 2011
PHP - Design Patterns - Singleton & Registry
Hôm nay mình chia sẻ tới mọi người một khía cạnh khác trên blog cá nhân của mình - code PHP. Mình giới thiệu tới mọi người 2 mẫu design patterns rất phổ biến và đơn giản, đó là mẫu Singleton và mẫu Registry.
Singleton là mẫu thiết kế rất phổ biến trong OOP. Với singleton, sẽ hạn chế việc tạo nhiều thực thể trên cùng một lớp đối tượng, mà thay vào đó nó sẽ cho phép chúng ta sử dụng chung một thực thể, hay nói một cách khác là dùng một shared instance. Việc này sẽ có lợi điểm cho bộ nhớ của hệ thống, không phải cứ phát sinh đối tượng tùm lum ra.
Singleton:
Singleton là mẫu thiết kế rất phổ biến trong OOP. Với singleton, sẽ hạn chế việc tạo nhiều thực thể trên cùng một lớp đối tượng, mà thay vào đó nó sẽ cho phép chúng ta sử dụng chung một thực thể, hay nói một cách khác là dùng một shared instance. Việc này sẽ có lợi điểm cho bộ nhớ của hệ thống, không phải cứ phát sinh đối tượng tùm lum ra.
Singleton:
<?php
class Singleton
{
private static $_instance;
protected function __contruct(){}
public static function getInstance()
{
if (!isset (self::$_instance))
self::$_instance = new self;
return self::$_instance;
{
}
Labels:
Design Patterns,
PHP
Location:
Hồ Chí Minh, Việt Nam
Subscribe to:
Posts (Atom)
