๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

iOS/WWDC

WWDC25) Xcode์˜ ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ

๋ฐ˜์‘ํ˜•
2025๋…„๋ถ€ํ„ฐ ์• ํ”Œ์ด ์šด์˜์ฒด์ œ ๋ฒ„์ „ ๋„˜๋ฒ„๋ง ๋ฐฉ์‹์„ ๋ฐ”๊ฟจ์Šต๋‹ˆ๋‹ค. !! ๋‘๋‘ฅ


๊ทธ๋™์•ˆ์€ ๊ฐ ํ”Œ๋žซํผ๋งˆ๋‹ค ์ œ๊ฐ๊ฐ ๋ฒ„์ „ ๋ฒˆํ˜ธ๋ฅผ ์จ์™”์ฃ .

iOS๋Š” 18, macOS๋Š” 15, watchOS๋Š” 10, visionOS๋Š” 2์ฒ˜๋Ÿผ์š”.

์ˆซ์ž๊ฐ€ ๋‹ค๋ฅด๋‹ค ๋ณด๋‹ˆ ์–ด๋–ค ๊ฒŒ ์ตœ์‹ ์ธ์ง€ ํ—ท๊ฐˆ๋ฆด ๋•Œ๋„ ๋งŽ์•˜๊ณ , ๊ฐœ๋ฐœ์ž๋‚˜ ์‚ฌ์šฉ์ž ๋ชจ๋‘์—๊ฒŒ ๋ถˆํŽธํ•œ ๋ถ€๋ถ„์ด ์žˆ์—ˆ์–ด์š”. ๐Ÿ˜‚

 

์•ž์œผ๋กœ๋Š” '์—ฐ๋„ ๊ธฐ๋ฐ˜' ๋„˜๋ฒ„๋ง ์ฒด๊ณ„๊ฐ€ ๋„์ž…๋ผ, ๊ฐ™์€ ํ•ด์— ๋‚˜์˜ค๋Š” ๋ชจ๋“  OS๊ฐ€ ํ•˜๋‚˜์˜ ๋ฒˆํ˜ธ๋กœ ํ†ต์ผ๋ฉ๋‹ˆ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด, 2025๋…„์— ๋ฐœํ‘œ๋˜๋Š” ๋ชจ๋“  ์šด์˜์ฒด์ œ๋Š” '26'์ด๋ผ๋Š” ๋ฒ„์ „์œผ๋กœ ๋‚˜์˜ต๋‹ˆ๋‹ค.

iOS 26, macOS 26, watchOS 26, visionOS 26์ฒ˜๋Ÿผ์š”. โ˜บ๏ธ

 

์ด ์ˆซ์ž๋Š” ๋‹จ์ˆœํžˆ ๋ฐœํ‘œ ์—ฐ๋„๋ฅผ ๋œปํ•˜๋Š” ๊ฒŒ ์•„๋‹ˆ๋ผ, ‘2026๋…„๊นŒ์ง€ ์ง€์›๋˜๋Š” ๋ฒ„์ „’์ด๋ผ๋Š” ์˜๋ฏธ๋„ ๋‹ด๊ณ  ์žˆ์–ด์š”.

์ด์ œ๋Š” ๋ฒ„์ „ ์ˆซ์ž๋งŒ ๋ด๋„ ์–ธ์ œ ๋‚˜์˜จ OS์ธ์ง€, ์–ด๋А ํ•ด๊นŒ์ง€ ์“ฐ์ด๋Š”์ง€ ์‰ฝ๊ฒŒ ์•Œ ์ˆ˜ ์žˆ๊ฒŒ ๋œ ๊ฑฐ์ฃ .

 

์• ํ”Œ ์ƒํƒœ๊ณ„๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์‚ฌ๋žŒ๋“ค๋ผ๋ฆฌ๋„ ์ปค๋ฎค๋‹ˆ์ผ€์ด์…˜์ด ํ›จ์”ฌ ๊ฐ„๊ฒฐํ•ด์งˆ ๊ฒƒ ๊ฐ™๊ณ ์š”.

 

๊ทธ๋ฆฌ๊ณ  ๊ทธ์— ๋”ฐ๋ผ Xcode๋„ Xcode17์ด ์•„๋‹Œ Xcode26์ด ๋‚˜์™”๋‹ค๋Š” ์‚ฌ์‹ค !!

๊ทธ๋ ‡๋‹ค๋ฉด Xcode26์—๋Š” ์–ด๋–ค ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ์ด ์ถ”๊ฐ€๋˜์—ˆ์„๊นŒ์š” ?

 

๋–ฑ๋–ฑ๋””์”จ 25 ์˜์ƒ์„ ํ›„๋‹ค๋‹ฅ ๋ดค์Šต๋‹ˆ๋‹ค.


Xcode 16์˜ ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ ์ด์ •๋ฆฌ

Xcode 16์€ ๊ฐœ๋ฐœ์ž์˜ ์ƒ์‚ฐ์„ฑ๊ณผ ์•ฑ ํ’ˆ์งˆ ํ–ฅ์ƒ์„ ์œ„ํ•ด ๋‹ค์–‘ํ•œ ์ตœ์ ํ™”, ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ, ๊ทธ๋ฆฌ๊ณ  ๋””๋ฒ„๊น… ๋ฐ ์„ฑ๋Šฅ ๊ฐœ์„  ๋„๊ตฌ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

 

 

์ฃผ์š” ์—…๋ฐ์ดํŠธ ๋‚ด์šฉ

โฌ‡๏ธโฌ‡๏ธโฌ‡๏ธโฌ‡๏ธโฌ‡๏ธโฌ‡๏ธโฌ‡๏ธโฌ‡๏ธ

 

