1. หลักการแยกส่วนต่อประสาน (ISP: หลักการแยกส่วนต่อประสาน)
คำจำกัดความ: การใช้อินเทอร์เฟซพิเศษหลายรายการจะดีกว่าการใช้อินเทอร์เฟซทั่วไปเพียงอินเทอร์เฟซเดียว อาจกล่าวได้ว่า: สร้างอินเทอร์เฟซเดียว อย่าสร้างอินเทอร์เฟซที่ป่อง
คำจำกัดความสองประการของ ISP:
◇ “ลูกค้าไม่ควรถูกบังคับให้พึ่งพาอินเทอร์เฟซที่พวกเขาไม่ได้ใช้”
ไคลเอนต์ไม่ควรพึ่งพาอินเทอร์เฟซที่ไม่ต้องการ
◇ “การพึ่งพาของคลาสหนึ่งไปยังอีกคลาสหนึ่งควรขึ้นอยู่กับอินเทอร์เฟซที่เล็กที่สุดเท่าที่จะเป็นไปได้”
การพึ่งพาคลาสหนึ่งกับคลาสอื่นควรขึ้นอยู่กับอินเทอร์เฟซที่เล็กที่สุด (จากลูกค้า)
อินเทอร์เฟซและบทบาท: การทำความเข้าใจอินเทอร์เฟซเป็นชุดของคุณลักษณะของวิธีการทั้งหมดที่จัดทำโดยคลาส ด้วยวิธีนี้ การแบ่งอินเทอร์เฟซทำให้เกิดการแบ่งประเภท ดังนั้นอินเทอร์เฟซควรแสดงเพียงบทบาทเดียว แทนที่จะให้บริการหลายบทบาท
การปนเปื้อนของอินเทอร์เฟซ: การปนเปื้อนของอินเทอร์เฟซที่เรียกว่ากำลังเพิ่มความรับผิดชอบที่ไม่จำเป็นให้กับอินเทอร์เฟซ มลพิษของอินเทอร์เฟซจะนำปัญหาการบำรุงรักษาและการนำกลับมาใช้ใหม่ ปัญหาที่พบบ่อยที่สุดคือเพื่อนำอินเทอร์เฟซที่ปนเปื้อนกลับมาใช้ใหม่ เราถูกบังคับให้ใช้และบำรุงรักษาวิธีการที่ไม่จำเป็น ดังนั้นเราจึงต้องแยกโปรแกรมไคลเอนต์ออก และการแยกโปรแกรมไคลเอนต์หมายถึงการแยกส่วนต่อประสาน
วิธีใช้อินเทอร์เฟซแยกกัน:
โดยทั่วไปมีสองวิธีในการแยกอินเทอร์เฟซ:
1) ใช้การมอบหมายเพื่อแยกอินเทอร์เฟซ (การแยกด้วยการมอบหมาย)
เพียงมอบหมายคำขอให้กับคลาสการใช้งานของอินเทอร์เฟซอื่น ๆ เพื่อทำหน้าที่ตามความรับผิดชอบที่จำเป็นซึ่งก็คือรูปแบบอะแดปเตอร์ (Adapter)
2) ใช้การสืบทอดหลายรายการเพื่อแยกอินเทอร์เฟซ (การแยกทางด้วยมรดกหลายรายการ)
วิธีการนี้ใช้หลายอินเทอร์เฟซเพื่อทำหน้าที่ตามความรับผิดชอบที่จำเป็น
ทั้งสองวิธีมีข้อดีและข้อเสียในตัวเอง โดยปกติเราควรพิจารณาตัวเลือกหลังก่อน และเลือกตัวเลือกเดิมหากเกี่ยวข้องกับการแปลงประเภท
บทความนี้มาจากบล็อก CSDN โปรดระบุแหล่งที่มาเมื่อพิมพ์ซ้ำ: http://blog.csdn.net/scelong/archive/2009/12/18/5031030.aspx
-