Golang 오류 처리 숙련도

Beginner

This tutorial is from open-source community. Access the source code

소개

panic 랩은 Golang 에서 예기치 않은 오류를 처리하는 능력을 테스트하도록 설계되었습니다.

Panic (패닉)

이 랩은 정상적인 작동 중에 발생해서는 안 되거나, 우아하게 처리할 준비가 되지 않은 오류에 대해 panic 함수를 사용하여 빠르게 실패하도록 요구합니다.

  • Golang 프로그래밍 언어에 대한 기본적인 지식.
  • Golang 에서의 오류 처리에 대한 익숙함.
  • Golang 의 panic 함수에 대한 이해.
## 이 프로그램을 실행하면 패닉이 발생하고,
## 오류 메시지와 고루틴 추적이 출력되며,
## 0 이 아닌 상태로 종료됩니다.

## `main` 에서 첫 번째 패닉이 발생하면, 프로그램은
## 나머지 코드에 도달하지 않고 종료됩니다. 임시 파일을
## 생성하려는 프로그램을 보려면 첫 번째 패닉을
## 주석 처리하십시오.
$ go run panic.go
panic: a problem

goroutine 1 [running]:
main.main() /.../panic.go:12 +0x47
...
exit status 2

## 일부 언어와 달리, 많은 오류 처리에 예외를 사용하는 대신,
## Go 에서는 가능한 경우 오류를 나타내는 반환 값을 사용하는 것이 관용적입니다.

전체 코드는 다음과 같습니다.

// `panic` 은 일반적으로 예상치 못한 일이
// 잘못되었음을 의미합니다. 대부분의 경우, 정상적인 작동 중에
// 발생해서는 안 되거나, 우아하게 처리할 준비가
// 되지 않은 오류에 대해 빠르게 실패하기 위해 사용합니다.

package main

import "os"

func main() {

    // 이 사이트 전체에서 예상치 못한 오류를 확인하기 위해
    // panic 을 사용합니다. 이것은 panic 하도록 설계된
    // 사이트의 유일한 프로그램입니다.
    panic("a problem")

    // panic 의 일반적인 사용 사례는 함수가
    // 처리 방법을 모르거나 (또는 원하지 않는)
    // 오류 값을 반환하는 경우 중단하는 것입니다.
    // 새 파일을 생성할 때 예상치 못한 오류가 발생하면
    // `panic` 하는 예시입니다.
    _, err := os.Create("/tmp/file")
    if err != nil {
        panic(err)
    }
}

요약

이 랩에서는 Golang 에서 예기치 않은 오류를 처리하기 위해 panic 함수를 사용하는 방법을 배웠습니다. 필요할 때만 panic을 사용하고, 가능한 경우 오류를 우아하게 처리하는 것을 기억하십시오.