swift ๋ฌธ๋ฒ๐ค
[SWIFT] Resultํ์
eundeang
2023. 6. 6. 12:38
์๋ฌ์ฒ๋ฆฌ๋ฅผ do catch๋ฌธ์ผ๋ก ์ฒ๋ฆฌํ๋ ๋ฐฉ์์ ๋ถํธํจ์ ํด์ํ resultํ์ ๋ฑ์ฅ - swift 5 ์ดํ
์ฌ์ฉํ๋ ์ด์ ?
- ์ฑ๊ณต/์คํจ์ ๊ฒฝ์ฐ๋ฅผ ๊น๋ํ๊ฒ ์ฒ๋ฆฌ๊ฐ ๊ฐ๋ฅํ ํ์
- ๊ฐ๋ฐ์์๊ฒ ์๋ฌ์ฒ๋ฆฌ์ ๋ํ ๋ค์ํ ์ฒ๋ฆฌ ๋ฐฉ๋ฒ์ ๋ํ ์ต์ ์ ์ ๊ณต (๊ธฐ์กด์ ์๋ฌ์ฒ๋ฆฌ ํจํด์ ์์ ํ ๋์ฒดํ๋ ค๋ ๋ชฉ์ x)
eunm Result<Success, Failure> where Failure : Error
- Success, Failure์ ์ ๋ค๋ฆญ์ผ๋ก ์ ์ ( ์ฐ๋ฆฌ๊ฐ ์ฌ์ฉํ ๋๋ ๊ตฌ์ฒด์ ์ธ ํ์ ์ ๋ฃ์ด์ ์ฌ์ฉํ๋ฉด ๋จ : ๋ง์ฝ <Bool, Error>๋ก ์ฐ๋ฆฌ๊ฐ ์ฌ์ฉํ๋ค๋ฉด ์ฐ๋ฆฌ๋ ์ฑ๊ณตํ์๋ ์ฐ๊ด๊ฐ์ผ๋ก Bool๊ฐ์ ์ ๋ฌํ๊ณ , ์คํจํ์ ๋๋ Error๊ฐ์ ์ ๋ฌํ๋ค๋ ๋ป์ด๋ค. )
- case success(Success)
- case failuare(Failure)
- ์ ๋ค๋ฆญ์ ์ด๊ฑฐํ์์ ์ฐ๋ ค๋ฉด ์ฐ๊ด๊ฐ ๋ฐ๋์ ํ์