-
Notifications
You must be signed in to change notification settings - Fork 0
Factory Pattern
Factory Pattern จัดอยู่ในหมวดของ Creational Patterns จุดประสงค์เพื่อที่จะอธิบายว่าเราจะสร้างอ๊อปเจ็ค (create object or instance) ด้วยวิธีไหนที่ดีที่สุด
โรงงานผลิต (ชิ้นส่วน) โดยชื่อก็บอกอยู่แล้วนะครับ ว่าการทำงานจะคล้ายๆ กับโรงงานผลิต แต่โครงสร้างโรงงานจะเป็นระบบสายพาน หรือไม่ก็เป็นลักษณะ Assembly คือทำหน้าที่ประกอบชิ้นส่วนที่ถูกสร้างจากแหล่งอื่นๆ หรือโรงงานย่อยอื่นๆ ให้เป็นชิ้นส่วนสำเร็จรูปขึ้นใหม่ ยกตัวอย่างเช่น โรงงานผลิตรถยนต์ (ไม่เคยสัมผัสจริงนะครับ แต่คาดว่าใช่) ชิ้นส่วนต่างๆ ไม่ได้ถูกผลิดในที่เดียวกัน เช่น ตัวถัง ล้อ อุปกรณ์ตกแต่ง เหล่านี้ต่างก็ถูกแยกผลิตคนละที่ โดยที่แต่ละโรงงานย่อยนั้น อาจจะมีหลายโรงงานด้วยกัน ซึ่งผลิตชิ้นส่วนเดียวกันแต่มีลักษณะบางอย่างที่แตกต่างกัน (ถึงต้องแยกโรงงานกัน) เช่น โรงงานผลิตล้อ แต่เป็นล้อคนละแบบ อะไรทำนองนี้
Pattern ในกลุ่มนี้ดูผิวเผินคล้ายคลึงกันมากคือ Factory, Prototype, Adapter และบางครั้งก็เหมือนมีบางอย่างซ้ำซ้อนกันด้วย (Overlap)
ก่อนอื่น ดูตัวอย่างคร่าวๆ ก่อนนะครับ ตัวอย่างนี้ค่อนข้างชัดเจนมาก
และนี่....
http://en.wikipedia.org/wiki/Abstract_factory_pattern
หรือนี่...
http://en.wikipedia.org/wiki/Factory_method_pattern
ดูแบบนี้แล้วใจชื้นขึ้นเยอะใช่ไหมครับ ท่าทางจะง่ายๆ นะ (จริงๆ แล้ว Factory Pattern ถือว่าเข้าใจง่ายมาก แต่มีประโยชน์สูงมากเลยทีเดียว)
... เดี๋ยวมาต่อ ...