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 Error Handling  (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.