1. ๐Ÿ”„ ๋‹ค์šด๋กœ๋“œ ํฌ๊ธฐ & ์ž…๋ ฅ ์„ฑ๋Šฅ ์ตœ์ ํ™”

  • Xcode ์ „์ฒด ์šฉ๋Ÿ‰์ด 24% ๊ฐ์†Œ
  • ํ•„์š” ์—†๋Š” ์‹œ๋ฎฌ๋ ˆ์ดํ„ฐ ์ธํ…” ๋Ÿฐํƒ€์ž„ ์ œ๊ฑฐ, ๋ฉ”ํƒˆ ํˆด์ฒด์ธ๋„ ํ”„๋กœ์ ํŠธ ํ•„์š” ์‹œ๋งŒ ๋‹ค์šด๋กœ๋“œ
  • ํƒ€์ดํ•‘ ๋ฐ˜์‘์„ฑ ํ–ฅ์ƒ: ๋ณต์žกํ•œ ํ‘œํ˜„์‹ ์ž…๋ ฅ ์ง€์—ฐ์„ ์ตœ๋Œ€ 50% ์ค„์ž„

 

 

2. ๐Ÿš€ ์ž‘์—… ๊ณต๊ฐ„ ์„ฑ๋Šฅ ์—…๊ทธ๋ ˆ์ด๋“œ

  • ์›Œํฌ์ŠคํŽ˜์ด์Šค ๋กœ๋”ฉ ์†๋„ 40% ํ–ฅ์ƒ
  • ๋Œ€๊ทœ๋ชจ ํ”„๋กœ์ ํŠธ์—์„œ ์ฒด๊ฐ๋  ์ •๋„๋กœ ๋น ๋ฅธ ๋ฐ˜์‘์„ฑ ์ œ๊ณต

 

 

3. ๐Ÿ“ ์†Œ์Šค ํŽธ์ง‘๊ธฐ ๊ฐœ์„ 

  • ํƒญ ๊ด€๋ฆฌ ๊ธฐ๋Šฅ ๊ฐ•ํ™”: Safari์ฒ˜๋Ÿผ ํƒญ ์—ด๊ธฐ, ๊ณ ์ •, ๊ทธ๋ฃนํ™” ๊ฐ€๋Šฅ
  • ์ƒˆ ์‹œ์ž‘ ํŽ˜์ด์ง€ ๋„์ž… ๋ฐ ํƒญ ๊ณ ์ • ๊ธฐ๋Šฅ์œผ๋กœ ํšจ์œจ์„ฑ ↑

ํƒญ ์—ด๊ณ  ์›ํ•˜๋Š” ํŽ˜์ด์ง€๋กœ ์ด๋™
ํƒญ ๊ณ ์ •

 

 

4. ๐Ÿ”Ž ๋‹ค์ค‘ ๋‹จ์–ด ๊ฒ€์ƒ‰ ๋ชจ๋“œ

  • ์ž…๋ ฅํ•œ ์—ฌ๋Ÿฌ ํ‚ค์›Œ๋“œ์˜ ๊ทผ์ ‘๋„ ๊ธฐ๋ฐ˜ ์—ฐ๊ด€ ๊ฒ€์ƒ‰ ์ ์šฉ
  • ์ˆœ์„œ ์ƒ๊ด€์—†์ด ํ”„๋กœ์ ํŠธ ์ „์ฒด์—์„œ ์—ฐ๊ด€ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์ฐพ์•„๋‚ด ์œ ์˜๋ฏธํ•œ ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ ์ œ๊ณต

๋‹ค์ค‘๋‹จ์–ด ๊ฒ€์ƒ‰

 

5. ๐ŸŽ™๏ธ Swift ์ฝ”๋“œ์šฉ ์Œ์„ฑ ๋ช…๋ น

  • Swift ๊ตฌ๋ฌธ๊นŒ์ง€ ์ธ์‹ํ•˜๋Š” ์Œ์„ฑ ๋ช…๋ น ์ž…๋ ฅ ๊ธฐ๋Šฅ
  • ์˜ˆ: “if let continent๊ฐ€ landmark.continent ๋™์ผํ•˜๋ฉด…” ์ฒ˜๋Ÿผ ๋งํ•˜๋ฉด ์ž๋™์œผ๋กœ ์ž…๋ ฅ๋จ

start listening > swift ๋ชจ๋“œ > select labled content > 4 > go to end the line > new line >
'if let continent๊ฐ€ landmark.continent ๋™์ผํ•˜๋ฉด'  '์ค‘๊ด„ํ˜ธ ์—ด๊ธฐ'  '์ƒˆ ์ค„' > 'LabeledContent ์†Œ๊ด„ํ˜ธ continent  ์†Œ๊ด„ํ˜ธ ์‰ผํ‘œ ๊ฐ’ continent'

 

 

6. ๐Ÿงช Playground ์ธ๋ผ์ธ ๋งคํฌ๋กœ

  • ํŒŒ์ผ ๋‚ด์— Playground ๋งคํฌ๋กœ ์‚ฝ์ž… → ์ธ๋ผ์ธ ์ฝ”๋“œ ์‹คํ–‰ + ๊ฒฐ๊ณผ๋ฅผ ์บ”๋ฒ„์Šค์— ์‹ค์‹œ๊ฐ„ ํ‘œ์‹œ
  • ๋ฐ์ดํ„ฐ ๊ตฌ์กฐ ํƒ์ƒ‰ ๋ฐ ๋ฏธ๋ฆฌ๋ณด๊ธฐ ๊ธฐ๋Šฅ์„ ์‰ฝ๊ฒŒ ์ˆ˜ํ–‰ ๊ฐ€๋Šฅ

