ในระหว่างการเขียนแนวทางรหัสสำหรับ บริษัท ฉันพบว่าตัวเองแนะนำให้ใช้รูปแบบตัวสร้างจาก Effective Java แทนที่จะเป็นตัวสร้างแบบ telescopic
อย่างไรก็ตามหลังจากคิดไปอีกเล็กน้อยแน่นอนว่าทางออกที่ดีกว่าคือการลบคลาส builder ออกและยังลบ constructors พิเศษด้วยอาร์กิวเมนต์ที่เป็นทางเลือก
ดังนั้นเพียงแค่มีคอนสตรัคเตอร์เดียวที่มีพารามิเตอร์ที่ต้องการ getters / setters ปกติและใส่รหัส เมื่อใช้งานเพียงสร้างอินสแตนซ์ใหม่ของวัตถุ yr จากนั้นตั้งค่า
ความคิดดั้งเดิมของฉันคือประโยชน์ที่ได้รับมาจากการขจัดความสับสนว่าสิ่งที่เป็นพารามิเตอร์เป็นตัวเลือกและสิ่งที่จำเป็น; อย่างไรก็ตามประโยชน์ที่แท้จริงมาจากการใช้วิธีการผูกมัด / อินเตอร์เฟซได้อย่างคล่องแคล่ว
รูปแบบตัวสร้างมีประโยชน์เมื่อคุณสร้างอินสแตนซ์ใหม่จำนวนมากเนื่องจาก IDE สามารถทำงานได้อย่างมีประสิทธิภาพและหากมีพารามิเตอร์ทางเลือกจำนวนมาก (15+) อย่างไรก็ตามมันคุ้มค่ากับการต่อเวลาพิเศษในการเขียนคลาสภายในแบบคงที่คุณจะแนะนำให้ใช้ตัวสร้างหรือเสียเวลาหรือไม่?