Constants 클래스 선언에 대해 팀원간에 토론이 있습니다. 상수 변수를 아래와 같이 별도의 클래스로 옮기고 있습니다.
public class Constants
{
public const string StateId = "ST";
public const string CountryId = "CI";
}
일부 팀원은 재정의 옵션을 피하기 위해 클래스를 봉인 된 것으로 선언하고 Constant 클래스의 인스턴스 생성을 피하기 위해 정적으로 표시 할 것을 제안했습니다.
그러나 앞으로 필요할 때 읽기 전용 변수를 초기화하는 데 도움이되므로 정적 생성자로 Sealed로 사용하는 것을 선호합니다. 이에 대한 조언을 부탁드립니다.
어떤 것을 선택하든 객체와 "전역"유형 클래스 간의 종속성을 피하기 위해 상수 클래스 자체가 아닌 시스템에서 인터페이스를 사용하는 것이 좋습니다. ??
—
dreza
따라서 클래스를 정적으로 만들고 정적 생성자를 지금 또는 나중에 추가 해야하는지 묻는 것에 동의하십니까? 귀하의 질문에 반대 의견이 보이지 않습니다. 명확히하십시오.
—
Doc Brown
권장 독서 : 왜“모범 사례”에 관한 질문을하는 것이 나쁜가?
—
gnat
질문이 없습니다. 클래스에 인스턴스 멤버가 없으면이를 표시 할 수 있습니다
—
코드 InChaos
static
. 이것은 정적 생성자의 유무와 완전히 직교합니다.
상수는 실제로 수학적으로 상수입니까, 아니면 구성의 형태입니까?
—
코드 InChaos