week-2-day-3-report주차 week-2-day-3-report일차 일일보고서
[2주차 3일] 오늘의 수업 이야기
Section titled “[2주차 3일] 오늘의 수업 이야기”날짜: 2025년 06월 25일
오늘의 주제
Section titled “오늘의 주제”반복문 제어와 디버깅 기법
수업 진행 기록
Section titled “수업 진행 기록”주 강사가 중첩 반복문과 라벨 사용법을 설명할 때, 많은 학생들이 혼란스러워했다. 실습 강사로서 개별적으로 도식을 그려가며 설명했다. 특히 라벨을 사용한 break와 continue의 차이점을 이해시키는 데 시간이 걸렸다.
IntelliJ의 디버깅 도구를 처음 사용해보는 시간이었다. 브레이크포인트 설정부터 스텝 오버, 스텝 인투 기능까지 하나씩 따라하도록 했다. 변수 값이 실시간으로 변하는 것을 보며 신기해하는 학생들이 많았다.
기존의 단일 String 변수 대신 ArrayList를 도입해 여러 개의 TODO 항목을 관리할 수 있도록 프로그램을 확장했다. 동적 배열의 개념이 생소했지만, add()와 get() 메서드를 반복 실습하며 익숙해졌다.
디버깅 실습 중 의도적으로 버그가 있는 코드를 제공하고, 학생들이 직접 찾아 수정하도록 했다. 논리 오류를 찾는 과정에서 디버깅 도구의 중요성을 체감할 수 있었다.
학생 상담 노트
Section titled “학생 상담 노트”- 라벨 사용법을 이해하지 못하는 경우. 일반 break와 라벨 break의 차이를 코드로 직접 비교 시연.
- ArrayList 선언 시 제네릭 문법에 대한 혼란. 일단
ArrayList<String>
형태로 외우도록 안내. - 디버깅 중 브레이크포인트가 작동하지 않는 문제. 실행 모드가 아닌 디버그 모드로 실행해야 함을 안내.
- for문과 while문에서 ArrayList 순회 시 IndexOutOfBoundsException 발생. 인덱스 범위 확인의 중요성 설명.
교육자 성찰
Section titled “교육자 성찰”디버깅 도구는 개발자의 필수 무기다. 학생들이 print문으로만 디버깅하던 습관에서 벗어나 체계적인 디버깅 방법을 익히도록 했다.
라벨을 사용한 반복문 제어는 실무에서 자주 사용하지는 않지만, 제어 흐름을 이해하는 데 도움이 된다. 개념 이해에 중점을 두고 설명했다.
ArrayList 도입으로 프로그램이 실용적으로 변했다. 학생들도 더 흥미를 느끼는 것 같다.
- 디버깅 도구 사용법 치트시트 제작
- ArrayList 주요 메서드 정리 자료 준비
- 논리 오류 찾기 연습 문제 추가 준비