การนำไปใช้งาน ของ แบบแผนซิงเกิลตัน

แบบแผนซิงเกิลตันถูกสร้างโดยเขียนคลาสให้ซ่อนคอนสทรัคเตอร์ทั้งหมดไว้จากคลาสอื่นๆ คือให้คอนสทรัคเตอร์เป็นไพรเวท จากนั้นสร้างเมธอดมีหน้าที่สร้างอ็อบเจกต์ของคลาสนี้ถ้ายังไม่ถูกสร้างและเก็บอ็อบเจกต์ตัวที่ถูกสร้างใหม่นี้ไว้ จากนั้นส่งคืนอ็อบเจกต์เพียงตัวเดียวนั้นให้ทุกครั้งที่มีการร้องขออ็อบเจกต์ของคลาส

ข้อควรระวังสำหรับการใช้แบบแผนซิงเกิลตันในโปรแกรมที่ทำงานแบบ multi-threading คือหลายส่วนของโปรแกรมอาจจะพยายามเรียกเมธอดให้สร้างอ็อบเจกต์เป็นครั้งแรกในเวลาเดียวกัน อาจทำให้มีการสร้างอ็อบเจกต์ขึ้นมาเกินหนึ่งตัวได้ ในกรณีนี้ควรป้องกันโดยอนุญาตให้เพียงหนึ่งเทร็ดเรียกเมธอดได้ในขณะใดขณะหนึ่ง (mutually exclusive)

ใกล้เคียง

แบบแผนการออกแบบซอฟต์แวร์ แบบแผนซิงเกิลตัน แบบแผนโรงงานนามธรรม แบบแผนแฟกทอรีเมธอด แบบแผนผู้สังเกต แบบแผนประกอบรวม แบบแผนฟะซาด แบบแผนอะแดปเตอร์ แบบแผนเทมเพลตเมธอด แบบแผนอินเทอร์พรีเตอร์