A tutorial for Design Pattern in PHP by O'Reilly