รูปแบบซุ้ม
ซุ้มรูปแบบ (แบบซุ้ม) ซ่อนความซับซ้อนของระบบให้กับลูกค้าให้ลูกค้าสามารถเข้าถึงอินเตอร์เฟซระบบ ประเภทของรูปแบบการออกแบบเป็นรูปแบบโครงสร้างนี้จะเพิ่มอินเตอร์เฟซกับระบบที่มีอยู่เพื่อซ่อนความซับซ้อนของระบบ
รุ่นนี้เกี่ยวข้องกับชั้นเดียวซึ่งมีวิธีการที่ง่ายต่อการร้องขอของลูกค้าและผู้ร่วมประชุมเรียกร้องให้มีอยู่วิธีการเรียนระบบ
การแนะนำ
เจตนา: ระบบย่อยให้ชุดของอินเตอร์เฟซในอินเตอร์เฟซที่สอดคล้องแบบแผนกำหนดลักษณะของอินเตอร์เฟซที่ระดับสูงที่ทำให้ระบบย่อยที่จะใช้ง่ายขึ้น
วิธีการแก้ปัญหาหลัก: ลดความซับซ้อนในการเข้าถึงระบบย่อยภายในเมื่อระบบที่ซับซ้อนที่ลดความซับซ้อนของลูกค้าที่มีอินเตอร์เฟซ
เมื่อจะใช้: 1, ลูกค้าไม่จำเป็นต้องรู้ระบบภายในที่ซับซ้อนเชื่อมโยงทั้งระบบต้องการเพียงให้ "พนักงานต้อนรับ" สามารถ2 ขาเข้าระบบกำหนด
วิธีการแก้ไข: ลูกค้าจะไม่ได้คู่กับระบบระบบควบคู่ไปกับการปรากฏตัวของชั้นเรียน
รหัสสำคัญ: ระหว่างระบบของลูกค้าและเพิ่มชั้นของความซับซ้อนในครั้งนี้จะได้รับการเรียกลำดับการอ้างอิงและการจัดการอื่น ๆ
ตัวอย่างการใช้งาน: 1, ไปโรงพยาบาลคุณอาจจะไปลงทะเบียนผู้ป่วยนอกราคาที่กำหนดจ่ายยาผู้ป่วยหรือสมาชิกในครอบครัวของผู้ป่วยพบว่ามันมีความซับซ้อนมากถ้ามีการจัดให้มีพนักงานรับเพียงแค่ให้พนักงานแผนกต้อนรับส่วนหน้าที่จะจัดการกับความสะดวกสบายมาก2, JAVA รูปแบบการพัฒนาสามชั้น
ข้อดี: 1 เพื่อลดระบบมีการพึ่งพาซึ่งกันและกัน2 เพิ่มความยืดหยุ่น 3 เพื่อปรับปรุงการรักษาความปลอดภัย
ข้อเสีย: ไม่สอดคล้องกับหลักการของการเปิดและปิดถ้าคุณต้องการที่จะเปลี่ยนสิ่งที่ปัญหามากเกินไปมรดกเขียนไม่เหมาะสม
สถานการณ์การใช้งาน: 1, เพื่อให้สามารถเข้าถึงโมดูลภายนอกเป็นโมดูลที่ซับซ้อนหรือระบบย่อย2 ระบบย่อยค่อนข้างอิสระ 3, การป้องกันความเสี่ยงของบุคลากรในระดับต่ำ
หมายเหตุ: ในโครงสร้างลำดับชั้น, คุณสามารถใช้ระบบการกำหนดลักษณะของโหมดการป้อนสำหรับแต่ละชั้น
การสำนึก
เราจะสร้างอินเตอร์เฟซที่รูปร่างและการดำเนินงานของอินเตอร์เฟซที่รูปร่างเรียนนิติบุคคลขั้นตอนต่อไปคือการกำหนดShapeMakerชั้นผิว
ระดับShapeMakerใช้ระดับนิติบุคคลที่จะเป็นตัวแทนของผู้ใช้ในการโทรชั้นเรียนเหล่านี้FacadePatternDemo เรียนสาธิตของเราโดยใช้ระดับShapeMaker ในการแสดงผล
ขั้นตอนที่ 1
สร้างอินเตอร์เฟซ
Shape.java
รูปร่างอินเตอร์เฟซที่สาธารณะ { วาดเป็นโมฆะ (); }
ขั้นตอนที่ 2
สร้างคลาสนิติบุคคลที่ใช้อินเตอร์เฟซ
Rectangle.java
เรียนสาธารณะสี่เหลี่ยมผืนผ้ารูปร่างดำเนิน { @Override วาดโมฆะสาธารณะ () { System.out.println ( "สี่เหลี่ยมผืนผ้า :: วาด ()"); } }
Square.java
เรียนสาธารณะสแควร์ใช้รูปร่าง { @Override วาดโมฆะสาธารณะ () { System.out.println ( "สแควร์ :: วาด ()"); } }
Circle.java
วงกลมเรียนสาธารณะดำเนินรูปร่าง { @Override วาดโมฆะสาธารณะ () { System.out.println ( "วงกลม :: วาด ()"); } }
ขั้นตอนที่ 3
สร้างลักษณะชั้นเรียน
ShapeMaker.java
ShapeMaker คลาสที่สาธารณะ { วงกลมรูปร่างส่วนตัว สี่เหลี่ยมผืนผ้ารูปร่างส่วนตัว รูปทรงสี่เหลี่ยมส่วนตัว ShapeMaker สาธารณะ () { วงกลม = แวดวงใหม่ (); สี่เหลี่ยมผืนผ้า = สี่เหลี่ยมผืนผ้าใหม่ (); ตาราง = แควร์ใหม่ (); } โมฆะสาธารณะ drawCircle () { circle.draw (); } โมฆะสาธารณะ drawRectangle () { rectangle.draw (); } โมฆะสาธารณะ drawSquare () { square.draw (); } }
ขั้นตอนที่ 4
การใช้งานประเภทต่างๆของชั้นผิวการวาดรูปร่าง
FacadePatternDemo.java
FacadePatternDemo คลาสที่สาธารณะ { ประชาชนเป็นโมฆะคง main (String args []) { ShapeMaker shapeMaker = ShapeMaker ใหม่ (); shapeMaker.drawCircle (); shapeMaker.drawRectangle (); shapeMaker.drawSquare (); } }
ขั้นตอนที่ 5
ตรวจสอบการส่งออก
วงกลม :: วาด () สี่เหลี่ยมผืนผ้า :: วาด () สแควร์ :: วาด ()