16
แนวทางปฏิบัติที่ดีที่สุดในการส่งผ่านข้อโต้แย้งไปยังวิธีการ?
ในบางครั้งเราต้องเขียนวิธีการที่ได้รับข้อโต้แย้งมากมายตัวอย่างเช่น: public void doSomething(Object objA , Object objectB ,Date date1 ,Date date2 ,String str1 ,String str2 ) { } เมื่อฉันพบปัญหาประเภทนี้ฉันมักจะรวมข้อโต้แย้งไว้ในแผนที่ Map<Object,Object> params = new HashMap<Object,Object>(); params.put("objA",ObjA) ; ...... public void doSomething(Map<Object,Object> params) { // extracting params Object objA = (Object)params.get("objA"); ...... } นี่ไม่ใช่แนวทางปฏิบัติที่ดีการห่อหุ้มพารามิเตอร์ลงในแผนที่เป็นการสิ้นเปลืองประสิทธิภาพโดยสิ้นเชิง สิ่งที่ดีคือลายเซ็นที่สะอาดง่ายต่อการเพิ่มพารามิเตอร์อื่น ๆ โดยมีการปรับเปลี่ยนน้อยที่สุด แนวทางปฏิบัติที่ดีที่สุดสำหรับปัญหาประเภทนี้คืออะไร