วันพุธที่ 15 มิถุนายน พ.ศ. 2554

การสร้าง Object แบบใช้ Factory Method ในClass ของ Java

Factory Method Patterns ถือว่าเป็นส่วนหนึ่งของDesign Patterns ซึ่งอาจจะเรียกได้ว่าเป็นการใช้ใน subclass ซึ่งเป็น class ที่มาจาก superclass โดย Factory Method เป็น Design Patterns ที่มักใช้ในการสร้าง Object สำหรับClass และในการทำงานของ Factory Method Patterns ส่วนใหญ่มักจะใช้ร่วมกับ Template Method Patterns

โดยหลักการการทำงานของ Factory Method จะมองการทำงานคล้ายกับโรงงานผลิตภัณฑ์ที่ผลิตสินค้าได้ชนิดเดียว เช่น การสร้างวิทยุ ก็จะสร้างแต่วิทยุอย่างเดียวไม่สามารถสร้าง TV หรือ ตู้เย็นได้ เพราะฉะนั้นเราจะมองโรงงานคล้ายกับเป็น superclass ใน Java และ กระบวนการทำงานต่างๆที่ทำให้เกิดวิทยุเป็น subclass


ข้อดีของ Factory Method คือในการทำงานของ Object Class เราไม่จำเป็นต้องรู็ถึงโครงสร้างของ subclass เพียงแต่เรารู้ขั้นตอนการทำงานต่างๆในกระบวนการผลิตสินค้าก็พอ ก็จะทำให้กระบวนการทำงานต่างๆสามารถผ่านไปได้ด้วยดี

ตัวอย่างรูปของ Factory Class Model
ตัวอย่างของ Class ที่มีการสร้าง Object แบบใช้ Factory Method

Class KeyFactory

java.lang.Object
java.security.KeyFactory

จะมีการสร้างรหัสในการเข้าถึงของข้อมูล เพื่อตรวจสอบในเรื่องของการส่งข้อมูล

Class BorderFactory

java.lang.Object
javax.swing.BorderFactory

จะมีการกำหนดกรอบมาตรฐานการทำงานไว้ให้ในClass

ลักษณะของ Class ที่มีการใช้งานแบบ Factory Method

public abstract class Radio
{ public abstract String toType();
}
public class Sony extends Radio
{ public String toType()
{ return "Sony";
}
}

public class Sumsung extends Radio
{ public String toType()
{ return "Sumsung";
}
}


public class RadioFactory
{ public static Radio createRadio(String type)
{ if(type.equals("Sony"))
return new Sony();
else if(type.equals("Sumsung"))
return new Sumsung();
return null;
}
}

ไม่มีความคิดเห็น:

แสดงความคิดเห็น