ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Swift 5.6 Error Handling
    기술/iOS 2022. 3. 20. 17:53

    Error Handling

    Representing and Throwing Errors

    Swift 에서는 Error 프로토콜에 준수하는 타입의 값으로 표현됩니다. 이 빈 프로토콜은 에러를 처리하는 것에 대해 사용될 수 있음을 나타냅니다.

    Swift 열거형은 관련된 에러 조건의 그룹을 모델링하는데 특히 적합하며 관련값들을 사용하여 에러의 특성에 대한 추가 정보를 전달할 수 있습니다.

    Handling Errors

    Swift 에서는 에러를 처리하는 4가지 방법이 있습니다. 함수에서 해당 함수를 호출하는 코드로 에러를 전파하거나, do-catch 문을 사용하거나 옵셔널 값으로 에러를 처리ㅏㅎ거나 에러가 발생하지 않을것이라 주장할 수 있습니다.

    Propagating Errors Using Throwing Functions

    throws 키워드가 작성된 함수는 내부에서 발생한 에러를 호출된 범위로 전파합니다.

    Handling Errors Using Do-Catch

    Converting Errors to Optional Values

    에러를 옵셔널 값으로 반환하여 처리하기 위해 try? 를 사용합니다.

    try? 표현식을 평가하는 동안 에러가 발생하면 이 표현식의 값은 nil 입니다.

    Disabling Error Propagation

    런타임 에러가 발생하지 않을것이라 확신하는 메서드에는 try! 를 사용할 수 있습니다.

    Specifying Cleanup Actions

    코드 실행이 현재 블럭이 종료되기 직전에 defer 구문을 사용하여 일련의 구문을 실행합니다. 이 구문을 사용하여 에러가 발생하여 종료되거나 reutrn 또는 braek 와 같은 구문에 의해 종료되는 방식에 상관없이 필요한 정리를 수행할 수 있습니다.

    defer 구문은 현재 범위가 종료될 때까지 실행을 연기합니다. 지연된 구문은 braek reeturn 구문과 같이 구문의 밖으로 제어를 이동하거나 에러를 발생시키는 코드를 포함할 수 엇습니다.

    '기술 > iOS' 카테고리의 다른 글

    Swift 5.6 Concurrency  (0) 2022.03.20
    Swift 5.6 Optional Chaining  (0) 2022.03.20
    Swift 5.6 Deinitialization  (0) 2022.03.20
    Swift 5.6 Initialization  (0) 2022.03.20
    Swift 5.6 Inheritance  (0) 2022.03.20

    댓글 0

Designed by Tistory.