theo Có hướng dẫn nào về việc một hàm nên chấp nhận bao nhiêu tham số không? , một phương thức không nên có quá nhiều tham số. Tuy nhiên, một số câu trả lời cho thấy vấn đề này có thể được giải quyết bằng mẫu xây dựng:
Builder b=new Builder();
b.setParm1("a");
b.setParm2("b");
.
.
.
Obj obj=b.createObj();
hoặc đóng gói các tham số trong một đối tượng.
ObjectParam op=new ObjectParam();
op.param1="a";
op.param2="b";
.
.
.
obj.f(op);
Nhưng tôi nghi ngờ nếu nó giải quyết được vấn đề, bởi vì tôi nghĩ các phương pháp về việc sắp xếp các tham số theo cách tốt hơn (nghĩa là: từ chiều ngang sang chiều dọc), nhưng nó không thay đổi bản chất rằng các tác vụ phụ thuộc vào quá nhiều tham số. Và nếu tôi muốn chuỗi tham số có giao diện tốt hơn, tôi có thể sử dụng một dòng mới cho mỗi tham số như nó:
https://softwareengineering.stackexchange.com/a/331680/248528
Vì vậy, câu hỏi của tôi là "quá nhiều tham số" là một vấn đề trực quan (khó đọc một dòng mã dài) hay vấn đề logic (bản chất nhiệm vụ phụ thuộc vào quá nhiều tham số và cần phá vỡ)? Nếu nó liên quan nhiều hơn đến một vấn đề trực quan, liệu một dòng mới cho mỗi tham số có giải quyết được vấn đề không?