ตัวสร้างและวิธีการของโรงงาน [ปิด]
ปิด คำถามนี้เป็นคำถามความคิดเห็นตาม ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการใน2 ปีที่ผ่านมา ปรับปรุงคำถามนี้ เมื่อสร้างโมเดลคลาสอะไรที่เป็นวิธีที่ดีที่สุดในการเริ่มต้น: ตัวสร้างหรือ วิธีการของโรงงาน และอะไรคือข้อควรพิจารณาในการใช้ทั้งสองอย่าง? ในบางสถานการณ์ฉันชอบที่จะใช้วิธีการจากโรงงานซึ่งคืนค่า null หากไม่สามารถสร้างวัตถุได้ ทำให้รหัสเรียบร้อย ฉันสามารถตรวจสอบว่าค่าที่ส่งคืนไม่เป็นโมฆะก่อนที่จะดำเนินการทางเลือกตรงกันข้ามกับการโยนข้อยกเว้นจากตัวสร้าง (โดยส่วนตัวแล้วฉันไม่ชอบข้อยกเว้น) บอกว่าฉันมีนวกรรมิกในคลาสที่คาดว่าจะมีค่า id ตัวสร้างใช้ค่านี้เพื่อเติมคลาสจากฐานข้อมูล ในกรณีที่ไม่มีเร็กคอร์ดที่มี id ที่ระบุตัวสร้างจะสร้าง RecordNotFoundException ในกรณีนี้ฉันจะต้องล้อมรอบการสร้างคลาสดังกล่าวทั้งหมดภายใน try..catch block ตรงกันข้ามกับที่ฉันสามารถมีวิธีการโรงงานคงที่ในชั้นเรียนเหล่านั้นซึ่งจะกลับเป็นโมฆะถ้าไม่พบบันทึก ในกรณีนี้วิธีการที่ดีกว่าวิธีการก่อสร้างหรือโรงงาน?