ํ”Œ๋ ˆ์ด๊ทธ๋ผ์šด๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋žœ๋“œ๋งˆํฌ ๊ตฌ์กฐ๋ฅผ ๋‘˜๋Ÿฌ๋ณด๊ธฐ >

 

 

import Playgrounds ๋ฅผ ํ†ตํ•ด ๋ชจ๋“ˆ ๊ฐ€์ ธ์˜ค๊ธฐ 

๊ตฌ์กฐ ์†์„ฑ๋ณ„ ๊ฐ’์„ ๋ณผ ์ˆ˜ ์žˆ์Œ

 

 

quick look ์•„์ด์ฝ˜์„ ํ†ตํ•ด ์†์„ฑ ์ž์„ธํžˆ ์‚ดํŽด๋ณด๊ธฐ ๊ฐ€๋Šฅ
ํ”Œ๋ ˆ์ด๊ทธ๋ผ์šด๋“œ๋ฅผ ์ˆ˜์ •ํ•˜๋ฉด ์ž๋™์œผ๋กœ ์บ”๋ฒ„์Šค๊ฐ€ ์—…๋ฐ์ดํŠธ ๋จ ใ…œ
๋‹ค๋ฅธ ํ”Œ๋ ˆ์ด๊ทธ๋ผ์šด๋“œ๋ฅผ ์—ด์–ด ์ •๊ทœ ํ‘œํ˜„์‹์ด ํฌํ•จ๋œ ํ•จ์ˆ˜ ํ˜ธ์ถœํ•ด์„œ ๊ฐ’ ํ™•์ธํ•ด๋ณด๊ธฐ > ์›๋ณธ ๋ฌธ์ž์—ด์—์„œ ์ผ์น˜ ๋ฒ”์œ„ ํ•˜์ด๋ผ์ดํŒ… > ์›๋ณธ ์ฝ”๋“œ ์ˆ˜์ •์‹œ ์ฆ‰์‹œ ๋ฐ˜์˜๋จ.

 

์˜คํ”ˆ์†Œ์Šค

 

 

 

7. ๐ŸŽจ Icon Composer

  • ๋ฉ€ํ‹ฐ ํ”Œ๋žซํผ ์•„์ด์ฝ˜ ์—๋””ํ„ฐ ์ถ”๊ฐ€: ํ๋ฆผ·๊ทธ๋ฆผ์ž·๋ฐ˜์‚ฌ·๋ฐ˜ํˆฌ๋ช… ๋“ฑ ๋‹ค์–‘ํ•œ ํšจ๊ณผ ์ง€์›
  • ํ•œ ๋ฒˆ์— iOS, macOS, watchOS์šฉ ์•„์ด์ฝ˜์„ ์ƒ์„ฑํ•˜๊ณ  ๋ ˆ์ด์–ด ์กฐ์ • ๊ฐ€๋Šฅ

์ƒˆ๋กœ์šด ์•ฑ ๋ฒˆ๋“ค / ์—ฌ๋Ÿฌ ํ”Œ๋žซํผ๊ณผ ์†Œํ”„ํŠธ์›จ์–ด ๋ฒ„์ „์—์„œ ์ž‘๋™ํ•˜๋Š” ์ •๊ตํ•œ ๋ฉ€ํ‹ฐ๋ ˆ์ด์–ด ์•„์ด์ฝ˜

-> ๋ ˆ์ด์–ด์— ํ๋ฆผ, ๊ทธ๋ฆผ์ž, ๋ฐ˜์‚ฌ ํ•˜์ด๋ผ์ดํŠธ, ๋ฐ˜ํˆฌ๋ช… ํšจ๊ณผ ๋“ฑ ๋™์ ์ธ ์†์„ฑ ์ถ”๊ฐ€ ๊ฐ€๋Šฅ. 

๋‹ค์–‘ํ•œ ์•„์ด์ฝ˜
icon composer ๋กœ ๋‹จ์ผ ํŒŒ์ผ์—์„œ ์„ค์ •

 

์•ฑ ์•„์ด์ฝ˜ ๋งŒ๋“œ๋Š” ๋ฐฉ๋ฒ• > ๋‹ค๋ฅธ ์˜์ƒ์œผ๋กœ ํ™•์ธ

 

 

 

8. ๐ŸŒ ํ–ฅ์ƒ๋œ ๋ฌธ์ž์—ด ํ˜„์ง€ํ™”

  • ๋ฌธ์ž์—ด ์นดํƒˆ๋กœ๊ทธ์— Swift ํƒ€์ž… ์•ˆ์ „ ๊ธฐํ˜ธ ์ž๋™ ์ƒ์„ฑ
  • ๋ฒˆ์—ญ์ž์šฉ Doc ์ฝ”๋ฉ˜ํŠธ๋„ ์ž๋™ ์‚ฝ์ž…๋˜์–ด ๋ฒˆ์—ญ ์‹œ ๊ฐ€๋…์„ฑ ํ–ฅ์ƒ

๋ฌธ์ž์—ด์—์„œ ์ง์ ‘ ์ •์˜ํ•ด ์ฝ”๋“œ์—์„œ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋Š” ์Šค์œ„ํ”„ํŠธ ์ฝ”๋“œ ์ƒ์„ฑ

 

