สะพาน : (รูปแบบโครงสร้าง)
รูปแบบสะพานแยกสิ่งที่เป็นนามธรรมและการนำไปใช้และอนุญาตให้ทั้งสองอย่างแตกต่างกันอย่างอิสระ
ใช้รูปแบบนี้เมื่อ:
- ไม่ได้มีการตัดสินใจเรื่องย่อและการนำไปใช้ในเวลารวบรวม
- Abstractions และการนำไปใช้ควรมีการเปลี่ยนแปลงอย่างอิสระ
- การเปลี่ยนแปลงการนำสิ่งที่เป็นนามธรรมไปใช้ไม่ควรส่งผลกระทบต่อแอปพลิเคชันผู้โทร
- ไคลเอนต์ควรได้รับการหุ้มฉนวนจากรายละเอียดการใช้งาน
กลยุทธ์: (รูปแบบพฤติกรรม)
รูปแบบกลยุทธ์ช่วยให้คุณสามารถสลับระหว่างอัลกอริทึมต่างๆจากกลุ่มอัลกอริทึมในขณะทำงานได้
ใช้รูปแบบกลยุทธ์เมื่อ:
- ต้องใช้อัลกอริทึมหลายเวอร์ชัน
- พฤติกรรมของคลาสจะต้องเปลี่ยนแปลงแบบไดนามิกในขณะรันไทม์
- หลีกเลี่ยงข้อความที่มีเงื่อนไข
กระทู้ที่เกี่ยวข้อง:
คุณใช้ Bridge Pattern เมื่อใด แตกต่างจากรูปแบบ Adapter อย่างไร?
ตัวอย่างรูปแบบกลยุทธ์ในโลกแห่งความจริง