Page 13 -
P. 13
하 면 널 참 조 를 허 용 하 는 코 드 와 널 참 조 를 금 지 하 는 코 드 를 명 확 하 게 분 리 할 수 있 다. 하 지 만 궁
극 적 으 로 프 로 그 램 에 서 널 참 조 를 아 예 사 용 하 지 못 하 게 막 는 일 은 여 러 분 의 책 임 이 다.
외 부 세 계 에 의 존 하 는 프 로 그 램 을 제 대 로 실 행 하 려 고 노 력 하 는 과 정 에 서 많 은 버 그 가 발 생 한 다.
하 지 만 어 떤 프 로 그 램 이 든 어 느 정 도 외 부 세 계 에 의 존 하 기 마 련 이 다. 이 런 의 존 관 계 를 프 로 그 램
의 일 부 분 으 로 제 한 하 면, 외 부 세 계 에 대 한 의 존 으 로 인 해 생 길 수 있 는 버 그 를 완 전 히 제 거 하 지
는 못 하 더 라 도 문 제 를 더 쉽 게 찾 아 내 고 다 룰 수 있 다.
여 러 분 은 이 책 에 서 프 로 그 램 을 더 안 전 하 게 만 들 기 위 한 다 음 몇 가 지 방 법 을 배 운 다.
● 가 변 참 조( 변 수) 사 용 을 피 하 고, 상 태 변 이 를 피 할 수 없 는 경 우 에 는 그 부 분 을 추 상 화 하 라.
● 제 어 구 조 를 피 하 라.
● 효 과 (eff e ct , 외 부 세 계 와 의 상 호 작 용 을 말 한 다!)를 여 러 분 이 작 성 하 는 프 로 그 램 의 일 부 영 역 안
에 서 만 일 어 나 도 록 제 한 하 라. 이 말 은 프 로 그 램 을 작 성 할 때 일 부 한 정 된 영 역 을 제 외 한 나
머 지 부 분 에 서 콘 솔 등 의 장 치 에 출 력 하 거 나 파 일, 데 이 터 베 이 스, 네 트 워 크 등 의 장 치 에 데
이 터 를 쓰 는 등 의 행 위 를 하 지 말 아 야 한 다 는 뜻 이 다.
● 예 외 를 던 지 지 말 라. 예 외 를 던 지 는 것 은 무 조 건 분 기 (G O T O )의 현 대 적 인 변 형 이 라 할 수 있
다. 이 로 인 해 프 로 그 램 이 스 파 게 티 코 드 (s p a g h etti c o d e )가 될 수 있 다. 스 파 게 티 코 드 라 는 말
은 프 로 그 램 흐 름 이 어 디 서 시 작 하 는 지 알 수 있 지 만, 어 디 로 흘 러 가 는 지 제 대 로 따 라 갈 수
없 다 는 뜻 이 다. 7 장 에 서 는 예 외 를 아 예 던 지 지 않 는 방 법 을 배 운 다.
1 .1 .1 안 전 하 게 부 수 효 과 처 리 하 기
앞 에 서 사 용 한 효 과 (eff e ct )라 는 말 은 외 부 세 계 와 의 모 든 상 호 작 용 을 뜻 하 는 말 이 었 다. 콘 솔 에
메 시 지 를 출 력 하 거 나 파 일, 데 이 터 베 이 스, 네 트 워 크 등 에 데 이 터 를 쓰 거 나 컴 포 넌 트 범 위 밖 에
있 는 어 떤 다 른 원 소 를 변 경 하 는 일 을 이 런 상 호 작 용 의 예 로 들 수 있 다. 프 로 그 램 은 일 반 적 으
로 자 신 만 의 영 역 이 있 는 작 은 블 록 으 로 이 뤄 진 다. 어 떤 언 어 는 이 런 블 록 을 프 러 시 저 (pr o c e d ur e )
라 고 부 르 고, 다 른 언 어( 자 바 등) 는 메 서 드 (m et h o d )라 고 부 른 다. 코 틀 린 에 서 는 이 런 블 록 을 함 수
(f u n cti o n)라 한 다. 하 지 만 코 틀 린 에 서 사 용 하 는 함 수 라 는 용 어 는 수 학 함 수 와 같 은 개 념 을 뜻 하
지 는 않 는 다.
0 3 6