08 / 07 / 2009
template method design pattern – php
ekleyen: Emre Çevik kategori: design patterns| php
Template method tasarım şablonu davranışsal (behavioral patterns) tasarım şablonları gurubunda yer alır. Template method ile bir algoritma için gerekli işlemler soyut olarak tanımlanır. Alt sınıflar algoritma için gerekli bir yada birden fazla işlemi kendi bünyelerinde implemente ederek, kullanılan algoritmanın kendi istekleri doğrultusunda çalışmasını sağlıyabilirler.
Mssql , Mysql, Oracle ile çalışabilecek bir sistem tasarladığımızı düşünelim. bunların ortak yanlarını abstract sınıfa toplayalım.
1. sürücüleri yükle
2. bağlantı kur
3. sorgu çalıştır
4. dataset oluştur
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | abstract class Veritabani { final public function prepare() { $this->driver(); $this->baglanti(); $this->query(); $this->dataset(); } abstract function driver(); abstract function baglanti(); abstract function query(); abstract function dataset(); } |
evet şimdi bundan bağımsız mysql ve mssql sınıflarımızı yazalım
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 | class Mysql extends Veritabani { public function driver() { echo "mysql driver yuklendi<br/>"; } public function baglanti() { echo "baglanti kuruldu<br/>"; } public function query() { echo "sorgu yapıldı<br/>"; } public function dataset() { echo "dataset olusturuldu<br/>"; } } class Mssql extends Veritabani { public function driver() { echo "mssql driver yuklendi<br/>"; } public function baglanti() { echo "baglanti kuruldu<br/>"; } public function query() { echo "sorgu yapıldı<br/>"; } public function dataset() { echo "dataset olusturuldu<br/>"; } } |
simdi uygulamayı çalıştıracak kod bloğunu yazalım
1 2 | $mysql = new Mysql(); $mysql->prepare(); |
ekran çıktısı
mysql driver yuklendi
baglanti kuruldu
sorgu yapıldı
dataset olusturuldu
dosya : template method design pattern
benzer konular:
- proxy design pattern – php
- factory method design pattern – php
- command design pattern – php
- observer design pattern – php
- state design pattern – php
- strategy design pattern – php
- memento design pattern – php
- visitor design pattern – php
- chain of responsibility design pattern- php
- adapter design pattern – php














design patterns