소스코드 읽을때 표류안하는 기법

Posted on

소스코드를 읽을때 첫대면시에 어렵게 느껴지는 이유가 무엇일까요?

• 자연언어와 다른 기호의 나열이라서
• 코드를 읽는 요령이 아직 체현이 안되서

이 두가지가 일반적입니다. 우리가 익숙한 방식으로 기호를 보게 되는 것이 당연하고, 아직 체현이 안된 방식은 익숙하지 않으니 시선에 안들어오는 것이죠.

우선 소스코드는 언어별로 상이한 문법과 기호로 표시되는데요. 그럼에도 불변하는 형식과 의미가 공통되기도 합니다. 이점에 기반해서 한 언어를 배우고 익숙해지면 공통된 것과 차이나는 것을 구별하게 될때 타언어에서도 적용되는 것을 알아차릴 수 있다면 우선 소스코드 읽는 것의 반은 잘 하게 되는 것입니다.

우선 기호를 잘 알려면 아래 사항을 염두에 두고 보면 됩니다.

• 각 키워드들의 의미
• 각 키워드들의 구성 성분 분류
• 각 키워드들이 합해져서 실행하는 기능

이 세가지를 단련해두면 보자마자 어떤 기능인지 알게 되어 소스코드 읽는 속도가 빨라집니다.

예를 들면요. 변수 선언을 할때

int a = 10;

이라고 된 구문은

bool b = true;

와 형태적으로 흡사하지만 다릅니다. 왜일까요?

우선

자료형 변수명 대입기호 값

이런 형식은 같은데, 자료형이 다르고, 변수명도 다르고 대입된 값도 다릅니다.

반대로 공통점은 변수에 값을 대입하는 구문이라는 것이죠.

그러니 소스코드를 첫대면하면 있게 되는 숨턱 막히는 기분을 느끼기보다 우선

• 코드의 형식을 떠올려본다
• 코드를 구성하는 키워드들의 문법 구성 성분 분류를 떠올려본다
• 코드들의 실행 기능과 조합된 효과를 떠올려본다

이 세가지를 잘하면 됩니다.

이를 잘 하기 위해서 또하나 준수할 것은요.

• 최대한 실행 흐름이 주는 실행 결과를 예측해보는 능력

이를 달성하면 코드 구문을 직접 입력하는 것에 능률이 붙고, 이후에 실행에 문제가 있을때 버그를 잡아내는 것도 가능해집니다.

중요한 핵심은 위에 말한 코드 형태에서 형식을 추출해내서 이 기준에서 코드 흐름을 보고 기능을 추론하고 실행 결과를 떠올려보는 것이네요.

이를 단련하는 것이 프로그램 언어를 배우는데 중심적인 역할을 합니다.

요령은 나도 할 수 있다고 생각하고 임해서 공부하시면 된다는 것이구요. 수학에서

이 기호가 첫대면하면 기괴하게 보이고 어려워보이지만 사실은 1+2+3+4+5+6+7+8+9+10=55를 표현한 허무한 식이듯이 소스코드도 그냥 임해서 보면 아무것도 아니라고 느끼실 것입니다.

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다