개발교양도서/프로그래머의뇌

코드 표식 파악 연습

IT록흐 2023. 4. 5. 16:44
반응형
 

코드 신속하게 읽는 방법 - 청크(Chunk)

코드를 신속하게 읽는데 어려움을 느끼는 이유는 '생소'하기 때문이다. 생소한 코드는 장기기억이 아닌 단기기억에 기억되는데, 이런 단기기억공간을 두고 STM(Short-Term Memory)이라 부른다. STM은

lordofkangs.tistory.com

 

 

지난 포스팅에서

코드를 신속하게 읽기 위한 방법

에 대해서 알아 보았다. 

 

이번 포스팅에서는

표식(Beacon) 파악 연습에 대해서 다루어보겠다.

 

 

표식(Beacon)

숙련된 개발자는 코드를 읽고 이해할 때 표식을 많이 이용하지만 초급 개발자는 그렇지 않다. 표식파악연습이란, 변수명, 주석, 메소드명에서 힌트를 얻어 코드가 어떤 기능을하는지를 파악하는 연습이다. 

 

def print_in_order(root): 
	if root :
    	print_in_order(root.left)
        print(root.val)
        print_in_order(root.right)

 

위 코드의 변수명, 메소드명 에서 우리는 많은 힌트를 얻을 수 있다.

 

print라는 단어를 통해 우리는 해당 함수가 출력기능을 수행함을 알 수 있다.

root, left, right를 통해, 자료구조가 이진트리임을 알 수 있다.

 left -> root -> right로  print함수가 수행됨을 통해, 중위순회를 하고 있음을 알 수 있다.

 

우리는 표식만으로 코드의 많은 정보를 획득할 수 있다. 

 

연습과정

1) 코드 선택

 본인이 잘 아는 언어로 이루어진 익숙치 않은 코드 속 함수를 선택한다. 

 

2) 코드파악

선택한 함수의 기능을 파악하고 코드가 하는 일을 요약해라.

 

3) 적극적 확인 

 주석문, 변수명, 메서드명, 임시저장값 등을 적극적으로 활용하여 코드의 의미를 이해하되, 왜 그렇게 생각했는지를 적는다.

 

4) 회고

아래 질문에 답해 본다.

 

- 어떤 표식을 찾았는가?

- 찾은 표식들은 코드의 요소인가 아니면 사람의 언어로된 정보인가?

- 그표식들은 무엇에 관해 알려주고 있는가?

- 그 표식들은 코드의 도메인에 대한 지식을 나타내는가?

- 그 표식들은 코드의 기능에 대한 지식을 나타내는가?

 

5) 적용

개선 가능하거나 확장 가능한 표식이 있는지 살펴본다.

 

6) 비교

연습내용을 친구와 비교해본다. 

 

 

 


 

 

참고자료

 

프로그래머의 뇌:훌륭한 프로그래머가 알아야 할 인지과학의 모든 것

COUPANG

www.coupang.com

 

 

 

 

 

 

 

반응형