๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
  • Dev Blog

iOS11

[Swift] ARC ๊ฐ•ํ•œ ์ฐธ์กฐ๋Š” ๋ฌด์—‡์ด๊ณ  ์™œ ํ•„์š”ํ•œ๊ฐ€์š”?๊ฐ•ํ•œ ์ฐธ์กฐ๋Š” ์ฐธ์กฐ ํƒ€์ž… ์ธ์Šคํ„ด์Šค์˜ ์ฐธ์กฐ ๊ณ„์ˆ˜๋ฅผ ์ฆ๊ฐ€์‹œํ‚ค๋ฉด์„œ ์ฐธ์กฐํ•˜๋Š” ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค. Swift๋Š” ARC๋ผ๋Š” ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ ๋ฐฉ์‹์„ ์‚ฌ์šฉํ•˜๋Š”๋ฐ, ์ด๋Š” ์ฐธ์กฐ ๊ณ„์ˆ˜๊ฐ€ 0์ด ๋˜๋Š” ์ธ์Šคํ„ด์Šค๋Š” ๋ฉ”๋ชจ๋ฆฌ์—์„œ ํ•ด์ œํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ๊ฐ•ํ•œ ์ฐธ์กฐ๊ฐ€ ์กด์žฌํ•ด์•ผ ์ฐธ์กฐ ๊ณ„์ˆ˜๊ฐ€ 0์ด ๋˜์ง€ ์•Š์•„ ๋ฉ”๋ชจ๋ฆฌ์—์„œ ํ•ด์ œ๋˜์ง€ ์•Š๊ณ  ์œ ์ง€์‹œํ‚ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. strong, weak, unowned reference๋Š” ๊ฐ๊ฐ ์–ธ์ œ ์‚ฌ์šฉํ• ๊นŒ์š”?๊ฐ•ํ•œ ์ฐธ์กฐ๋Š” ์ฐธ์กฐ ๊ณ„์ˆ˜๋ฅผ 1 ์ฆ๊ฐ€์‹œ์ผœ ์ฐธ์กฐํ•˜๊ณ  ์žˆ๋Š” ์ธ์Šคํ„ด์Šค๋ฅผ ๋ฉ”๋ชจ๋ฆฌ์—์„œ ์œ ์ง€์‹œํ‚ฌ ํ•„์š”๊ฐ€ ์žˆ์„ ๊ฒฝ์šฐ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์•ฝํ•œ ์ฐธ์กฐ๋Š” ๊ฐ•ํ•œ ์ฐธ์กฐ๋ฅผ ํ•  ๊ฒฝ์šฐ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐ•ํ•œ ์ˆœํ™˜ ์ฐธ์กฐ๋ฅผ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ๊ฐ•ํ•œ ์ฐธ์กฐ์™€ ๋‹ฌ๋ฆฌ ์ฐธ์กฐ ๊ณ„์ˆ˜๋ฅผ ์ฆ๊ฐ€์‹œํ‚ค์ง€ ์•Š๊ณ  ์ธ์Šคํ„ด์Šค๋ฅผ ์ฐธ์กฐํ•ฉ๋‹ˆ๋‹ค. ์ฐธ์กฐํ•˜๊ณ  ์žˆ๋Š” .. 2024. 5. 24.
[Swift] Extension ์Šค์œ„ํ”„ํŠธ์—์„œ Extension์€ ์–ด๋–ป๊ฒŒ ์‚ฌ์šฉ๋˜๋‚˜์š”? Swift์—์„œ Extension์€ Class, Struct, Enum, Protocol ํƒ€์ž…์— ๋ฉ”์„œ๋“œ๋‚˜ ํ”„๋กœํผํ‹ฐ๋ฅผ ์ถ”๊ฐ€์ ์œผ๋กœ ์ •์˜ํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. Extension ๊ทœ์น™์€ ์ €์žฅ ํ”„๋กœํผํ‹ฐ๋Š” ์ถ”๊ฐ€ํ•  ์ˆ˜ ์—†๊ณ , ์—ฐ์‚ฐ ํ”„๋กœํผํ‹ฐ๋งŒ ์ถ”๊ฐ€ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ, ์†Œ๋ฉธ์ž๋Š” ์ถ”๊ฐ€ํ•  ์ˆ˜ ์—†๊ณ , ์ƒ์„ฑ์ž๋Š” convenience init ๋งŒ ์ •์˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๐Ÿ“Œ ๊ธฐ๋Šฅ ํ™•์žฅ ๊ด€์ ์—์„œ์˜ Extension์šฐ๋ฆฌ๊ฐ€ ํ”ํžˆ ๊ธฐ๋Šฅ์˜ ํ™•์žฅ์„ ํ•  ๋•Œ์—๋Š” ์ƒ์†์„ ์‚ฌ์šฉํ•ด์„œ ํ•˜๊ฒŒ ๋˜๋Š”๋ฐ, ์ด๋Ÿฌํ•œ ์ˆ˜์ง์  ํ™•์žฅ์€ ๊ฒฐํ•ฉ๋„๊ฐ€ ๋†’์•„์ ธ ์ƒ์œ„ ํด๋ž˜์Šค์˜ ๊ตฌํ˜„์ด๋‚˜ ๋ณ€๊ฒฝ์ด ํ•˜์œ„ ํด๋ž˜์Šค์— ์˜ํ–ฅ์„ ๋ผ์น˜๋ฏ€๋กœ ์บก์Šํ™”๋ฅผ ํ•ด์น  ๊ฐ€๋Šฅ์„ฑ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์•„๋ž˜ ์ฝ”๋“œ๋Š” ์ƒ์†์œผ๋กœ ๊ธฐ๋Šฅ ํ™•์žฅ์„ ํ–ˆ์„ ์‹œ ์บก์Šํ™”๋ฅผ ํ•ด์น˜๋Š” ์ฝ”๋“œ ์˜ˆ์‹œ์ž…๋‹ˆ๋‹ค.. 2024. 5. 20.
[Swift] - ์ฝœ๋ ‰์…˜ ํƒ€์ž… (Collection Types) ์ฐธ๊ณ  ์ž๋ฃŒ ์ฝœ๋ ‰์…˜ ํƒ€์ž… (Collection Types) - Swift let oddDigits: Set = [1, 3, 5, 7, 9] let evenDigits: Set = [0, 2, 4, 6, 8] let singleDigitPrimeNumbers: Set = [2, 3, 5, 7] // [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] bbiguduk.gitbook.io Swift ๊ณต์‹ ๋ฌธ์„œ๋ฅผ ํ•œ๊ตญ์–ด๋กœ ๋ฒˆ์—ญํ•œ ์‚ฌ์ดํŠธ์ž…๋‹ˆ๋‹ค. ๐Ÿ’ป ์ฐธ๊ณ  ์ž๋ฃŒ์˜ ๋ชจ๋“  ๋‚ด์šฉ์„ ๋‹ค๋ฃจ๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ ์ƒˆ๋กญ๊ฒŒ ์•Œ๊ฒŒ ๋œ ์  ํ˜น์€ ๋‹ค๋ฅธ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๋“ค๊ณผ ๋น„๊ตํ–ˆ์„ ๋•Œ ๋‹ค๋ฅธ ์ ๋“ค์„ ์œ„์ฃผ๋กœ ์ •๋ฆฌํ–ˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ, ์ฐธ๊ณ  ์ž๋ฃŒ ์ด์™ธ์—๋„ ์ถ”๊ฐ€์ ์œผ๋กœ ๊ณต๋ถ€ํ•œ ๋ถ€๋ถ„๋„ ์ •๋ฆฌํ–ˆ์Šต๋‹ˆ๋‹ค. Array Array๋Š” ๋ฉค๋ฒ„๊ฐ€ ์ˆœ์„œ(์ธ๋ฑ์Šค)๋ฅผ ๊ฐ€์ง„ ๋ฆฌ์ŠคํŠธ .. 2023. 12. 3.
[Swift] - ๋ฌธ์ž์—ด๊ณผ ๋ฌธ์ž (Strings and Characters) ์ฐธ๊ณ  ์ž๋ฃŒ ๋ฌธ์ž์—ด๊ณผ ๋ฌธ์ž (Strings and Characters) - Swift ์œ„ ์˜ˆ์ œ์—์„œ ์ฒซ๋ฒˆ์งธ 3๊ฐœ์˜ codeUnit ๊ฐ’ (68, 111, 103)์€ ASCII์™€ ๊ฐ™์€ UTF-8 ํ‘œํ˜„์ธ ๋ฌธ์ž D, o, ๊ทธ๋ฆฌ๊ณ  g ๋ฅผ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค. ๋‹ค์Œ 3๊ฐœ์˜ codeUnit ๊ฐ’ (226, 128, 188)์€ DOUBLE EXCLAMATION MARK ๋ฌธ์ž์˜ 3 ๋ฐ”์ดํŠธ UTF-8 ํ‘œํ˜„์ž…๋‹ˆ bbiguduk.gitbook.io Swift ๊ณต์‹ ๋ฌธ์„œ๋ฅผ ํ•œ๊ตญ์–ด๋กœ ๋ฒˆ์—ญํ•œ ์‚ฌ์ดํŠธ์ž…๋‹ˆ๋‹ค. ๐Ÿ’ป ์ฐธ๊ณ  ์ž๋ฃŒ์˜ ๋ชจ๋“  ๋‚ด์šฉ์„ ๋‹ค๋ฃจ๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ ์ƒˆ๋กญ๊ฒŒ ์•Œ๊ฒŒ ๋œ ์  ํ˜น์€ ๋‹ค๋ฅธ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๋“ค๊ณผ ๋น„๊ตํ–ˆ์„ ๋•Œ ๋‹ค๋ฅธ ์ ๋“ค์„ ์œ„์ฃผ๋กœ ์ •๋ฆฌํ–ˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ, ์ฐธ๊ณ  ์ž๋ฃŒ ์ด์™ธ์—๋„ ์ถ”๊ฐ€์ ์œผ๋กœ ๊ณต๋ถ€ํ•œ ๋ถ€๋ถ„๋„ ์ •๋ฆฌํ–ˆ์Šต๋‹ˆ๋‹ค. multiLineString ์—ฌ.. 2023. 12. 3.