C # 사전에 대한 명명 규칙
사전 변수의 이름을 어떻게 지정합니까?
내 방법 Dictionary<string, List<string>> dictionary;
에서의 키 dictionary
는 국가 이름이고 값은도 / 주 이름 목록입니다. 이름을 어떻게 변경해야 dictionary
합니까?
Country
이 예제에 대한 클래스를 만들 수 있는지 알고 있습니다 . 그러나 여기서 좋은 명명 규칙을 생각하고 따라서 대안을 참조하지 않습니다.
ProvincesByCountry
나는 주로 다음 중 하나를 사용합니다.
- CountryToStatesDictionary
- CountryToStatesMap
- CountryToStatesMapping
나는 XtoYMap
또는 YFromX
.
이름 지정은 항상 상황에 따라 늘어납니다. 따라서 특정 경우에는 국가 대 주 매핑을 지정합니다.
이것이 더 큰 유사 내에서 루프를위한 장치 였고 폐기 된 경우 일반적으로 다음과 같은 짧은 임시 유형 var로 이동합니다.
var dict = GetCountryStateMapping();
foreach(var item in dict)
{
//Something....
}
ProvincesByCountry 는 국가를 일대일로 매핑하는 것처럼 들리 충분히 명시 적이지었습니다. ProvincesByCountry [ "Germany"]에 액세스 할 때 예상대로 하나의 값이 개체 목록이 아니라 개체라고 가정합니다.
내 개인적인 패턴은 준비합니다.
[Plural of a noun describing the value]By[Singular of a noun describing the key]
그러나 그러나 값을 설명하는 명사가 고유 한 복수형 인 경우 나는 접미사 배열 또는 목록을 사용합니다 . 영어에서는 실제로 복수형을 "복수화"할 수 없습니다. 개인적 으로 는 IEnumerable 또는 IEnumerable을 <T> 의 실제 구현에 관계없이 항상 배열를 고수 합니다. List , Array 또는 무엇이든 사용합니다.
귀하의 경우에는 다음과 같이 바 좋니다.
ProvinceArraysByCountry
과학적 제공으로 그것이 무엇인지 알려줍니다.
값으로 딕셔너리가 있으면이 규칙을 재귀 적으로 적용합니다. 액세스 순서는 이름의 단어 순서와 진행됩니다. 행성을 추가적 상상해 발견.
ProvinceArraysByCountryByPlanet["Earth"]["Germany"][0] = "Bavaria"
ProvinceArraysByCountryByPlanet["Earth"]["Germany"][1] = "Rhineland-Palatinate"
그리고 마지막으로 여기에 작은 문장. 사전이 특성과 객체를 매핑하는 경우 객체에서 객체를 설명하는 단어를 생략합니다. 내가 의미하는 바는 다음과 가변적이다.
NodesByIndex[node.Index] = node; // - Do
NodesByNodeIndex[node.Index] = node; // - Don't
나는이 패턴을 무조건 사용하는데, 추측 할 여지가 전혀 없기 때문에 좋습니다. 단점은 상당히 긴 이름을 생성한다는 것입니다. 그러나 나는 항상 명시 적이지만 항상 짧은 이름을 사용하는 방법입니다. 항상 타협해야합니다. 그리고 그것은 물론 취향의 문제입니다.
이 패턴은 키가 사전이거나 사전 목록 또는 다른 미친 이국적인 것들의 사전 목록이있을 때 작동하지 않습니다 (또는 당신의 두뇌가 부러 질 것입니다). 하지만 그렇게 많은 수준의 중첩이 만족합니다.
provinces, provinceMap, provinceDictionary
모든 것이 떠 오 사용합니다. 나는 provinceMap 내 자신을 좋아한다. 멤버 필드 인 경우 "m_provinceMap"에서와 같이 "m_"접두사를 추가합니다.
참고 URL : https://stackoverflow.com/questions/4330690/naming-convention-for-ac-sharp-dictionary
'ProgramingTip' 카테고리의 다른 글
데이터베이스 설계 모범 사례 (0) | 2020.12.11 |
---|---|
SQL Server 2008에서 열 값을 어떻게 바꾸나요? (0) | 2020.12.11 |
C #에서 날짜를 비교하는 방법 (0) | 2020.12.11 |
여러 파일을 찾아 Linux에서 이름 (0) | 2020.12.10 |
vim에서 bash의 현재 줄 실행 (0) | 2020.12.10 |