9. ๐Ÿค– AI ๊ธฐ๋ฐ˜ ์ฝ”๋“œ ์ธํ…”๋ฆฌ์ „์Šค

  • ChatGPT/LLM์ด ํ”„๋กœ์ ํŠธ ์ฝ”๋“œ ๊ธฐ๋ฐ˜ ๋ฌธ๋งฅ์„ ์ดํ•ด → ์งˆ๋ฌธ, ์ž๋™ ๋ณ€๊ฒฝ, ์ฝ”๋“œ ๋ณด์™„ ๊ฐ€๋Šฅ
  • ์ž๋™ ์ฝ”๋“œ ์ˆ˜์ • ์ œ์•ˆ, @๊ธฐํ˜ธ๋กœ ํŠน์ • ์‹ฌ๋ณผ ๋Œ€์ƒ ์ง€์ • ๊ฐ€๋Šฅ
  • ๋กœ์ปฌ ๋ฐ ์›น LLM ๋ชจ๋ธ ์ถ”๊ฐ€ ์ง€์› (Anthropic, Ollama ๋“ฑ)

xcode๋ž‘ ํ†ตํ•ฉ๋˜์–ด ๋‚ด ์ฝ”๋“œ๋ฅผ ๊ณ ๋ คํ•˜์—ฌ ๋Œ€๋‹ต.

 

์„ ํƒํ•œ ์ฝ”๋“œ์— ์ž๋™์œผ๋กœ ๋ณ€๊ฒฝ์‚ฌํ•ญ์„ ์ ์šฉ๊ฐ€๋Šฅ

xcode๊ฐ€ ๋ชจ๋ธ์— ํ”„๋กœ์ ํŠธ ๋งฅ๋ฝ์„ ๋ณด๋‚ด๊ณ , ๊ด€๋ จ ์†Œ์Šค ํŒŒ์ผ๊ณผ ์ž‘์—…์„ ์•Œ๋ ค์ฃผ๋Š” ์„ค๋ช…์œผ๋กœ ์‘๋‹ต.

๋‹ต๋ณ€์„ ์ƒ์„ฑํ•˜๋Š” ๋™์•ˆ ๋ชจ๋ธ์—์„œ ํ•„์š”ํ•œ ์ถ”๊ฐ€ ๋งฅ๋ฝ์— ๋Œ€ํ•ด xcode์— ๋” ๋งŽ์€ ์ •๋ณด๋ฅผ ์š”์ฒญํ•  ์ˆ˜ ์žˆ๋‹ค.

์ •๋ณด ๋ฒ„ํŠผ : xcode์—์„œ๋ณด๋‚ธ ๋งฅ๋ฝ์„ ๋ณด์—ฌ์คŒ

 

์‘๋‹ต์— ๋งํฌ๋„ ํฌํ•จ๋˜์–ด ์žˆ์–ด์„œ ๋ฉ˜์…˜๋œ ํŒŒ์ผ๋กœ ์ด๋™ ๊ฐ€๋Šฅ.

 

@ ๋ฅผ ์‚ฌ์šฉํ•ด ์ˆ˜์ •ํ•˜๊ธธ ์›ํ•˜๋Š” ๊ธฐํ˜ธ๋ฅผ ์ง์ ‘ ์ฐธ์กฐ

 

์ฟผ๋ฆฌ๊ฐ€ ์ฐธ์กฐํ•  ํŒŒ์ผ ์—…๋กœ๋“œ ๊ฐ€๋Šฅ , ์ด๋ฏธ์ง€๋„ ๊ฐ€๋Šฅ > UI ์ด๋ฏธ์ง€ ๋„ฃ์–ด์„œ ์ฝ”๋“œ ์ƒ์„ฑํ•˜๋Š”๊ฒŒ ๊ฐ€๋Šฅ !

 

ํ”„๋กœ์ ํŠธ ์ •๋ณด๋ฅผ ํฌํ•จํ• ์ง€ ์•„๋‹์ง€ ํ† ๊ธ€ ๋ฒ„ํŠผ ( ์Šค์œ„ํ”„ํŠธ์— ๋Œ€ํ•œ ์ผ๋ฐ˜์ ์ธ ์งˆ๋ฌธ์„ ํ•  ๋•Œ )

 

์‘๋‹ต์— ์ฝ”๋“œ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ์ž๋™์œผ๋กœ ์ œ์–ดํ• ์ง€ ์„ ํƒํ•˜๋Š” ๋ฒ„ํŠผ, ๊บผ์ ธ์žˆ์œผ๋ฉด ์ ์šฉ์œ„์น˜๋ฅผ ๊ฒฐ์ •ํ•˜๊ธฐ ์ „ ๊ฐ ๋ณ€๊ฒฝ ์‚ฌํ•ญ ๊ฒ€ํ† 

 

ํด๋ฆญํ•˜๋ฉด ์š”์•ฝ๋œ ๋ณ€๊ฒฝ ์‚ฌํ•ญ ํ™•์ธ ๊ฐ€๋Šฅ

 

11๊ฐœ๋กœ ๋Š˜๋ฆฌ๊ธฐ

 

๋Œ€ํ™”๋กœ ๋ณ€๊ฒฝ๋œ ๋ชจ๋“  ์ฝ”๋“œ ์ค„ ํ™•์ธ ๊ฐ€๋Šฅ

 

ํ”Œ๋ ˆ์ด ๊ทธ๋ผ์šด๋“œ ๋ชจ๋“ˆ๋„ ๊ฐ€๋Šฅ

 

์˜ค๋ฅ˜๊ฐ€ ๊ฐ์ง€๋˜๋Š” ๋ถ€๋ถ„์— ์ ‘๊ทผํ•˜์—ฌ ์˜ค๋ฅ˜๋ฅผ ์ˆ˜์ •ํ•˜๋ ค๋ฉด ์–ด๋–ค ํŒŒ์ผ์„ ์ˆ˜์ •ํ•ด์•ผํ•˜๋Š”์ง€ ํŒŒ์•…

 

