وزیٹر پیٹرن ایک ڈیزائن پیٹرن ہے جو آبجیکٹ پر مبنی پروگرامنگ میں استعمال کیا جاتا ہے تاکہ الگورتھم کو کسی آبجیکٹ کے ڈھانچے سے الگ کیا جاسکے جس پر یہ کام کرتا ہے۔ وزیٹر پیٹرن آبجیکٹ کے ڈھانچے پر انجام دینے کے لیے ایک نئے آپریشن کی وضاحت کرتا ہے، ان اشیاء کی کلاسوں کو تبدیل کیے بغیر جن پر یہ کام کرتا ہے۔ یہ موجودہ کوڈ کو تبدیل کیے بغیر موجودہ آبجیکٹ ڈھانچے میں نئی کارروائیوں کو شامل کرنے کی اجازت دیتا ہے۔
اس پیٹرن میں، ایک وزیٹر (ایک علیحدہ آبجیکٹ) استعمال کیا جاتا ہے جو آبجیکٹ کی ساخت کے عناصر سے گزرتا ہے۔ ہر عنصر وزیٹر کو قبول کرتا ہے اور وزٹ کیے گئے ہر عنصر کے لیے مناسب طریقہ استعمال کیا جاتا ہے۔ وزیٹر پھر وزٹ شدہ آبجیکٹ پر مطلوبہ آپریشن کرتا ہے۔
وزیٹر پیٹرن اس وقت کارآمد ہوتا ہے جب آبجیکٹ کے ڈھانچے میں موجود اشیاء کی کلاسیں فکس ہوتی ہیں اور انہیں تبدیل کرنا ممکن نہیں ہوتا ہے۔ یہ ان صورتوں میں بھی مددگار ہے جہاں آبجیکٹ کے ڈھانچے میں بڑی تعداد میں اشیاء موجود ہیں اور ان سب میں نئے آپریشنز کو شامل کرنا مشکل ہے۔
تاریخ اشاعت: