สะพานโหมด
สะพาน (สะพาน) ถูกนำมาใช้เพื่อให้บรรลุ decoupling และนามธรรมเพื่อให้ทั้งสองสามารถแตกต่างกันได้อย่างอิสระ ประเภทของรูปแบบการออกแบบนี้เป็นรูปแบบโครงสร้างโดยการให้สิ่งที่เป็นนามธรรมที่มีโครงสร้างและการเชื่อมโยงระหว่างคนทั้งสองเพื่อให้บรรลุ decoupling
รุ่นนี้จะเกี่ยวข้องกับการเป็นอินเตอร์เฟซที่ช่วยให้การเชื่อมโยงที่เป็นอิสระนิติบุคคลของประเภทของระดับอินเตอร์เฟซที่ฟังก์ชั่น ทั้งสองประเภทของการเรียนจะมีโครงสร้างการเปลี่ยนแปลงและมีผลต่อกัน
เราจากตัวอย่างต่อไปนี้แสดงให้เห็นถึงโหมดสะพาน (สะพานแบบ) การใช้งาน ซึ่งคุณสามารถใช้วิธีการเดียวกัน แต่คลาสนามธรรมที่แตกต่างกันการแก้ระดับการดำเนินงานเพื่อวาดวงกลมของสีที่แตกต่างกัน
การแนะนำ
เจตนา: นามธรรมและการดำเนินการเป็นส่วนหนึ่งของการแยกเพื่อให้พวกเขาสามารถแตกต่างกันได้อย่างอิสระ
โซลูชั่นหลัก: ในความหลากหลายของสถานการณ์ที่อาจมีการเปลี่ยนแปลงมรดกระดับสามารถทำให้เกิดการระเบิดก็ไม่ได้ขยายตัวที่มีความยืดหยุ่น
เมื่อใช้: การใช้ระบบการจัดหมวดหมู่อาจมีมุมหลายมุมแต่ละอาจมีการเปลี่ยนแปลง
วิธีการแก้ไข: ใส่นี้การจัดหมวดหมู่หลายมุมแยกออกจากกันเพื่อให้พวกเขามีความเป็นอิสระของการเปลี่ยนแปลงลดการมีเพศสัมพันธ์ระหว่างพวกเขา
รหัสสำคัญ: การดำเนินงานระดับนามธรรมระดับขึ้น
ตัวอย่างการใช้งาน: 1, เกิดจากหมูหมูจอมพลหลังคาวิญญาณวิญญาณของกลไกของโลกถูกแบ่งออกเป็นสองระดับคือ: จิตวิญญาณและร่างกายอดีตสอดคล้องกับสิ่งที่เป็นนามธรรมซึ่งเทียบเท่ากับว่าสิ่งมีชีวิตโดยฟังก์ชั่นการมอบหมายวัตถุทางกายภาพฟังก์ชั่นการโทรสิ่งมีชีวิตดังกล่าวสามารถเลือกแบบไดนามิก 2 สวิทช์บนผนังที่คุณสามารถดูสวิทช์เป็นนามธรรมไม่ใช่ท่อคอนกรีตภายในวิธีการเพื่อให้บรรลุ
ข้อดี: 1, นามธรรมและเกิดการแยก2 การขยายขนาดที่ดีเยี่ยม 3 รายละเอียดการดำเนินโปร่งใสให้กับลูกค้า
ข้อเสีย: การแนะนำของโหมดสะพานจะเพิ่มความยากลำบากของความเข้าใจและการออกแบบของระบบความสัมพันธ์ของพอลิเมอที่สร้างขึ้นบนชั้น abstraction ที่ต้องการนักพัฒนาสำหรับการออกแบบที่เป็นนามธรรมและการเขียนโปรแกรม
สถานการณ์การใช้งาน: 1, ถ้าระบบถูกต้องระหว่างนามธรรมและเป็นสมาชิกบทบาทที่เป็นรูปธรรมของบทบาทในการเพิ่มความยืดหยุ่นมากขึ้นเพื่อหลีกเลี่ยงการสร้างการเชื่อมโยงมรดกคงที่ระหว่างสองระดับผ่านโหมดสะพานเพื่อให้พวกเขา Abstraction Layer สร้างความสัมพันธ์2 สำหรับผู้ที่ไม่ต้องการที่จะใช้ระบบเป็นมรดกหลายระดับหรือมรดกนำไปสู่การเพิ่มมากขึ้นในจำนวนของชั้นเรียนระบบโหมดสะพานโดยเฉพาะอย่างยิ่งที่ใช้บังคับ 3 ชั้นเรียนมีสองมิติที่เป็นอิสระของการเปลี่ยนแปลงและสิ่งเหล่านี้สองมิติจะต้องมีการขยายตัว
หมายเหตุ: สำหรับการเปลี่ยนแปลงของสองมิติอิสระใช้โหมดสะพานง่ายที่จะทำ
การสำนึก
เราได้เป็นสะพานอินเตอร์เฟซDrawAPIและดำเนินการอินเตอร์เฟซDrawAPIRedCircle ระดับนิติบุคคล GreenCircleรูปร่างเป็นระดับนามธรรมวัตถุใช้DrawAPIBridgePatternDemo เรียนสาธิตของเราใช้คลาสรูปร่างเพื่อวาดวงกลมสีที่แตกต่างกัน
ขั้นตอนที่ 1
สร้างสะพานที่ใช้อินเตอร์เฟซที่
DrawAPI.java
DrawAPI อินเตอร์เฟซที่สาธารณะ { โมฆะสาธารณะ drawCircle (int รัศมี int x, int y); }
ขั้นตอนที่ 2
สร้างการดำเนินกิจการที่เชื่อมโยงการดำเนินงานของDrawAPIระดับอินเตอร์เฟซ
RedCircle.java
เรียนสาธารณะ RedCircle ดำเนิน DrawAPI { @Override โมฆะสาธารณะ drawCircle (int รัศมี int x, int y) { System.out.println ( "การวาดวงกลม [สี: สีแดง, รัศมี" + รัศมี + "X" + X + "" + Y + "]"); } }
GreenCircle.java
เรียนสาธารณะ GreenCircle ดำเนิน DrawAPI { @Override โมฆะสาธารณะ drawCircle (int รัศมี int x, int y) { System.out.println ( "การวาดวงกลม [สี: สีเขียว, รัศมี" + รัศมี + "X" + X + "" + Y + "]"); } }
ขั้นตอนที่ 3
DrawAPIใช้อินเตอร์เฟซในการสร้างรูปร่างระดับนามธรรม
Shape.java
รูปร่างระดับนามธรรมสาธารณะ { การป้องกัน DrawAPI drawAPI; รูปร่างที่มีการป้องกัน (DrawAPI drawAPI) { this.drawAPI = drawAPI; } ประชาชนที่เป็นนามธรรมเป็นโมฆะวาด (); }
ขั้นตอนที่ 4
สร้างคลาสนิติบุคคลดำเนินการติดต่อรูปร่าง
Circle.java
วงกลมชั้นสาธารณะขยายรูปร่าง { int ส่วนตัว x, y, รัศมี; วงกลมสาธารณะ (int x, int Y, int รัศมี DrawAPI drawAPI) { เปอร์ (drawAPI); this.x = x; this.y y =; this.radius = รัศมี; } วาดโมฆะสาธารณะ () { drawAPI.drawCircle (รัศมี x, y); } }
ขั้นตอนที่ 5
การใช้คลาสรูปร่างและDrawAPI วาดวงกลมสีที่แตกต่างกัน
BridgePatternDemo.java
BridgePatternDemo คลาสที่สาธารณะ { ประชาชนเป็นโมฆะคง main (String args []) { รูปร่าง RedCircle = แวดวงใหม่ (100,100, 10, RedCircle ใหม่ ()); รูปร่าง greenCircle = แวดวงใหม่ (100,100, 10, GreenCircle ใหม่ ()); redCircle.draw (); greenCircle.draw (); } }
ขั้นตอนที่ 6
ตรวจสอบการส่งออก
การวาดวงกลม [สี: สีแดง, รัศมี: 10 x 100, 100] การวาดวงกลม [สี: สีเขียว, รัศมี: 10 x 100, 100]