프로그래밍사고 2

디버깅은 에러 찾기가 아니라 '원인 좁히기'다

목차1. 주제 소개2. 핵심 내용3. 적용 방법4. 정리5. 자주 묻는 질문1. 주제 소개디버깅을 "에러 메시지 찾기" 정도로 생각하면 자주 막히게 됩니다. 실제 디버깅의 핵심은 정답을 한 번에 맞히는 것이 아니라 원인 범위를 점점 좁혀가는 과정입니다. 디버깅은 추측이 아니라 가설과 검증의 반복입니다.2. 핵심 내용증상과 원인을 분리해서 본다화면이 안 보이는 것은 증상이고, 잘못된 상태값/렌더 조건/비동기 타이밍 문제는 원인입니다. 증상만 보고 바로 수정하면 임시방편이 되기 쉽습니다.재현 가능한 최소 조건을 만든다문제가 언제 발생하는지 입력값, 클릭 순서, 환경을 고정해 "재현 시나리오"를 만드는 것이 우선입니다. 재현이 되면 원인 추적 속도가 급격히 빨라집니다.로그와 브레이크포인트로 범위를 좁힌다con..

함수(Function)는 왜 필요할까? 반복을 줄이는 사고법

목차1. 주제 소개2. 핵심 내용3. 적용 방법4. 정리5. 자주 묻는 질문1. 주제 소개코드를 조금만 작성해도 같은 로직을 여러 번 복붙하게 됩니다. 이때 필요한 개념이 함수(Function)입니다. 함수는 단순히 문법이 아니라 반복을 줄이고, 실수를 줄이고, 코드를 재사용하게 만드는 사고 도구입니다.2. 핵심 내용함수는 작업을 이름 붙여 묶는 것여러 줄의 동작을 하나의 이름으로 묶어두면 필요할 때 호출만 하면 됩니다. 예를 들어 "할인 가격 계산"이나 "입력값 검증" 같은 반복 작업은 함수로 분리하는 것이 효율적입니다.입력(매개변수)과 출력(반환값)을 명확히좋은 함수는 무엇을 받아서 무엇을 돌려주는지 분명합니다. 입력과 출력을 명확히 하면 테스트가 쉬워지고, 다른 사람이 읽을 때도 이해가 빠릅니다.중..