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