์ ์ฒด ๊ธ
-
Swift 6.2.4Swift 2026. 3. 22. 07:06
์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค ๐์ด๋ฒ ํฌ์คํ ์์๋ Swift 6.2.4์์ ๋ฆด๋ฆฌ์ฆ๋ ๋ด์ฉ๋ค์ ์ ๋ฆฌํด๋ณด๊ฒ ์ต๋๋ค ๐๐ปIntro2026๋ 2์ 27์ผ, Swift 6.2.4๊ฐ ๊ณต์ ๋ฆด๋ฆฌ์ฆ๋์์ต๋๋ค.์ด๋ฒ ๋ฆด๋ฆฌ์ฆ๋ ์ฃผ๋ก ๋ฒ๊ทธ ์์ ๊ณผ ์ฑ๋ฅ ๊ฐ์ ์ ์ด์ ์ ๋ง์ถ ๋ง์ด๋ ์ ๋ฐ์ดํธ์ ๋๋ค.Xcode 26.3์ Swift 6.2.4๊ฐ ํฌํจ๋์ด ์์ผ๋ฉฐ, Swiftly๋ Docker๋ฅผ ํตํด์๋ ์ค์นํ ์ ์์ต๋๋ค ๐ ์ค์น ๋ฐฉ๋ฒSwiftly ์ฌ์ฉswiftly install 6.2.4# ๋๋swiftly install latest ์ง์ ๋ค์ด๋ก๋Swift.org์์ ํด์ฒด์ธ์ ์ง์ ๋ค์ด๋ก๋ํ ์ ์์ต๋๋ค. DockerDocker ์ด๋ฏธ์ง๋ ๊ณง hub.docker.com/_/swift์์ ์ฌ์ฉ ๊ฐ๋ฅํฉ๋๋ค. XcodeXcode 26.3์ S..
-
[SE-0515] Allow reduce to produce noncopyable resultsSwift 2026. 3. 14. 07:40
์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค ๐์ด๋ฒ ํฌ์คํ ์์๋ SE-0515 Allow reduce to produce noncopyable results์ ๋ํด ์ ๋ฆฌํด๋ณด๊ฒ ์ต๋๋ค ๐๐ปIntroSwift์ reduce๋ ์ ๋ง ์ ์ฉํ ํจ์์ด์ง๋ง, ๋ช ๊ฐ์ง ํ๊ณ๊ฐ ์์์ต๋๋ค.noncopyable ํ์ ์ ๋ค๋ฃฐ ์ ์์๊ณ , initial value๋ฅผ borrowํ๋ ๋ฐฉ์์ด๋ผ ๋ถํ์ํ ๋ณต์ฌ๊ฐ ๋ฐ์ํ์ด์. SE-0515๋ reduce๋ฅผ ๊ฐ์ ํฉ๋๋ค ๐Noncopyable initial value์ result๋ฅผ ํ์ฉํ๊ณ Copyable์ผ ๋๋ initial value๋ฅผ consumeํ๋๋ก ๋ณ๊ฒฝํฉ๋๋ค์ด๋ฏธ PR์ด Accepted ์ํ์ด๊ณ ๊ตฌํ๋ ์๋ฃ๋์์ผ๋, ๊ณง ํ์ ์์๋ ์ธ ์ ์์ ๊ฒ ๊ฐ์ต๋๋ค ๐ ์ ํ์ํ๊ฐ?Noncopyable..
-
[SE-0514] Hashable Conformance for Dictionary.Keys, CollectionOfOne and EmptyCollectionSwift 2026. 3. 2. 09:14
์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค ๐์ด๋ฒ ํฌ์คํ ์์๋ SE-0514 Hashable Conformance for Dictionary.Keys, CollectionOfOne and EmptyCollection์ ๋ํด ์ ๋ฆฌํด๋ณด๊ฒ ์ต๋๋ค ๐๐ปIntroSwift ํ์ค ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ๋ช๋ช collection ํ์ ๋ค์ด Hashable์ conformํ์ง ์๋ ๊ฒ ์์ต๋๋ค.Dictionary.Keys, CollectionOfOne, EmptyCollection์ด ๋ฐ๋ก ๊ทธ๊ฒ๋ค์ธ๋ฐ์. ์ด๋ฒ SE-0514๋ ์ด ์ธ ํ์ ์ Hashable conformance๋ฅผ ์ถ๊ฐํ๋ ์ ์์ ๋๋ค. ํนํ Dictionary.Keys๋ ๋ชจ๋ key๊ฐ ์ด๋ฏธ Hashable์ธ๋ฐ keys view ์์ฒด๋ Hashable์ด ์๋ ๊ฒ ์ข ์ด์ํ์ฃ .๊ฐ๋จํ์ง๋ง ..
-
[SE-0510] Introduce Dictionary.mapValuesWithKeysSwift 2026. 2. 21. 00:45
์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค ๐์ด๋ฒ ํฌ์คํ ์์๋ SE-0510 Introduce Dictionary.mapValuesWithKeys์ ๋ํด ์ ๋ฆฌํด๋ณด๊ฒ ์ต๋๋ค ๐๐ปIntroDictionary์ ๊ฐ์ ๋ณํํ ๋ key ์ ๋ณด๋ ํจ๊ป ํ์ํ ๊ฒฝ์ฐ๊ฐ ์ข ์ข ์์ต๋๋ค.ํ์ง๋ง ํ์ฌ๋ ์ด๋ฐ ์์ ์ ํ๋ ค๋ฉด init(uniqueKeysWithValues:)๋ reduce(into:)๋ฅผ ์จ์ผ ํ๋๋ฐ, ์ด๋ค์ ๋ถํ์ํ๊ฒ dictionary๋ฅผ rehashingํ๊ฑฐ๋ ์ฌํ ๋นํ๋ ๋น์ฉ์ด ๋ฐ์ํฉ๋๋ค. SE-0510์ ์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด mapValuesWithKeys๋ผ๋ ์๋ก์ด ๋ฉ์๋๋ฅผ ์ ์ํฉ๋๋ค.Key ์ ๋ณด๋ฅผ transformation closure์ ์ ๋ฌํ๋ฉด์๋ ์ฑ๋ฅ ์ค๋ฒํค๋ ์์ด ๊ฐ๋ง ๋ณํํ ์ ์์ต๋๋ค ๐ ํ์ฌ ์์ ์์๋..
-
[SE-0508] Array expression trailing closuresSwift 2026. 2. 14. 15:44
์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค ๐์ด๋ฒ ํฌ์คํ ์์๋ SE-0508 Array expression trailing closures์ ๋ํด ์ ๋ฆฌํด๋ณด๊ฒ ์ต๋๋ค ๐๐ปIntroSwift์์ trailing closure๋ ์ ๋ง ์์ฃผ ์ฐ๋ ๋ฌธ๋ฒ์ด์ฃ . ๊ทธ๋ฐ๋ฐ array๋ dictionary ํ์ ๋ค์๋ trailing closure๋ฅผ ์ธ ์ ์๋ค๋ ๊ฑธ ์์ จ๋์?[String] ๊ฐ์ ํ์ ๋ค์ ์ค๊ดํธ๋ฅผ ์ฐ๋ฉด ํ์๊ฐ ์ ๋๋ก ์ธ์ํ์ง ๋ชปํด์ ์๋ฌ๊ฐ ๋ฐ์ํฉ๋๋ค.์ด๋ฒ SE-0508์ ๋ฐ๋ก ์ด ์ ์ฝ์ ํ์ด์ฃผ๋ ์ ์์ ๋๋ค.์ด๋ฏธ Accepted ์ํ์ด๊ณ ๊ตฌํ๋ ์๋ฃ๋์์ผ๋, ๊ณง ์ค์ ๋ก ํ์ฉํ ์ ์์๊ฑฐ์์ ๐ ์ ํ์ํ๊ฐ?Array์ trailing closure๋ฅผ ๋ฐ๋ init์ ์ ์ํ๋ ๊ฑด ๊ฝค ํฉ๋ฆฌ์ ์ธ ๋์์ธ์ ๋๋ค. ์๋ฅผ ๋ค์ด @..
-
[SE-0507] Borrow and Mutate AccessorsSwift 2026. 2. 8. 08:14
์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค ๐์ด๋ฒ ํฌ์คํ ์์๋ SE-0507 Borrow and Mutate Accessors์ ๋ํด ์ ๋ฆฌํด๋ณด๊ฒ ์ต๋๋ค ๐๐ปIntroSwift์ property accessor๋ ๊ณ์ ๋ฐ์ ์ค์ ๋๋ค.๊ธฐ์กด์๋ get, set, ๊ทธ๋ฆฌ๊ณ ์ต๊ทผ ์ถ๊ฐ๋ yielding borrow, yielding mutate๊ฐ ์์๋๋ฐ์. ์ด๋ฒ SE-0507์ ์๋ก์ด borrow์ mutate accessor๋ฅผ ์ ์ํฉ๋๋ค. ์๋ค๋ค์ borrowing semantics๋ฅผ ์ฌ์ฉํด์ ๋ณต์ฌ ์ค๋ฒํค๋ ์์ด ๊ฐ์ ์ ๊ทผํ ์ ์๊ณ , yielding accessor๋ณด๋ค ์ฑ๋ฅ์ด ์ข์ต๋๋ค.ํนํ non-copyable ํ์ ์ ๋ค๋ฃจ๋ collection์ด๋ ์ฑ๋ฅ์ด ์ค์ํ ์ ์์ค ๋ฐ์ดํฐ ๊ตฌ์กฐ์ ์ ์ฉํ ๊ฑฐ์์ ๐ ํ์ฌ 2026๋ 2์ ..
-
[SE-0506] Advanced Observation TrackingSwift 2026. 2. 1. 06:46
์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค ๐์ด๋ฒ ํฌ์คํ ์์๋ SE-0506 Advanced Observation Tracking์ ๋ํด ์ ๋ฆฌํด๋ณด๊ฒ ์ต๋๋ค ๐๐ปIntroSwift์ Observation ํ๋ ์์ํฌ๋ @Observable ๋งคํฌ๋ก๋ก ๊ฐ๋จํ๊ฒ ๋ณํ๋ฅผ ์ถ์ ํ ์ ์๊ฒ ํด์ค๋๋ค.ํ์ง๋ง ๊ธฐ์กด withObservationTracking์ ๋น๋๊ธฐ ํ๊ฒฝ์ ์ต์ ํ๋์ด ์์ด์, ๋๊ธฐ ์์คํ ๊ณผ ์ฐ๋ํ๊ฑฐ๋ ๋ ์ธ๋ฐํ ์ ์ด๊ฐ ํ์ํ ๊ฒฝ์ฐ์๋ ํ๊ณ๊ฐ ์์์ต๋๋ค. SE-0506์ ์ด๋ฐ ์ผ์ด์ค๋ฅผ ์ํ ์๋ก์ด ๋๊ตฌ๋ฅผ ์ ๊ณตํฉ๋๋ค.๋๋ถ๋ถ์ ๊ฐ๋ฐ์๋ ๊ธฐ์กด @Observable๊ณผ Observations๋ก ์ถฉ๋ถํ์ง๋ง, ๋ฏธ๋ค์จ์ด ์ธํ๋ผ๋ ์์ ฏ ์์คํ ์ ๊ฐ๋ฐํ๋ ๊ฒฝ์ฐ๋ผ๋ฉด ์ด๋ฒ ์ ์์ด ๊ผญ ํ์ํ ๊ฑฐ์์ ๐ ํ์ฌ 2026๋ 2์ 3์ผ๊น์ง ๋ฆฌ๋ทฐ๊ฐ ์งํ..
-
[SE-0493] defer support asyncSwift 2026. 1. 24. 12:54
์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค ๐์ด๋ฒ ํฌ์คํ ์์๋ SE-0493 Support async calls in defer bodies์ ๋ํด ์ ๋ฆฌํด๋ณด๊ฒ ์ต๋๋ค ๐๐ปIntroSwift์ defer๋ ์ ๋ง ์ ์ฉํ ๊ธฐ๋ฅ์ด์ฃ .scope๋ฅผ ๋ฒ์ด๋ ๋ ๋ฐ๋์ ์คํ๋์ด์ผ ํ๋ cleanup ์ฝ๋๋ฅผ ๊น๋ํ๊ฒ ์์ฑํ ์ ์๊ฒ ํด์ค๋๋ค. ๊ทธ๋ฐ๋ฐ ๋ฌธ์ ๋ defer ๋ธ๋ก ์์์๋ async ํจ์๋ฅผ ํธ์ถํ ์ ์๋ค๋ ์ ์ ๋๋ค.async context์ ์์ด๋ await๋ฅผ ์ฐ๋ฉด ์๋ฌ๊ฐ ๋๊ฑฐ๋ ์. ์ด๋ฒ SE-0493์ ๋ฐ๋ก ์ด ์ ์ฝ์ ํ์ด์ฃผ๋ ์ ์์ ๋๋ค. ์ด๋ฏธ Accepted ์ํ์ด๊ณ ๊ตฌํ๋ ์๋ฃ๋์์ผ๋, ๊ณง ์ค๋ฌด์์๋ ์ธ ์ ์์ ๊ฒ ๊ฐ์ต๋๋ค ๐ ์ ํ์ํ๊ฐ?defer๋ Swift 2์์ ๋์ ๋ ๊ธฐ๋ฅ์ผ๋ก, scope ๊ธฐ๋ฐ cleanup..