
이 강의는 파이썬 강의 49강입니다.
이전 강의에서는 메뉴형 + 데이터 저장 구조를 만들었습니다.
이제 코드가 슬슬 길어지고,
“한눈에 안 들어오는 느낌”이 들기 시작할 시점입니다.
이번 강의에서는 코드가 길어질 때 어떻게 정리해야 하는지를 배웁니다.
왜 코드 정리가 필요한가
코드가 길어진다는 건
프로그램이 성장하고 있다는 뜻입니다.
문제는 “길어지는 것”이 아니라
정리 없이 길어지는 것입니다.
정리가 안 된 코드는 이런 신호를 보냅니다.
- 어디가 시작이고 끝인지 모르겠다
- 기능 하나 추가하기가 무섭다
- 다시 보면 내가 짠 코드 같지 않다
이때 필요한 게
정리 기준입니다.
1️⃣ 정리의 1단계 – 역할로 나눈다
가장 먼저 할 일은
코드를 역할별로 나누는 것입니다.
- 메뉴 출력
- 입력 처리
- 데이터 처리
- 저장 / 종료 처리
“이 코드가 무슨 역할을 하지?”
이 질문으로 구분합니다.
2️⃣ 긴 코드는 함수로 자른다
아래처럼 길어진 코드를 봅니다.
print("1. 추가")
print("2. 목록")
print("0. 종료")
choice = input("선택: ")
이 코드는
메뉴 출력 역할입니다.
함수로 자릅니다.
def show_menu():
print("1. 추가")
print("2. 목록")
print("0. 종료")
코드 길이는 같아도
읽는 부담은 확 줄어듭니다.
3️⃣ 한 함수 = 한 역할
아주 중요한 기준입니다.
❌ 한 함수에서
- 입력 받고
- 계산하고
- 출력까지 다 하기
⭕ 역할별로 나누기
def get_input():
return input("선택: ")
def handle_choice(choice):
print("선택:", choice)
함수 이름만 봐도
흐름이 보이게 만드는 게 목표입니다.
4️⃣ 이름이 정리의 절반이다
변수와 함수 이름이 애매하면
아무리 구조가 좋아도 읽기 힘듭니다.
# before
a = input()
# after
menu_choice = input()
이름만 바꿔도
코드 이해 속도가 달라집니다.
5️⃣ 같은 패턴이 보이면 묶는다
아래처럼
비슷한 코드가 반복되면 신호입니다.
print("결과:", result)
print("결과:", total)
print("결과:", avg)
함수로 묶습니다.
def print_result(value):
print("결과:", value)
6️⃣ 위에서 아래로 읽히게 만든다
좋은 코드는
위에서 아래로 자연스럽게 읽힙니다.
def main():
show_menu()
choice = get_input()
handle_choice(choice)
main()
구현은 아래에,
흐름은 위에 두는 습관이 중요합니다.
7️⃣ 정리는 한 번에 하지 않는다
정리는
기능이 잘 동작하는 걸 확인한 뒤 합니다.
순서:
- 일단 동작하게 만든다
- 테스트한다
- 그 다음 정리한다
이 순서를 지키면
정리하다 망가질 일이 줄어듭니다.
8️⃣ 실습 예제
지금까지 만든
저장형 메뉴 프로그램을 기준으로
아래를 점검해보세요.
- 함수 하나가 너무 길지 않은가?
- 함수 이름만 보고 역할이 보이는가?
- 중복되는 코드가 있는가?
하나라도 보이면
그게 정리 포인트입니다.
이번 강의 핵심 정리
- 코드가 길어지는 건 자연스러운 일이다
- 역할 기준으로 나눈다
- 함수 하나는 한 역할만 한다
- 이름은 가장 강력한 정리 도구다
'⚙️ Python > 💻 Python 기초' 카테고리의 다른 글
| [Python] 51강 콘솔 게임 구조 이해하기 (게임은 프로그램의 집합) (0) | 2026.01.15 |
|---|---|
| [Python] 50강 작은 프로그램을 끝까지 완성하는 방법 (0) | 2026.01.15 |
| [Python] 48강 데이터 저장형 콘솔 프로그램 구조 만들기 (0) | 2026.01.14 |
| [Python] 47강 메뉴형 콘솔 프로그램 구조 만들기 (0) | 2026.01.13 |
| [Python] 46강 기존 코드 리팩토링하기 (고치지 말고 개선하기) (0) | 2026.01.13 |