21. 명명법

A) 프로그램 작성할 때 제가 만든 변수도 기억이 잘 안나요. B) 프로그래밍에서 이름을 결정하는 것은 매우 중요해. 보통 명명법이라고 말하는 데 낙타의 등, 헝가리식 표기, 파스칼 방식 등... C) 선배 엔지니어의 경험 지식을 활용하는 거네요.

C언어에서는 변수 이름, 함수 이름, 사용자 정의 형식의 태그 이름 등을 개발자가 정할 수 있어요.
C언어에서는 개발자가 정하는 이름은 다음 규칙을 따라야 하죠.

▶ 예약어를 사용할 수 없음
▶ 첫 문자로 숫자 문자를 사용할 수 없음
▶ 언더 바를 제외한 기호 문자를 사용할 수 없음
▶ 같은 블록 내에 같은 이름을 선언할 수 없음

참고로 예전에는 한글로 이름을 정할 수 없었는데 지금은 한글로 정할 수 있어요.

프로그래밍을 할 때 이름을 대충 정하면 생각이 나지 않아 확인하는 비용도 들어요.
여러 개발자가 같이 개발할 때는 이러한 문제로 예상하지 못한 비용이 추가로 발생하곤 하죠.
많은 개발자들은 서로 이해하기 쉽게 나름의 규칙을 정하여 이름을 결정하고 있어요.

이 책에서는 다음과 같은 규칙으로 이름을 결정할게요.

▶ 변수 명: 명사, 대문자를 사용하지 않음(student)
▶ 형식 명: 명사, 첫자와 의미가 바뀌는 부분은 대문자, 나머지는 소문자(Student)
▶ 함수 명: 동사, 첫자와 의미가 바뀌는 부분은 대문자, 나머지는 소문자(Study)
일반적으로 사용 가능한 함수일 때는 소문자로만 정의
▶ 매크로 : 명사, 소문자를 사용하지 않음(MAX_STUDENT)

다음은 이 책에서 사용하는 명명법을 보여주는 코드예요.
아직 다루지 않은 문법들도 포함하고 있지만 코드의 내용은 큰 의미를 갖고 있지 않아요.
또한 개발자에 따라 명명하는 방법은 차이가 있을 수 있어요.
대표적인 명명법에는 낙타의 등, 헝가리식 표기법, 파스칼 방식 등이 있죠.
다른 개발자들이 많이 사용하는 방법이니 한 번 확인해 보시고 경험 지식을 활용하는 것도 좋은 방법이예요.

◈ 이 책에서 사용하는 명명법

 

◈ 기본연습
다음에서 개발자가 정할 수 없는 이름과 정할 수 있는 이름을 구별해 보시오.
Compare, int, 3_number, Number_3, AIEB_aide_34, num_!8, num 8