모두가 기술적 인 C ++ 규칙을 잘 다루었다고 생각합니다. 대답은 '예'입니다. 전통과이 특정 기능이 특별하고 상징적이라는 사실을 제쳐두고,이 기준에 따라 변하지 않는 유효한 포인트를 포함합니다.
종종 나는 선택의 철학이 거의 논의되지 않는다고 느낍니다. 그래서 이것이 시작하도록 요청 된 이유에 대해 중요하다고 느끼기 때문에이 문제에 대한 관점을 제공하고 싶었습니다.
이 질문은 일반적으로 코드에서 영어를 표현하는 선택을 포함합니다. 특히 짧은 손이 비슷한 모양의 텍스트를 표시하는 경우 짧은 손 설명에 귀찮은 것 같습니다. 그러나 귀하의 예에서 argn을 n_of_args로 변경하면 한 가지 유형의 속기 만 실제 값 추가없이 다른 형태의 속기로 변경됩니다 : 설명 또는 기타 가시적 속성.
단어 '숫자'가 문자 'n'으로 대체되었습니다.
짧은 손 방지 철학을 통해 짧은 손 이름을 변경하는 경우 다음과 같은 것이 더 적절 해 보일 수 있습니다.
main (int argumentCount, char ** argumentVector)
저는 항상 두 가지에 대해 생각합니다. 이름을 지정하는 것은 무엇인지 및 / 또는 묵시적인 용도로 지정하는 것입니다. 벡터라는 속성이 이중 간접 **에 의해 암시되기 때문에 그것을 argumentVector라고 부르는 것은 나에게 중복됩니다. 따라서 코드 작성 방법에 대한 더 나은 긴 손은 ** 인수입니다.
어떤 사람들은 argumentCount라는 변수가 int로 선언되고 Count는 음수가 될 수 없지만 음의 int {unsigned is better}를 가질 수 있다고 말합니다.
다시 말하지만, 그것이 무엇이며 어떻게 사용되는지는이 해석에서 작용합니다. 백작이라면 절대 음수가 아닐 것이라고 생각합니다. 결국, 당신은 어떻게 -2 개의 사과 수를 가질 수 있습니까? 당신은 사과 두 개를 빚지고 있습니다. 숫자라면 음의 경우가 가능할 것으로 예상합니다. 이것이 당신에게 추가 단어 'of'가 중요한 이유입니다. 즉, 컬렉션에서 참조하는 숫자는 컬렉션 자체의 속성이 아니라 특정 항목을 의미합니다. 즉 : argumentsNumber = 5는 numberOfArguments가 아닌 특정 인수를 의미합니다.
main (int maxArgumentsIndex, char ** arguments).
이것은 모호성을 제거합니다. 이를 색인이라고 부르면 부정적 대소 문자의 모호성을 제거하고 그것이 무엇인지, 추가로 사용 방법을 설명합니다. 또한 최대 값이 절대 값이고이 값을 수정하는 코드를 작성하는 것이 이상하게 느껴질 것임을 영어 표현으로 암시합니다 (const 여야 함). '인수'는 복수형이고 그것이 무엇인지, 이미 어떻게 사용되어야하는지 설명하기 때문에 여기서 의미가 있습니다. 인덱스가 Count / NumberOf의 -1이기 때문에 이런 방식으로 해석하는 것도 위험 할 수 있습니다. 5 개의 인수는 4의 maxIndex를 산출합니다 !!
다른 모든 기능과 나는 완전히 사용합니다.
void function (const unsigned int maxArgumentsIndex, const char ** arguments)
모든 상황이 긴 설명자를 사용해야하는 것은 아닙니다. 실제로 Vec3f, Matrix, Quaternion 등과 같은 수학 수업을 작성하는 경우에는 짧은 손이 더 가독성을 제공하기도합니다. . 부동 소수점 x, y, z vrs. float xComponent 등.
나는이 모든 것이 스타일 선택이라는 것을 이해하지만 선택을 의식하는 것은 장기적으로 정말 도움이 될 것입니다. 나는 노련한 프로그래머가 배열이 복수형으로 작성되지 않았을 때 신경 쓰이는 것을 보장하지만 다시, main은 존재의 특별한 산문입니다.)