(Tips for Beginner Game Programmers) 코드도 글이다.

 

코드를 전문적이고 특수한 것이 아닌 좋은 임을 인지시키는 글입니다.


서문

코드는 어렵고 난해한 전문인의 영역이 아니다. 영어 원어민에게는 코드가 아래와 같이 읽힐텐데,

피격정포 피격계산(공격정보 공격)
{

   if(회피검사)
      회피동작.실행
   else if(방어검사)
      방어동작.실행
   else 
   {
      피격계산
      ...
   }
}

코딩은 영어로 된 흐름의 글이다. 따라서 좋은 글을 쓰기 위한 몇가지 방법은 좋은 코드를 짜는데도 적용이 된다.

법칙

  • 영어적 문법을 지키자.

⇒ 함수는 무언가를 하는(”Do”) 기능이다. 동사로 시작된 함수명을 짓자. 마찬가지로 멤버는 상태를 가진 이름이니 명사로 짓자.

  • 의미를 정확히 표현하는 단어를 쓰려고 하자.

⇒ 제조(manufacture), 생산(generation), 생성/창조(creation), 제작(make) 와 같이 한글마저 무언가를 만든다는 점에서는 유의하지만 같지 않다. 물론 의미에 집착해 어려운 단어를 쓰지 않는 것도 좋은 글이다.

  • 글의 흐름을 문단으로 끊자.

⇒ 글을 읽는 독자도 ‘,’와 ‘~도, 그리고’와 같이 문장이 마무리되지 않거나, 문장이 너무 늘여져있는 글은 읽기 힘들다. 함수를 문단으로 비유해, 한 함수가 너무 커진다면 나누도록 하자.

  • 순서를 만들자.

⇒ 좋은 글은 이전 내용을 되짚어보려 하지 않아도, 다음과 연관되어 연상하기 쉽다. 마찬가지로 코드를 읽었을 때 순차적인 흐름과 자연스러움이 느껴지는지 확인해보자.

마무리

몇가지 예시를 들어보았다. 내가 제시한 법칙외에 일반적으로 언급되는 좋은 글을 쓰기 위한 방법들도 물론 코딩에 적용될 수 있다. 좋은 글 쓰기 법칙이 모든 상황에 대응될 수는 없지만, 유용하게 쓰일 수 있다고 확신한다.

더 나아가서 영어로 된, 코드를 난해한 암호가 아닌 일상생활에서 볼 수 있는 이라는 매체로 쉽게 받아들였으면 한다.

함께 보면 좋은 자료

  • 책 클린코드 : 5장까지는 이 글의 목적을 잘 설명하고 있으니 추천한다.
  • [CodeAesthetic] Don’t Write Comments: 약 6분의 동영상. 영어로 되있어서 조금 어려울 수도 있지만… 마찬가지로 이 글의 목적을 짧은 시간내 정말 정말 잘 설명한다. 동영상 매체로서 시각화 또한 잘해서 꼭 보길 추천한다.