하드코딩 소프트코딩

HY_1023·2026년 3월 17일

헷갈리는 부분 정리

목록 보기
23/40

소프트코딩 (Soft Coding)** 이에요!

값을 코드에 직접 박지 않고 외부에서 주입받는 방식이에요.

환경변수, 설정파일, DB, 함수 매개변수 등으로 값을 분리하는 것 모두 소프트코딩입니다 😊

--

하드코딩 (Hard Coding)

코드 안에 값을 직접 고정으로 박아 넣는 것이에요.

# ❌ 하드코딩
def get_user():
    return "heeyo"  # 이름을 직접 써넣음

# ✅ 하드코딩 X
def get_user(username):
    return username  # 변수로 받음
# ❌ 하드코딩
SECRET_KEY = "abc123xyz"  # 코드에 직접 노출

# ✅ 하드코딩 X
SECRET_KEY = os.environ.get("SECRET_KEY")  # 환경변수로 분리

문제점:

  • 값을 바꾸려면 코드를 직접 수정해야 함
  • 보안 위험 (비밀번호, API 키 노출)
  • 재사용 불가

Django에서는 settings.pySECRET_KEY, DEBUG, DB 정보 등을 .env 파일로 분리하는 게 기본이에요!

profile
개발언어를 배우는 과정 기록

0개의 댓글