คำถามติดแท็ก factory-pattern

26
รูปแบบของตัวออกแบบการสร้างและรูปแบบการออกแบบจากโรงงานแตกต่างกันอย่างไร
รูปแบบการออกแบบของ Builder และรูปแบบการออกแบบของโรงงานแตกต่างกันอย่างไร ข้อใดที่ได้เปรียบกว่าและทำไม ฉันจะแสดงสิ่งที่ค้นพบของฉันเป็นกราฟได้อย่างไรหากฉันต้องการทดสอบและเปรียบเทียบ / เปรียบต่างรูปแบบเหล่านี้

28
การพึ่งพาการฉีดกับรูปแบบโรงงาน
ตัวอย่างส่วนใหญ่ที่ยกมาสำหรับการใช้งานของการพึ่งพาการฉีดเราสามารถแก้ปัญหาโดยใช้รูปแบบโรงงานเช่นกัน ดูเหมือนว่าเมื่อมันมาถึงการใช้งาน / ออกแบบความแตกต่างระหว่างการฉีดพึ่งพาและโรงงานเบลอหรือบาง เมื่อมีคนบอกฉันว่ามันเป็นวิธีที่คุณใช้มันสร้างความแตกต่าง! ฉันเคยใช้StructureMap a DI container เพื่อแก้ปัญหาหลังจากนั้นฉันออกแบบมันขึ้นมาใหม่เพื่อทำงานกับโรงงานที่เรียบง่ายและลบการอ้างอิงไปที่ StructureMap ใครสามารถบอกฉันได้ว่าอะไรคือความแตกต่างระหว่างพวกเขากับที่จะใช้อะไรแนวปฏิบัติที่ดีที่สุดที่นี่คืออะไร

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


12
รูปแบบโรงงานและกลยุทธ์แตกต่างกันอย่างไร
มีใครอธิบายความแตกต่างระหว่างรูปแบบโรงงานและกลยุทธ์ได้หรือไม่? สำหรับฉันทั้งสองดูเหมือนกันนอกเหนือจากคลาสโรงงานเพิ่มเติม (ซึ่งสร้างวัตถุของผลิตภัณฑ์ในรูปแบบโรงงาน)

10
เหตุใด Hibernate จึงไม่ต้องการตัวสร้างอาร์กิวเมนต์
ตัวสร้างไม่มีอาร์กิวเมนต์เป็นข้อกำหนด (เครื่องมือเช่นไฮเบอร์เนตใช้การสะท้อนบนตัวสร้างนี้เพื่อสร้างอินสแตนซ์อ็อบเจ็กต์) ฉันได้รับคำตอบที่เป็นคลื่น แต่ใครช่วยอธิบายเพิ่มเติมได้ไหม ขอบคุณ

8
ฉันจะส่งค่าไปยังตัวสร้างบนบริการ wcf ของฉันได้อย่างไร
ฉันต้องการส่งผ่านค่าไปยังตัวสร้างในคลาสที่ใช้บริการของฉัน อย่างไรก็ตาม ServiceHost อนุญาตให้ฉันส่งในชื่อของประเภทที่จะสร้างเท่านั้นไม่ใช่อาร์กิวเมนต์ใดที่จะส่งผ่านไปยังตัวสร้าง ฉันต้องการที่จะผ่านในโรงงานที่สร้างวัตถุบริการของฉัน สิ่งที่ฉันพบจนถึงตอนนี้: WCF Dependency Injection Behaviorซึ่งเป็นมากกว่าสิ่งที่ฉันกำลังมองหาและดูเหมือนจะซับซ้อนเกินความต้องการของฉัน
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.