에러 핸들링
오류 코드보다는 예외 사용하기
// as-is
class DeviceController {
func sendShutDown() -> Void {
if handle != DevcieHandle.INVALID { // 불필요한 로직 존재
if record.getStatus() != DEVICE_SUSPENDED {
pauseDevice(handle)
clearDeviceWorkQueue(handle)
closeDevice(handle)
} else {
Log.error("Device suspended. Unable to shut down")
}
} else {
Log.error("Invalid handle")
}
}
}예외 클래스 잘 정의하기
에러 핸들링 잘하기
Last updated