2009-11-17 3 views
1

어제 동료에게 속성이 너무 많은 매개 변수가있는 경우 속성 대신 클래스를 만드는 것이 더 좋을지 물었습니다. 내가 따라야 할 지침이 있습니까?함수/클래스 디자인 지침

답변

2

나는 사용하는 언어와 문제의 매개 변수 수에 따라 달라질 수 있으며 함수를 호출 할 때 허용되지 않는 매개 변수 중 일부라고 생각합니다.

VB에는 선택적 매개 변수가 있고 C# 3 +는 params를 사용하여 인스턴스화 할 수 있습니다.

새 클래스는 해당 함수를 실행하는 것 외에는 다른 용도로 사용합니까, 아니면 해당 클래스의 상태가 코드의 뒷부분과 관련이 있습니까?

1

매개 변수의 수가 을 초과하면 일반적으로 메서드 리팩토링에 대해 생각하기 시작합니다. 절대 숫자는 없지만 이것이 나의 일반적인 규칙입니다. 데이터 클래스에서 데이터를 그룹화하는 것이 합리적 일 수도 있고 때로는 메서드를 데이터에 더 가깝게 이동해야한다는 의미 일 수도 있습니다.

0

모두 문맥에 따라 다릅니다.

예 :

  1. 데이터베이스 작업이 아닌 경우 시스템 설계에 따라 수행 할 수 있습니다. 모듈을 분해하고 하위 모듈을 작성하십시오.

  2. 데이터베이스 시스템 인 경우 필자는 필드 및 DAO 클래스에 대해 별도의 Bean 클래스를 작성하여 작업을 선호합니다.