์ฑ— ์ง€ํ”ผํ‹ฐ ์„ค์ • / ๋ณธ์ธ ๊ณ„์ • ์ด์šฉ ๊ฐ€๋Šฅ / ๋‹ค๋ฅธ ๊ณต๊ธ‰์ž ์‚ฌ์šฉ ๊ฐ€๋Šฅ
๋‹ค๋ฅธ ๋ชจ๋ธ ์ถ”๊ฐ€

 

 

10. ๐Ÿž Swift ๋™์‹œ์„ฑ ๋””๋ฒ„๊น… ๊ฐœ์„ 

  • Swift Task์™€ TaskGroup ๋‹จ์œ„๋กœ ๋ฐฑํŠธ๋ ˆ์ด์Šค ๋ฐ UI ํ‘œ์‹œ
  • Usage description ๊ถŒํ•œ ๋ˆ„๋ฝ ์‹œ Info.plist์—์„œ ๋ฐ”๋กœ ์ˆ˜์ • ์œ ๋„

 

์‚ฌ์šฉ์ž์˜ ์œ„์น˜ ๋˜๋Š” ์นด๋ฉ”๋ผ ์ฒ˜๋Ÿผ ๋น„๊ณต๊ฐœ ๋ฆฌ์†Œ์Šค์— ์ ‘๊ทผํ•ด์•ผํ•˜๋Š” ๊ธฐ๋Šฅ์„ ์•ฑ์— ์ถ”๊ฐ€ํ•œ ์ ์ด ์žˆ๋‹ค๋ฉด
๋””๋ฒ„๊ฑฐ์—์„œ ์•ฑ์ด ๊ฐ‘์ž๊ธฐ ๋ฉˆ์ถ˜์ ์ด ์žˆ์—ˆ์„ ๊ฑฐ์ž„

 

๋น„๊ณต๊ฐœ ๋ฆฌ์†Œ์Šค์— ์ ‘๊ทผํ•˜๋ ค๋ฉด usage description์ด ํ•„์š”ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์‹œ์Šคํ…œ์€ ์ด๋ฅผ ์ธ์ฆ ํ”„๋กฌํ”„ํŠธ์— ํฌํ•จ์‹œ์ผœ ์•ฑ์—์„œ ์ ‘๊ทผ์„ ์š”์ฒญํ•˜๋Š” ์ด์œ ๋ฅผ ์‚ฌ์šฉ์ž๊ฐ€ ์ดํ•ดํ•˜๋„๋ก ํ•จ.
info.plist์—์„œ ๋ฐ”๋กœ ์„ค์ •ํ•  ์ˆ˜ ์žˆ๋„๋ก

11. โš™๏ธ Instruments ๊ณ ๋„ํ™”

  • Processor Trace: Apple Silicon์—์„œ ์ €์˜ค๋ฒ„ํ—ค๋“œ ๋ถ„๊ธฐ ์ถ”์ 
  • CPU Counters ๋ชจ๋“œ: CPU ๋ณ‘๋ชฉ, ๋ฉ”๋ชจ๋ฆฌ, ์ˆ˜์น˜์—ฐ์‚ฐ ๋“ฑ ์ƒ์„ธ ๋ถ„์„ ์ง€์›
  • SwiftUI ํƒ€์ž„๋ผ์ธ ๋ถ„์„: ๋ทฐ ์—…๋ฐ์ดํŠธ ํšŸ์ˆ˜, ์›์ธ ๋ฐ ๋ฉ”์ธ ์Šค๋ ˆ๋“œ ์˜ํ–ฅ ํŒŒ์•…

 

 

์ตœ์‹  Apple Silicon ํ•˜๋“œ์›จ์–ด์—์„œ ์ฝ”๋“œ ์„ฑ๋Šฅ์„ ํ”„๋กœํŒŒ์ผ๋ง ํ•  ์ˆ˜ ์žˆ๋Š” ๋‹ค์–‘ํ•œ ์˜ต์…˜ ์ œ๊ณต 

 

์ƒ˜ํ”Œ๋ง ๊ธฐ๋ฐ˜ ํ”„๋กœํŒŒ์ผ๋Ÿฌ๋กœ CPU ์‚ฌ์šฉ๋Ÿ‰ ์ดํ•ด > CPU๋ฅผ ์ฃผ๊ธฐ์ ์œผ๋กœ ์ƒ˜ํ”Œ๋งํ•˜์—ฌ ํŒŒ์•…ํ•˜๋Š” ๋ฐฉ์‹
๋ณธ์งˆ์ ์œผ๋กœ๋Š” ์›Œํฌ๋กœ๋“œ์˜ ๊ทผ์‚ฌ์น˜ ์ผ๋ฟ > ์˜ค๋žซ๋™์•ˆ ์ˆ˜ํ–‰๋˜๋Š” ์›Œํฌ๋กœ๋“œ ๋ถ„์„์— ๋” ์‹ค์šฉ์ 

 

 

 

processor Trace๋Š” ๋Ÿฐํƒ€์ž„ ์˜ค๋ฒ„ํ—ค๋“œ๊ฐ€ ๊ฑฐ์˜ ์—†์ด ์‹คํ–‰์ค‘์ธ ๋ชจ๋“  ์Šค๋ ˆ๋“œ์—์„œ CPU๊ฐ€ ๋‚ด๋ฆฌ๋Š” ๋ชจ๋“  ๋‚ฎ์€ ์ˆ˜์ค€์˜ ๋ถ„๊ธฐ ๊ฒฐ์ •์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ์บก์ฒ˜

 

