에러 처리까지 익혔다면, 이제 Go 코드에서 거의 항상 함께 등장하는defer 문을 정리할 차례다.defer는 문법 자체는 단순하지만,언제 실행되는지, 어떤 순서로 동작하는지를 정확히 이해하지 않으면의도와 다른 코드가 만들어지기 쉽다.이 글에서는defer의 기본 동작 방식자원 관리에서의 사용 패턴실제로 자주 실수하는 포인트를 중심으로 정리한다.defer란 무엇인가defer는 함수 종료 시점에 실행될 코드를 등록하는 키워드다.defer fmt.Println("end")fmt.Println("start")실행 결과는 다음과 같다.startenddefer로 등록된 코드는 현재 함수가 return되기 직전에 실행된다정상 종료든, 에러 반환이든 동일하게 실행된다이 특성 때문에, defer는 자원 정리에 매우 잘 ..