์ ๋ณด
Swift Student Challenge๋ Apple์ด ์ฃผ์ตํ๋ ์ด๋ฒคํธ ์ค ํ๋๋ก, ์ ์ธ๊ณ์ ํ์๋ค์ ๋์์ผ๋ก Swift ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๋ฅผ ์ฌ์ฉํ์ฌ playground ์ฑ์ ๊ฐ๋ฐํ๋ ์ฑ๋ฆฐ์ง์ด๋ค. ๋งค๋
6์์ ์ด๋ฆฌ๋ WWDC์ ์ธ 4์์ ์ฃผ๋ก ๊ฐ์ตํ๋ฉฐ, 5์์ ๊ฒฐ๊ณผ๊ฐ ๋์จ๋ค. ์ด๋ฒ 24๋
๋ ์ค์ค์ฑ์ ์ด์ ๋ณด๋ค 2๊ฐ์ ๋น ๋ฅด๊ฒ 2์์ ๊ฐ์ต๋์๋ค.
23๋
๋์๋ ํ๊ตญ ์๊ฐ์ผ๋ก 4์ 20์ผ๊น์ง 17์๊น์ง ์ ์ถ์ด์์ผ๋ฉฐ, ๊ฒฐ๊ณผ๋ 3์ฃผ๊ฐ ์ง๋ 5์ 10์ผ ์๋ฒฝ 3์์ ๋์๋ค.
์ฃผ์ ์ ์ ๊ณผ์
์ ํ ์์นด๋ฐ๋ฏธ ๋ค์ด๊ฐ๊ธฐ ์ ์ ์ฐพ์๋ณด๋ฉด์, ํ๊ตญ ์์นด๋ฐ๋ฏธ ์์ ๋ฌ๋๋ค์ด 22๋
๋์ ๋ง์ด ์๋๋ก ์ ์ ๋์๋ค๋ ์ฌ์ค์ ์๊ฒ ๋์๋ค.
Swift Student Challenge๋ผ๋ ์ด๋ฆ์ฒ๋ผ ํ์์๊ฒฉ์ด ์๋ ์ฌ๋๋ง ์ง์์ด ๊ฐ๋ฅํ๋ฐ, ๋ ์กธ์
์ ํ๊ธฐ์.. ์์นด๋ฐ๋ฏธ ์์ ์๊ฒฉ์ผ๋ก ์ง์ํ ์ ์์๋ค.
์ค์ค์ฑ ์ง์์ด ์์๋๊ณ , ์ด์ ์ ์๋๋ก ์ ์ ๋ ํ๋ก์ ํธ๋ค์ ์ฐพ์๋ณด๋ฉด์ ์ด๋ค ํ๋ก์ ํธ๋ค์ด ์๋๋ก ์ ์ ๋๋์ง ํ์ ํ๊ณ ๋ด ์คํ ๋ฆฌ๋ฅผ ์ ํ์ด์ ์ ์ถํด๋ณด๋ฉด ๋๊ฒ ๋ค๋ผ๋ ์๊ฐ์ด ๋ค์์๋ค.
์ฃผ์ ์ ์ ํ๋ฉด์ ์๊ฐํ๋ ์์ด๋์ด๋ค์ 15๊ฐ ์ ๋ ์์๊ณ , ๊ทธ ์ค์์ "๋์๊ฒ ์๋ฏธ๊ฐ ์๋", "๋ด๊ฐ ์ ํ์ด๋ผ ์ ์๋ ์ฃผ์ ์ธ๊ฐ", "์๊ฐ ํฌ์ํ ๊ฐ์น๊ฐ ์๋"๋ผ๋ ๊ธฐ์ค์ ๊ฐ์ง๊ณ ์์ด๋์ด๋ค์ ์ณ๋๋ค. ๊ทธ๋ ๊ฒ ๋จ์ ์ฃผ์ ๋ค์ด "๊ณต์ ๊ฐ์น ์ฐฝ์ถ", "ํ ๋จธ๋๋ฅผ ์ํ ๋จ์ถ์ด", "๋์์ธ ์์คํ ์ ํ์์ฑ" 3๊ฐ์ง๊ฐ ์์๋ค.
ํ์ฐธ ์ ํ ์์นด๋ฐ๋ฏธ๋ฅผ ํ๋๋ผ ์ค์ค๋ก ์ง๋ฌธํ๊ณ ๋ต๋ณํ๋๋ฐ ์กฐ๊ธ ์ต์ํด์ ธ์์ด์,,3๊ฐ์ง์ ์์ด๋์ด๋ฅผ ๊ฐ์ง๊ณ ์ฐ๊ธฐ ์ด๋ ค์ด๊ฑด ๊ณผ๊ฐํ ๋์ด๊ฐ๋ฉด์! ๋ค์ ์ง๋ฌธ๋ค์ ๋ต๋ณ์ ์จ๋ดค๋ค!
- ์ฃผ์ - ๋ฉ์ธ ํ์ดํ
- ๊ธฐํ ๊ณ๊ธฐ
- ์คํ ๋ฆฌ๋ผ์ธ
- ์ฑ์ ์ฃผ ํ๊ฒ
- ๋ฃ๊ณ ์ํ๋ ๊ธฐ๋ฅ
- ์ฌ์ฉ์์๊ฒ ํ๊ณ ์ถ์ ๋ง
- ์ฌ์ฌ์์์๊ฒ ๋งํ๊ณ ์ถ์ ๋ฌธ์ฅ
- ์ฃผ์ ์ ๊ด๋ จํด ์์๋ณผ ๊ฒ๋ค
- ์ฑ ๋ด์ ํฌํจ๋์ด์ผ ํ ๊ฒ๋ค
- ์ฑ์ ํ๋ก์ฐ
3๊ฐ์ง ์ฃผ์ ์ ๋ํด ์์ ํญ๋ชฉ์ ๋ต๋ณ์ ์์ฑํ๋ฉด์ ๊ฐ์ฅ ๋ต๋ณ์ด ์ ์จ๋ด๋ ค๊ฐ์ก๋ "๋์์ธ์์คํ ์ ํ์์ฑ"์ด๋ ์ฃผ์ ๋ฅผ ๊ฐ์ง๊ณ ํ๋ก์ ํธ๋ฅผ ์งํํ๊ธฐ๋ก ํ๋ค.
์ ์ถ ์ํ ์๊ฐ
์ฑ ํ๋ก์ฐ๋ฅผ ์์ธํ ๊ตฌ์ฑํ๋ฉด์ ๋์์ธ์์คํ ์ ๋ํด ๋ ์์๋ณด๋ ๋์ค์ ๋ด๊ฐ ์ง๊ธ ์๊ฐํ๊ณ ์๋ ๊ฒ๋ค์ ์คํ์ผ๊ฐ์ด๋์ ๊ฐ๊น๋ค๋ผ๋ ์ฌ์ค์ ์๊ฒ ๋์๊ณ ๊ธฐํ ๋ด์ฉ ์ผ๋ถ๋ฅผ ์์ ํ์๋ค.
์๊ธฐํ๊ณ ์ถ์๋ ์ด์ผ๊ธฐ๋ ๋ค์๊ณผ ๊ฐ์๋ค.
"๋ฒํผ ๋์์ธ์ ํ๋ํ๋์ ์ ๊ฒฝ์ฐ์ง ๋ง๊ณ ์ฌ์ฉ์ฑ๊ณผ ๊ฐ๋ฐ์ ์ง์คํด๋ผ, ์ด๋ฅผ ์ํด ๋ณธ์ธ์ ๊ฐ์ธ ์ฑ ๊ฐ๋ฐํ๊ธฐ ์ ์คํ์ผ ๊ฐ์ด๋๋ฅผ ๋จผ์ ๋ง๋ค์ด๋ด๋ผ!"
์ฑ์ ํ๋ก์ฐ์ ๊ธฐ๋ฅ์ ๋ค์๊ณผ ๊ฐ์ด ๊ตฌ์ฑํ๋ค.
- ์จ๋ณด๋ฉ - ์คํ์ผ ๊ฐ์ด๋์ ์ ์์ ํ์์ฑ, ์คํ์ผ๊ฐ์ด๋๋ฅผ ๊ตฌ์ฑํ๋ ์ฃผ์ ์์์ ๋ํ ์ค๋ช
- ์คํ์ผ๊ฐ์ด๋ ์ ์ - ์ฑ ์์ด์ฝ, ํ๋กํ, ์์ ํ๋ ํธ, ๋ฒํผ, ์ปจํธ๋กค, ํ์ดํฌ๊ทธ๋ํผ, notification์ ์ง์ ์์ , ์ปดํฌ๋ํธ์ ๊ด๋ จ๋ HIG ๋ด์ฉ์ ์ ๊ณต
- ์ต์ข ํ๋ฉด - ์ง์ ์ ์ํ ์์๋ค์ ํ ๋์ ํ์ธ, ์ด๋ฏธ์ง๋ก ์ ์ฅ
๊นํ๋ธ์ ์ง์์์ ์์ฑํ์๋ ๊ธฐํ์๋์ ํ์์ฑ, ์ฑ์ ๋์์์ ์ฒจ๋ถํด๋์์ผ๋ ์ข ๋ ๊ตฌ๊ฒฝํ๊ณ ์ถ๋ค๋ฉด ๊นํ๋ธ์์ ํ์ธํด์ฃผ์ธ์ ๐จ
ํ๊ธฐ, ํ๊ณ
23๋ ๋์ ์ค์ค์ฑ์ ํ๊ธฐ ์ด์ ์๋ UIKit์ด๋ Storyboard๋ก๋ง ์ฑ ๊ฐ๋ฐ์ ํ์ด์ SwiftUI๊ฐ ์ด์ํ์๋๋ฐ, ์ด๋ฐ์ ๋ฐ iOS, iPadOS ์ปดํฌ๋ํธ๋ค์ ๊ฐ๋ฐํ๋ฉด์ SwiftUI์ ๋ ์น์ํด์ง ์ ์์๊ณ , HIG ๋ด์ฉ์ ์ฑ์ ๋ น์๋ด๋๋ผ HIG๋ฅผ ์ฝ์ด๋ณด๊ณ ๊ฐ ์ปดํฌ๋ํธ์ ๋ํด ์ ๋ฆฌํ๋ ์๊ฐ์ ๊ฐ์ก์ด์ ๋ ์ ์๋ฏธํ ์๊ฐ์ผ๋ก ๋จ์ ๊ฒ ๊ฐ๋ค.
์ฃผ๋ณ์ ๋ฉํ ๋ง์ ๋ฐ๊ฑฐ๋ ์๋ก ํผ๋๋ฐฑํด์ฃผ๋ ์๊ฐ์ ๊ฐ์ ธ์ ์ฃผ์ ๋ฅผ ๊ณต์ ํ๋ ์ฌ๋๋ค๋ ์์๋ค. ํผ๋๋ฐฑ์ ๋ฐ๋๋ค๋ฉด ๋ฌผ๋ก ๋ ์ข์ ๊ฒฐ๊ณผ๋ฌผ์ ๋ผ ์ ์๊ฒ ์ง๋ง, ํ์ธ์ ๋ง์ ํฉ์ธ๋ ค ์๊ฐ์ด ๊ดํ ๋ง์์ ธ ๋ณ๊ฒฝ์ด ์ฆ์์ง ๊ฒ ๊ฐ์ ๋ฐ๋ก ํผ๋๋ฐฑ์ ๋ฐ์ง๋ ์์์๋ค.
์ค์ค์ฑ๋งํผ์ ์จ์ ํ ๋ด ์์ด๋์ด, ๋ด ํ๋ง์ผ๋ก ๋๋ฒจ๋กญ์์ผ ์ธ์ ๋ฐ๊ณ ์ถ๋ค๋ ์๊ฐ์ด ๋ค์ด์, ํผ์ ์ง์คํ๋๋ฐ ์๊ฐ์ ๋ค์ธ ๊ฒ ๊ฐ๋ค.
์์ฃผ ์ฃผ๊ด์ ์ธ Tip
์ฃผ์ ์ ์ ์
- wwdc ํํ์ด์ง๋ฅผ ์ฐธ๊ณ ํด๋ณด์
23๋ ๋์๋ ํํ์ด์ง ์กด์ฌ๋ฅผ ์์ง ๋ชปํด์ ๊นํ ๋ ํฌ์์ ๋ดค์๋๋ฐ, ๋ค๋ฅธ ์๋ ์ํ๋ค ๋ณด๋ฉด ๋ด๊ฐ ์ ๋ณด์ฌ์ค ์ ์๊ฒ ๋ค ์ถ์ ์ฃผ์ ๋ค์ด ์ฌ๋ฌ๊ฐ ๋ ์ฌ๋๋ ๊ฒ ๊ฐ๋ค.
WWDC Scholars ํํ์ด์ง
WWDC Github - ์ฃผ์ , ๊ธ์์ ์คํ ๋ฆฌ๋ฅผ ์ ๋๋ฌ๋ด์
๊ณผ๊ฑฐ ๊ฒฝํ์ ๋ฐํ์ผ๋ก ๊ธฐํ์๋๋ ํ์์ฑ ๋ฑ์ ์ค๋ช ํ๋ ํ๋ก์ ํธ๋ก ์์ํ๊ธฐ ๋๋ฌธ์, ์ฃผ๊ด์ ์ธ ์๊ฐ์ผ๋ก๋ ๋ณธ์ธ์ ๊ฒฝํ๊ณผ ๊ด๋ จ์๋ ์ฃผ์ ๋ก ์คํ ๋ฆฌ๋ฅผ ๋ น์ฌ๋ด๋๊ฒ ์ข์ ๊ฒ ๊ฐ๋ค. ์ ํ์์ ๊ณต์ ํํ์ด์ง์ ์๊ฐํ ์๋ ์ํ๋ค๊ณผ ์ด์ ์๋ ์ํ์ ๋ณด๋ฉด ๋ณธ์ธ์ ์คํ ๋ฆฌ๋ ์ ๊ณต์ด ๋ด๊ฒจ์๋ ์ํ์ด ๊ฝค ์์๋ ๊ฒ ๊ฐ๋ค. - ๋์ค๋ฅผ ๋๋ฌด ์ฃผ์ง ๋ง์! 3๋ถ ์ด๋ด๋ก ์ฒดํํ ์ ์๋ ํ๋ก์ฐ๋ก ๊ตฌ์ฑํ์!ํํ์ด์ง์๋ ๋์์๋ ๋ด์ฉ์ด๊ธฐ ๋๋ฌธ์, ์ฃผ์ ์ ์ ์ ํ๊ฑฐ๋ ๊ธฐํํ ๋ 3๋ถ ์ด๋ด๋ก ์ฌ์ฌ์์์ด ํ๋จํ๊ณ ์ข์ ์ ์๋ฅผ ์ค ์ ์๋๋ก ๊ตฌ์ฑํ๋๊ฒ ์ข์ ๋ฏ ํ๋ค!-!
์๋ฒ์ญ ํ ๋
- ํด๋ก๋ฐX, ์งํผํฐ๋ก ๋ฒ์ญํ์!
์์ด์ ์์ ์ด ์๋ค๋ฉด ํํ๊ณ ๋ ์งํผํฐ๋ก ๋ฒ์ญ์ ํ ํ ๋ฐ, ํํ๊ณ ๋ณด๋จ ์งํผํฐ, ํด๋ก๋ฐx๋ฅผ ์ถ์ฒํ๋ค! ํ๊ธ ์คํฌ๋ฆฝํธ๋ฅผ ์ฃผ๋ฉด ์๋ฒ์ญ์ ํด์ฃผ๋๋ฐ, ๋ฒ์ญ ๊ฒฐ๊ณผ๋ฅผ ๋ค์ ํ๊ธ๋ก ๋๋ ค๋ดค์ ๋ ์งํผํฐ, ํด๋ก๋ฐ๊ฐ ๋ด๊ฐ ํ๊ณ ์ถ์ ๋ง๊ณผ ๋ ์ ์ฌํ๊ฒ ๋ฒ์ญํด์คฌ๊ธฐ ๋๋ฌธ์ด๋ค.
์ ์ถ ์
- ์ต๋ํ ๋ค์ํ ํ๊ฒฝ์์ ์ ๋์ํ๋ ์ง ํ์ธํ๊ธฐ! QA!
์ ์ถ ์ ์ ์ฌ์ฌ ํ๊ฒฝ์ ์ ํํ๋ ๊ณณ์ด ์๊ณ , ๋๋ Swift Playgrounds - iPad๋ฅผ ์ ํํ์๋ค. ์๋ฎฌ๋ ์ดํฐ์์ 12.9, 11์ธ์น์์ ๊ธ์๋ ๋ ์ด์์์ด ์๊นจ์ง๋์ง ํ์ธํ๊ณ ์ ์ถํ์๋ค. ๊ทธ๋ฆฌ๊ณ ์์ดํจ๋๊ฐ ์๋ค๋ฉด ํ๋ ์ด๊ทธ๋ผ์ด๋๋ฅผ ๊น์์ ์ด์ํ ๋ถ๋ถ ์๋์ง, ์ ๋์ํ๋์ง ๊ผญ ํ์ธํด๋ณด์.