ios(17)
-
Swift - ์ด๊ฑฐํ(enum), ์์๊ฐ, ์ฐ๊ด๊ฐ
Swift - ์ด๊ฑฐํ(enum), ์์๊ฐ, ์ฐ๊ด๊ฐ ์ค๋์ enum์ ๋ํด์ ์์๋ณด๋ ค๊ณ ํฉ๋๋ค. enum์ด๋? ์ฐ๊ด๋ ์์์ ๊ฐ์ ๋ฌถ์ด ํ๋์ ํ์ ์ผ๋ก ์ ์ํ ์๋ฃํ ์ฝ๋๋ฅผ ํตํด ๋ฐ๋ก ํ์ธํด๋ด ์๋ค. apple, microsoft, google์ด๋ผ๋ ์์๋ค์ ๋ฌถ์ด์ Company๋ผ๊ณ ์๋ก์ด ํ์ ์ ์ ์ํ์ต๋๋ค. ๊ธฐ์กด์ Int, String, Bool ํ์ ๊ณผ๋ ๋ค๋ฅด๊ฒ "์ฌ์ฉ์ ์ ์ ํ์ " ์ด๋ผ๋ ๊ฒ์ ์์์ผ ํฉ๋๋ค. ๊ทธ๋ผ ์ด enum์ ์ ์ฌ์ฉํ ๊น์? enumํ์ ์ "์ฝ๋์ ์์ ์ฑ๊ณผ ๊ฐ์์ฑ" ๋๋ฌธ์ ์ฌ์ฉํฉ๋๋ค. - ์ง์ ์ ์ํ ํ์ ์์์๋ง ์์๊ฐ์ ์ ๊ทผํ ์ ์๊ธฐ ๋๋ฌธ์ ์์ ์ฑ์ ๋์ฌ์ฃผ๊ณ ํ์ ๊ณผ ์์๋ช ์ด ์ง๊ด์ ์ผ๋ก ์ ์ ์๊ฒ ์ ์ํด๋จ๊ธฐ ๋๋ฌธ์ ๊ฐ์์ฑ์ ๋์ฌ์ค๋๋ค. enum์ ์ธ์ ๋ง์ด ์ฌ์ฉํ ๊น์? switc..
2022.06.30 -
Swift- inout
Swift - inout ์ค๋์ Swift ํจ์ ๋ฌธ๋ฒ์ธ inout ํค์๋์ ๋ํด์ ์์๋ณด๋ ค๊ณ ํฉ๋๋ค. ์ฐ๋ฆฌ๋ ์ ํฌ์คํ https://pololove.tistory.com/97 ์์ ์ค์ํํธ์์ ํจ์๊ฐ ๋ฌด์์ธ์ง์ ๋ํด ํ์ตํ์ต๋๋ค. ๊ธฐ๋ณธ์ ์ผ๋ก ํจ์์ ํ๋ผ๋ฏธํฐ๋ let์ผ๋ก ์ ์ธ๋๋ฉฐ ์ด๋ "์์"์ด๊ธฐ ๋๋ฌธ์ ํจ์ ๋ด๋ถ์์ ๋ณ๊ฒฝ์ด ๋ถ๊ฐํ๋ค๋ ํน์ง์ด ์์ต๋๋ค. ๊ทธ๋ผ ๋ณ๊ฒฝ์ด ๋ถ๊ฐ๋ฅํ ์ํ๋ก๋ง ํจ์๋ฅผ ์ฌ์ฉํด์ผํ ๊น์? ์๋๋๋ค. ํจ์์ ์ ๋ฌ๋ฐ์ ํ๋ผ๋ฏธํฐ๊ฐ์ ๋ณ๊ฒฝ์ํค๊ธฐ ์ํด ์ฐ๋ฆฌ๋ inout ํค์๋๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค. inout ํ๋ผ๋ฏธํฐ ํจ์์ ํ๋ผ๋ฏธํฐ ๊ฐ์ ๋ณ๊ฒฝํ๊ธฐ ์ํ ํค์๋. inoutํค์๋์ ์ฌ์ฉ๋ฒ๋ถํฐ ์์๋ณด๊ฒ ์ต๋๋ค. ํจ์์ ํ์ ์์ inout ํค์๋๋ฅผ ์ ์ด์ค์ผ๋ก์จ ํ๋ผ๋ฏธํฐ๋ฅผ let์ผ๋ก ์ ์ธํ๋ ๊ฒ์ด ์๋..
2022.06.28 -
Swift - ํจ์
swift - ํจ์ ์๋ ํ์ธ์. ์ค๋์ swift์ ํจ์์ ๋ํด์ ์์๋ณด๋ ค๊ณ ํฉ๋๋ค. ํ๋ก๊ทธ๋๋ฐ์์ ํจ์๋ "์ด๋ค ๊ธฐ๋ฅ์ ์ํํ๊ธฐ ์ํ ์ฝ๋์ ๋ชจ์"์ด๋ผ๊ณ ์ ์ํ ์ ์๋๋ฐ์, ๋ค์ ์์๋ฅผ ์ดํด๋ด ์๋ค. ํจ์๋ ์ ์ธ๋ถ์ ํธ์ถ๋ถ๋ก ๋๋๊ฒ ๋ฉ๋๋ค. func ํจ์์ด๋ฆ() { }์ ํํ๋ ์ ์ธ๋ถ, ํจ์์ด๋ฆ()์ ํํ๋ ํธ์ถ๋ถ์ ๋๋ค. ์ผ๋ฐ์ ์ผ๋ก ์ฝ๋๋ ์์ฐจ์ ์ผ๋ก ์คํ์ด ๋๊ธฐ ๋๋ฌธ์ ์์๊ฐ์ด ํจ์๋ฅผ ํธ์ถํ๋ ๊ฒ์ด ์๋๋ผ๋ฉด print๋ฌธ์ฅ์ ๋ ๋ฒ์จ์ผ ์๋ํ๋๋๋ก ์ถ๋ ฅ์ด ๋ ๊ฒ์ ๋๋ค. ์ฌ๊ธฐ์ ์ค์ํ ๊ฒ์ ์ฐ๋ฆฌ๋ ํจ์๋ฅผ ์ ์ํจ์ผ๋ก์จ ์ด ํจ์๋ฅผ "ํ๋ฒ๋ง ํธ์ถํด๋" ๋๊ฐ์ ํ๋ฆฐํธ ํจ์๊ฐ ํธ์ถ๋๋ ๊ฒ์ ๋ณผ ์ ์์ต๋๋ค. ์ด๋ฅผ ํ๋ก๊ทธ๋๋จธ๋ค์ "์ฌ์ฌ์ฉ์ด ๊ฐ๋ฅํ ์ฝ๋"๋ผ๊ณ ๋ถ๋ฆ ๋๋ค. ํ๋ผ๋ฏธํฐ, ์๊ท๋จผํธ ์์ ์์์ฝ๋์์๋ ํ๋ผ๋ฏธํฐ๊ฐ..
2022.06.27 -
Swift - if let (Optional)
Swift - if let ์กฐ๊ฑด๋ฌธ swift์์ ๊ธฐ๋ณธ์ ์ผ๋ก ์ฌ์ฉํ๋ ์กฐ๊ฑด๋ฌธ์ ๋ํด์ ์์๋ณด๋ ค๊ณ ํฉ๋๋ค. ์กฐ๊ฑด๋ฌธ์ ์๊ธฐ ์ ์ swift์์ ์ฌ์ฉํ๋ optional์ ๋ํด์ ๋จผ์ ์์๋ด ์๋ค. Optional optional value๋ ๊ฐ์ด ์กด์ฌํ์ง ์์ ๋๋ฅผ ๋๋นํ์ฌ ์์ ์ ์ธ ํ๋ก๊ทธ๋๋ฐ์ ํ๊ธฐ์ํด ๋ง๋ค์ด์ง ๊ธฐ๋ฅ์ ๋๋ค. ์๋ ์์๋ฅผ ํตํด ์กฐ๊ธ ๋ ์ง๊ด์ ์ผ๋ก ๋๊ปด๋ด ์๋ค. ์ฌ์ฉ์๊ฐ ํ์ด์ง์ ๋ก๊ทธ์ธํ๊ณ ์ ์ํ์ ๋ ๋๋ค์์ด ์กด์ฌํ๋ค๋ฉด ๋๋ค์์, ์กด์ฌํ์ง ์๋๋ค๋ฉด ์ฌ์ฉ์์ ์ด๋ฆ์ ๋ ธ์ถ์ํจ๋ค๊ณ ๊ฐ์ ํด๋ด ์๋ค. ๊ทธ๋ฌ๋ฉด ์ฐ๋ฆฌ๋ ์ด์ ๊ฐ์ด ์ฝ๋๋ฅผ ์์ฑํ ์ ์์ต๋๋ค. let nickname: String?= "jimin" //์๋ฒ์์ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ ธ์จ๋ค๋ฉด ์๊ณผ ๊ฐ์ด String์ด ์๋ nil๊ฐ์ด ๋ค์ด์ฌ ์๋ ์๊ธฐ ๋๋ฌธ์ ?..
2022.06.12 -
Swift - let, var, array, dictionary
Swift - let, var, array, dictionary ์ค์ํํธ์์ ์์ฃผ ์ฌ์ฉํ๋ ๋ณ์์ธ let, var์ ์๋ฃ๊ตฌ์กฐ์ธ array, dictionary์ ๋ํด์ ์์๋ณด๋ ค๊ณ ํฉ๋๋ค. var vs let ์ค์ํํธ์์ var๋ "๋ณํ ์ ์๋ ๊ฐ", let์ "๋ณํ ์ ์๋ ๊ฐ"์ผ๋ก ์ฐ์ ๋๋ค. var a = 2 a = 3 let b = 3 b = 4 //์ค๋ฅ b๋ ์์๊ธฐ ๋๋ฌธ์ ์ปดํ์ผ์๋ฌ๊ฐ ๋์ค๊ฒ ๋ฉ๋๋ค. let label = "The worth is" let worth = 100 let worthLabel = label + worth // ๋ฌธ์์ด๊ณผ ์ซ์๊ฐ ๊ฒน์ณ ๋ํ๋๋ ์๋ฌ. ๋ฌธ์์ด๊ณผ ์ซ์๊ฐ ํฉ์ณ์ ธ์ ๋์ค๊ธฐ ์ํด์๋ ์์๊ฐ์ ๋ฐฉ๋ฒ์ ์๋์ ๊ฐ์ด ๊ณ ์ณ์ค์ผ ํฉ๋๋ค. let label = "The wort..
2022.06.12