코드를 전문적이고 특수한 것이 아닌 좋은 글
임을 인지시키는 글입니다.
서문
코드는 어렵고 난해한 전문인의 영역이 아니다. 영어 원어민에게는 코드가 아래와 같이 읽힐텐데,
피격정포 피격계산(공격정보 공격)
{
if(회피검사)
회피동작.실행
else if(방어검사)
방어동작.실행
else
{
피격계산
...
}
}
코딩은 영어로 된 흐름의 글이다. 따라서 좋은 글을 쓰기 위한 몇가지 방법은 좋은 코드를 짜는데도 적용이 된다.
법칙
- 영어적 문법을 지키자.
⇒ 함수는 무언가를 하는(”Do”) 기능이다. 동사로 시작된 함수명을 짓자. 마찬가지로 멤버는 상태를 가진 이름이니 명사로 짓자.
- 의미를 정확히 표현하는 단어를 쓰려고 하자.
⇒ 제조(manufacture), 생산(generation), 생성/창조(creation), 제작(make) 와 같이 한글마저 무언가를 만든다는 점에서는 유의하지만 같지 않다. 물론 의미에 집착해 어려운 단어를 쓰지 않는 것도 좋은 글이다.
- 글의 흐름을 문단으로 끊자.
⇒ 글을 읽는 독자도 ‘,’와 ‘~도, 그리고’와 같이 문장이 마무리되지 않거나, 문장이 너무 늘여져있는 글은 읽기 힘들다. 함수를 문단으로 비유해, 한 함수가 너무 커진다면 나누도록 하자.
- 순서를 만들자.
⇒ 좋은 글은 이전 내용을 되짚어보려 하지 않아도, 다음과 연관되어 연상하기 쉽다. 마찬가지로 코드를 읽었을 때 순차적인 흐름과 자연스러움이 느껴지는지 확인해보자.
마무리
몇가지 예시를 들어보았다. 내가 제시한 법칙외에 일반적으로 언급되는 좋은 글을 쓰기 위한 방법들도 물론 코딩에 적용될 수 있다. 좋은 글 쓰기 법칙이 모든 상황에 대응될 수는 없지만, 유용하게 쓰일 수 있다고 확신한다.
더 나아가서 영어로 된, 코드를 난해한 암호가 아닌 일상생활에서 볼 수 있는 글
이라는 매체로 쉽게 받아들였으면 한다.
함께 보면 좋은 자료
- 책 클린코드 : 5장까지는 이 글의 목적을 잘 설명하고 있으니 추천한다.
- [CodeAesthetic] Don’t Write Comments: 약 6분의 동영상. 영어로 되있어서 조금 어려울 수도 있지만… 마찬가지로 이 글의 목적을 짧은 시간내 정말 정말 잘 설명한다. 동영상 매체로서 시각화 또한 잘해서 꼭 보길 추천한다.