์ƒ˜ํ”Œ๋ง ๊ฐ„๊ฒฉ ์‚ฌ์ด์˜ ์ค‘์š”ํ•œ ์ฝ”๋“œ ๊ฒฝ๋กœ๋ฅผ ๋†“์น ์ˆ˜ ์žˆ๋Š” ์ „ํ†ต์ ์ธ ์ƒ˜ํ”Œ๋ง ๋ฐฉ์‹์ด ์•„๋‹Œ swift์˜ ARC ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ ๋“ฑ์˜ ์ปดํŒŒ์ผ๋Ÿฌ ์ƒ์„ฑ ์ฝ”๋“œ์ฒ˜๋Ÿผ ์ทจํ•œ ๋ชจ๋“  ๋ถ„๊ธฐ ๋ฐ ํ•จ์ˆ˜ ๋ณด์—ฌ์คŒ

 

CPU Bottlenecks ๋ชจ๋“œ
CPU Bottlenecks ๋Š” CPU์˜ ์ง€์†๊ฐ€๋Šฅํ•œ ์ง€์นจ ๋Œ€์—ญํญ์„ 3๊ฐ€์ง€ ํฐ ์ด์œ ๋กœ ์œ ์šฉํ•œ ์ž‘์—… ๋˜๋Š” Bottlenecks๋กœ ๋‚˜๋ˆ”
์ง€์นจ ํŠน์„ฑ ๋ฐ ๋ฉ”ํŠธ๋ฆญ ๋ชจ๋“œ

 

- ์ฐจ์„ธ๋Œ€ SwiftUI ๋„๊ตฌ : SwiftUI ์—…๋ฐ์ดํŠธ์˜ ์›์ธ ๋ฐ ํšจ๊ณผ์— ๋Œ€ํ•œ ์ž์„ธํ•œ ์ •๋ณด๋ฅผ ํฌ์ฐฉ

- ๋•๋ถ„์— ๋ทฐ๊ฐ€ ์—…๋ฐ์ดํŠธ๋˜๋Š” ์‹œ์  ๋ฐ ์ด์œ ๋ฅผ ์–ด๋А๋•Œ๋ณด๋‹ค ์‰ฝ๊ฒŒ ์ดํ•ด๊ฐ€๋Šฅ 

 

ํƒ€์ž„๋ผ์ธ : SwiftUI๊ฐ€ ๋ฉ”์ธ์Šค๋ ˆ๋“œ์—์„œ ์ž‘๋™ํ•˜๋Š” ์‹œ์  ๋ฐ ๊ฐœ๋ณ„ ๋ทฐ ์—…๋ฐ์ดํŠธ๊ฐ€ ์˜ค๋ž˜๊ฑธ๋ ค ์œ„ํ—˜์— ์ฒ˜ํ•  ๊ฐ€๋Šฅ์„ฑ์ด ์žˆ๋Š” ์‹œ์ ์— ๋Œ€ํ•œ ๊ฐ„๋žตํ•œ ๊ฐœ์š” ์ œ๊ณต
๋ทฐ ๋ณธ๋ฌธ ์—…๋ฐ์ดํŠธ ์š”์•ฝ์€ ์•ฑ ๋‚ด ๊ฐ ๋ทฐ๊ฐ€ ์—…๋ฐ์ดํŠธ๋œ ํšŸ์ˆ˜๋ฅผ ์•Œ๋ ค์คŒ.

 

๋ทฐ ์—…๋ฐ์ดํŠธ ํšŸ์ˆ˜๊ฐ€ ์˜ˆ์ƒ๋ณด๋‹ค ํ›จ์”ฌ ๋งŽ์€ ๊ฒฝ์šฐ

 

์›์ธ ๋ฐ ๊ฒฐ๊ณผ ๊ทธ๋ž˜ํ”„๋ฅผ ์—ด์–ด ์™œ๊ทธ๋Ÿฐ์ง€ ์ดํ•ด๊ฐ€๋Šฅ

 

- What's new in SwiftUI ์ฐธ๊ณ 

 

12. ๐Ÿ”‹ Power Profiler ๋„๊ตฌ

  • ์•ฑ์˜ ์ „๋ ฅ ์‚ฌ์šฉ๋Ÿ‰ + ์ŠคํŒŒ์ดํฌ ์‹œ๊ฐํ™”
  • ํ…Œ๋”๋ง ๊ธฐ๋ก ๋ชจ๋“œ ํฌํ•จ, ์˜คํ”„๋ผ์ธ ์ƒํ™ฉ์—์„œ๋„ ๊ธฐ๋ก ๊ฐ€๋Šฅ

 

์•ฑ์˜ ์‹ ๋ขฐ์„ฑ์—์„œ ์ค‘์š”ํ•œ ๋ถ€๋ถ„ : ๋ฐฐํ„ฐ๋ฆฌ ์ˆ˜๋ช… !

 

๊ทผ๋ณธ ์›์ธ์„ ์ฐพ๊ธฐ์œ„ํ•œ ๋„๊ตฌ > Power Profiler

 

๋ฌธ์ œ ์žฌํ˜„ ๋ฐ ์ „๋ ฅ์ง€ํ‘œ ๊ธฐ๋ก, ์•ฑ ํ”„๋กœํŒŒ์ผ๋ง + ์ „๋ ฅ์ง€ํ‘œ ๊ธฐ๋ก -> ์‹œ์Šคํ…œ ์ „๋ ฅ์‚ฌ์šฉ๋Ÿ‰์„ ๋ณด์—ฌ์คŒ
ํ…Œ๋”๋ง ๊ธฐ๋ก, ์ˆ˜๋™ ๊ธฐ๋ก

 

 

 

 

