จริงๆแล้ว Factory Method ก็คือ คำสั่งที่ถูกสร้างขึ้นเพื่อนำมาใช้ในการสร้าง Object แทนที่เราจะสร้าง Object นั้นๆ โดยใช้ Constructor ของมันเอง ซึ่ง Factory Method นี้ก็จะเป็นพื้นฐานของ Design pattern ตัวอื่นๆด้วย เช่น Singleton เป็นต้น
Java and Factory Method
ในภาษา Java นั้นก็จะมีคลาสบางคลาสที่มีคำสั่งที่เป็น Factory Method โดยคลาสดังกล่าวจะจัดเตรียมเจ้าตัว Factory Method ไว้ให้ผู้ใช้เรียกใช้ได้หรือบางคลาสเองก็อาจจะเป็น Factory Class ได้เช่นกัน โดยผมจะขอยกตัวอย่างคลาสที่มี Factory Method ไว้ให้เรียกใช้จำนวน 2 คลาส ดังนี้
1. Class DateFormat ใน Java package “Java.text” โดย class DateFormat นี้จะเป็นตัว abstract class ที่มีคุณสมบัติให้ใช้ในการจัดรูปแบบของวันและเวลา ซึ่งจะมีหลากหลายคำสั่งสำหรับเข้าถึงการจัดการรูปแบบวัน/เวลาในการตั้งค่าเริ่มต้นหรือตั้งค่าตำแหน่งและค่าของ formatting styles โดยเราสามารถจัดรูปแบบและการจัดวางวันสำหรับสถานที่ใดๆก็ได้ตามต้องการเพียงใช้คำสั่งต่างๆให้ถูกต้องเท่านั้น และนี่น่าสนใจก็จะเป็นเกี่ยวกับเรื่องการจัดเตรียม Factory method ไว้ให้เรียกใช้ด้วย เช่น
จากคำสั่งด้านล่างก็จะเป็นการเรียกใช้ Factory method สำหรับจัดรูปแบบวันสำหรับสถานที่ปัจจุบัน
คำสั่งถัดมาก็จะเป็นการเรียกใช้ Factory method สำหรับจัดรูปแบบวันและเวลาสำหรับสถานที่ปัจจุบัน
2. Class SecretKeyFactory ซึ่งจะอยู่ใน package "javax.crypto" โดยจะป็น factory สำหรับคีย์ลับหรือรหัสลับนั่นเอง ใน Key Factories นี้จะถูกแปลงจากรหัสจริงหรือกุญแจการเข้ารหัสเป็นรหัสเฉพาะซึ่งเป็นตัวแทนของคีย์จริง โดย Method ต่างๆที่เกี่ยวข้องก็จะมีดังนี้
String algorithm)
คำสั่งข้างต้นจะเป็นการสร้าง SecretKeyFactory Object
public static final SecretKeyFactory getInstance(String algorithm)
throws NoSuchAlgorithmException
public static final SecretKeyFactory getInstance(String algorithm, String provider)
throws NoSuchAlgorithmException, NoSuchProviderException
public static final SecretKeyFactory getInstance(String algorithm, Provider provider)
throws NoSuchAlgorithmException
Credit : http://cupi2.uniandes.edu.co/javadoc/j2se/1.5.0/docs/api/allclasses-noframe.html
ขอบคุณครับ
ไม่มีความคิดเห็น:
แสดงความคิดเห็น