PH pullh
입문 블로그 / 함수는 언제 나누는 게 좋을까
코드 기초 5분 Beginner

함수는 언제 나누는 게 좋을까

함수를 잘게 쪼개야 한다는 말은 자주 듣지만, 초보자는 어디서 끊어야 할지 감이 잘 안 온다. 가장 실용적인 기준만 골랐다.

함수 나누기 커버 이미지

처음에는 함수를 만드는 것 자체가 어색하다. 그런데 어느 순간부터는 코드가 길어져서, 어디서부터 잘라야 할지 더 어렵게 느껴진다.

함수 분리는 멋있어 보이기 위한 작업이 아니라, 내가 다시 읽을 때 덜 헷갈리게 만들기 위한 작업이다.

같은 이름을 붙일 수 있으면 나눌 수 있다

여러 줄의 코드 묶음을 보고 이 부분은 입력 검증, 이 부분은 계산, 이 부분은 출력처럼 이름을 붙일 수 있다면 함수로 나눌 후보가 된다.

반대로 아직 이름이 잘 안 붙는다면, 성급히 나누기보다 로직을 조금 더 이해한 다음에 쪼개도 된다.

FUNCTION

def is_valid(score):
    return 0 <= score <= 100

def grade(score):
    if score >= 80:
        return "pass"
    return "retry"

검증과 판단을 나누면 각각의 역할이 더 또렷해진다.

함수를 나눠 볼 신호

  • 같은 코드가 두 번 이상 나온다.
  • 주석으로 설명하고 싶은 블록이 있다.
  • 입력 검증과 실제 계산이 한데 섞여 있다.
  • 하나의 함수 안에서 책임이 두세 번 바뀐다.

함수 분리는 멋을 위한 기술이 아니라, 다시 읽을 미래의 나를 위한 배려다.

코드 기초

이 글의 포인트

  • 함수는 멋보다 가독성을 위해 나눈다.
  • 같은 이름을 붙일 수 있는 묶음이라면 함수 후보가 된다.
  • 중복, 역할 변화, 설명 욕구가 보이면 분리 타이밍일 가능성이 높다.

Next Read

배열, 리스트, 딕셔너리를 처음 배울 때 헷갈리는 지점

문법을 외우는 것보다 언제 어떤 모양의 데이터를 쓰는지 이해하면 자료구조 입문이 훨씬 쉬워진다.