13. ๐Ÿ“Š Xcode Organizer ์ง€ํ‘œ ๋ถ„์„ ๊ฐ•ํ™”

  • Hang & Launch ์˜ค๋ฅ˜ ์ถ”์  + ์ฐจํŠธํ™”
  • Metrics ํƒญ์— ์•ฑ ์ง€ํ‘œ ๊ธฐ์ค€ ์ถ”์ฒœ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ (ex. ์‹คํ–‰ ์‹œ๊ฐ„ ๊ธฐ์ค€์„ )

๋ถˆ๊ฝƒ ์•„์ด์ฝ˜ > ์ž˜๋ชป๋œ ๋ฐฉํ–ฅ์œผ๋กœ ์•ฑ์ด ์ •์ง€ ๋ฐ ์‹คํ–‰๋˜๋Š” ํšŸ์ˆ˜ ์•Œ๋ ค์คŒ
์ตœ๊ทผ 5๊ฐœ ์•ฑ ๋ฒ„์ „ ์ „๋ฐ˜์˜ ์ฆ๊ฐ€์œจ์„ ์ฐจํŠธํ™”ํ•ด ํŠธ๋ Œ๋“œ์˜ ๋ช…ํ™•์„ฑ ์ œ๊ณต

 

metric์— recommendations ์ถ”๊ฐ€ : ์œ ์‚ฌ์•ฑ๊ณผ ์•ฑ์˜ ๊ณผ๊ฑฐ ๋ฐ์ดํ„ฐ ๋“ฑ ์•ฑ ์ง€ํ‘œ๋ฅผ ๋‹ค๋ฅธ ์†Œ์Šค์™€ ๋น„๊ตํ•ด ์•ฑ์ด ์‚ฌ์šฉ์ž ๊ธฐ๋ฐ˜ ์ „๋ฐ˜์—์„œ ์ˆ˜ํ–‰ํ•˜๋Š” ๋Šฅ๋ ฅ์„ ์ดํ•ดํ•˜๊ธฐ ์œ„ํ•œ ์ค‘์š”ํ•œ ๊ธฐ์ค€์  ์ œ๊ณต.

 

 

14. ๐Ÿ”ง ๋ช…์‹œ์  ๋ชจ๋“ˆ ๋นŒ๋“œ

  • Swift ์ฝ”๋“œ๋„ ๋ชจ๋“ˆ → ์Šค์บ” → ๋นŒ๋“œ ๋‹จ๊ณ„ ๋ถ„๋ฆฌ
  • Swift ๋””๋ฒ„๊น… ์†๋„ ํ–ฅ์ƒ ๋ฐ ๋นŒ๋“œ ์žฌ์‚ฌ์šฉ ์ฆ๊ฐ€

๊ธฐ๋ณธ์ ์œผ๋กœ swift ์ฝ”๋“œ์šฉ ๋ช…์‹œ์ ์œผ๋กœ ๋นŒ๋“œ๋œ ๋ชจ๋“ˆ ํƒ‘์žฌ

 

๋ช…์‹œ์  ๋ชจ๋“ˆ์„ ์‚ฌ์šฉํ•˜๋ฉด Xcode๋Š” ๊ฐ ์ปดํŒŒ์ผ ๋‹จ์œ„ ์œ ๋‹›์„ 3๊ฐ€์ง€ ๋‹จ๊ณ„๋กœ ๋ถ„๋ฆฌํ•ด ์ฒ˜๋ฆฌ : ์Šค์บ”, ๋ชจ๋“ˆ๋นŒ๋“œ, ์›๋ณธ ์†Œ์Šค์ฝ”๋“œ ๋นŒ๋“œ

 

-> ์ด๋ ‡๊ฒŒ ๋ถ„๋ฆฌํ•˜๋ฉด ๋นŒ๋“œ ์‹œ์Šคํ…œ์˜ ๋ชจ๋“ˆ ๋นŒ๋“œ ์ž‘์—…์— ๋Œ€ํ•œ ์ œ์–ด๊ฐ€ ๋†’์•„์ ธ ๋นŒ๋“œ ํŒŒ์ดํ”„๋ผ์ธ ์ตœ์ ํ™” ๊ฐ€๋Šฅ

-> ๋นŒ๋“œ ํšจ์œจ์„ฑ ๋ฐ ์‹ ๋ขฐ์„ฑ ํ–ฅ์ƒ , ์Šค์œ„ํ”„ํŠธ ์ฝ”๋“œ ๋””๋ฒ„๊น… ์†๋„๋„ ๋†’์•„์ง. ์™œ ? ๋””๋ฒ„๊ฑฐ๊ฐ€ ์ด๋ฏธ ๋นŒ๋“œ๋œ ๋ชจ๋“ˆ์„ ์žฌ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ

 

์Šค์œ„ํ”„ํŠธ ๋นŒ๋“œ ์˜คํ”ˆ์†Œ์Šค

 

15. โš”๏ธ Enhanced Security

  • ํฌ์ธํ„ฐ ์ธ์ฆ ๋“ฑ ๊ฐ•ํ™”๋œ ๋ณด์•ˆ ์˜ต์…˜ Signing & Capabilities ์ถ”๊ฐ€

 

16. โœ… UI ํ…Œ์ŠคํŠธ & ์ž๋™ํ™” ๊ฐœ์„ 

  • UI ๋…นํ™” ๋ฐฉ์‹ ๊ฐœ์„ : ํ•˜๋“œ์›จ์–ด ํ‚ค๋ณด๋“œ, ๋ฒ„ํŠผ ์ง€์›
  • Automation Explorer์—์„œ ์‹คํŒจ ์ง€์  ์Šคํฌ๋ฆฐ์ƒท+๋น„๋””์˜ค ์ œ๊ณต
  • XCTHitchMetric ์ถ”๊ฐ€: ์• ๋‹ˆ๋ฉ”์ด์…˜ ์Šค๋ฌด์Šค๋‹ˆ์Šค, ๋Š๊น€ ์—ฌ๋ถ€ ๊ฐ์ง€

ui ํ…Œ์ŠคํŠธ

 

ํ™”๋ฉด์„ ๋ˆ„๋ฅด๋ฉด ๊ทธ์— ๋งž๋Š” ํ…Œ์ŠคํŠธ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑ
๋…นํ™”์ข…๋ฃŒํ›„ ํ…Œ์ŠคํŠธ๋ฅผ ํ•˜๋ฉด ํ™•์ธ ๊ฐ€๋Šฅ ui ๋กœ ์ง์ ‘ ๋ณด์—ฌ์คŒ. ๋ชจ๋“  ์ƒํ˜ธ์ž‘์šฉ์—์„œ ๊ฐ„๊ฒฐํ•œ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜์˜€๊ณ , ๋‹ค์–‘ํ•œ ์š”์†Œ์— ๋Œ€ํ•œ ์—ฌ๋Ÿฌ ์‹๋ณ„์ž ์˜ต์…˜์„ ์–ป์„ ์ˆ˜ ์žˆ์Œ.

 

์‹คํŒจํ•œ ui ํ…Œ์ŠคํŠธ๋ฅผ ๋‹ด์€ ๋ฆฌํฌํŠธ -> ํ…Œ์ŠคํŠธ ์ „์ฒด๋ฅผ ๋…นํ™”ํ•œ ๋น„๋””์˜ค๋„ ๊ฐ™์ด ์žˆ๊ณ , ํ˜„์žฌ ๋น„๋””์˜ค ํ”„๋ ˆ์ž„์€ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•œ ์ง€์ 

 

ํ…์ŠคํŠธ ํ•„๋“œ๊ฐ€ ์•„๋‹Œ ํ…์ŠคํŠธ ๋ทฐ , ์ฝ”๋“œ๋ฅผ ๋ฐ”๋กœ ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ์Œ

 

์•ฑ์˜ ์• ๋‹ˆ๋ฉ”์ด์…˜ ์„ฑ๋Šฅ ์Šคํฌ๋กค์„ ํ…Œ์ŠคํŠธ
๋Š๊น€ ์„ฑ๋Šฅ์— ๋Œ€ํ•œ ์—ฌ๋Ÿฌ ์ง€ํ‘œ ๋ณด๊ณ 

17. โš ๏ธ Runtime API Checks & ์Šค๋ ˆ๋“œ ๊ฒ€์‚ฌ

  • Test Plan์—์„œ ๋Ÿฐํƒ€์ž„ API ์œ„๋ฐ˜ ์‹œ ์ž๋™์œผ๋กœ ํ…Œ์ŠคํŠธ ์‹คํŒจ ์ฒ˜๋ฆฌ
  • ์Šค๋ ˆ๋“œ ์„ฑ๋Šฅ ๋ฌธ์ œ(์šฐ์„ ์ˆœ์œ„ ์—ญ์ „, ๋ฉ”์ธ ์Šค๋ ˆ๋“œ ๋ถ€์ ์ ˆ ์‚ฌ์šฉ) ์ž๋™ ๊ฐ์ง€

ํ”„๋ ˆ์ž„์›Œํฌ ๋Ÿฐํƒ€์ž„ ๋ฌธ์ œ๋ฅผ ํ‘œ๋ฉดํ™”

 

๋ฉ”์ธ์Šค๋ ˆ๋“œ์—์„œ ์šฐ์„ ์ˆœ์œ„ ์—ญ์ „ ๋ฐ ui์™€ ๊ด€๋ จ๋˜์ง€ ์•Š์€ ์ž‘์—…๊ณผ ๊ฐ™์€ ์Šค๋ ˆ๋“œ ๋ฌธ์ œ๋ฅผ ๊ฐ์ง€


์ด์ฒ˜๋Ÿผ Xcode 26์€ ๋‹ค์šด๋กœ๋“œ ์šฉ๋Ÿ‰ ์ถ•์†Œ๋ถ€ํ„ฐ ์„ฑ๋Šฅ, ๋””๋ฒ„๊น…, AI ์ฝ”๋“œ ์ง€์›, ํ…Œ์ŠคํŠธ ์ž๋™ํ™”, ๋ณด์•ˆ๊นŒ์ง€ ๊ฐœ๋ฐœ ์›Œํฌํ”Œ๋กœ์šฐ ์ „๋ฐ˜์„ ํญ๋„“๊ฒŒ ํ–ฅ์ƒ์‹œ์ผฐ์Šต๋‹ˆ๋‹ค. ์ƒˆ Xcode ๋ฅผ ๊น”๊ณ  ์ด๊ฒƒ์ €๊ฒƒ ํ…Œ์ŠคํŠธ ํ•ด๋ด์•ผ๊ฒ ์–ด์š” ! 

 

 

 

ํ˜„์žฌ๋Š” ๋ฒ ํƒ€๋ฒ„์ „์ด๋ผ ์ €๋„ ์ผ๋‹จ ์„ค์น˜๋ฅผ ํ•ด๋ดค์Šต๋‹ˆ๋‹ค. !! ํํ ์ •์‹ ๋ฒ„์ „์ด ์–ธ๋Šฅ ๋‚˜์™”์Šค๋ฉด ์ข‹๊ฒ ๋„ค์˜น

๋ฐ˜์‘ํ˜•