๐Ÿ“Œ ํ”„๋กœ์ ํŠธ ์ƒ์„ฑ

Xcode๋ฅผ ๋‹ค์šด๋กœ๋“œํ•˜๊ณ  ์ฒ˜์Œ ํ‚ค๋ฉด

์ด๋Ÿฐ ํ™”๋ฉด์ด ๋ฐ˜๊ฒจ์ค„ํ…๋ฐ์š”,
์ƒˆ๋กœ์šด ํ”„๋กœ์ ํŠธ ์ƒ์„ฑ์„ ์œ„ํ•ด Create a new Xcode project๋ฅผ ๋ˆŒ๋Ÿฌ์ค๋‹ˆ๋‹ค.
 
๋˜๋Š”
 

์™ผ์ชฝ ์ƒ๋‹จ File - New - Project๋ฅผ ๋ˆ„๋ฅด๊ฑฐ๋‚˜ ๋‹จ์ถ•ํ‚ค์ธ Shift + command + N์„ ๋ˆŒ๋Ÿฌ๋„ ์ƒ์„ฑ์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.
 
 
ํ”„๋กœ์ ํŠธ๋ฅผ ์ƒ์„ฑํ•œ๋‹ค๋ฉด ์•„๋ž˜์™€ ๊ฐ™์ด ๋งŽ์€ ์„ ํƒ์ง€๊ฐ€ ๋‚˜์˜ต๋‹ˆ๋‹ค.

Application์„ ํ•˜๋‚˜์”ฉ ์•Œ์•„๋ณผ๊ฒŒ์š”!
 

1. App
    - ๋ทฐ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์•ฑ์„ ๊ฐœ๋ฐœํ•  ๋•Œ ์“ฐ๋Š” ํ…œํ”Œ๋ฆฟ 

2. Document App
    - ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•  ์ˆ˜ ์žˆ๋Š” ๋ฌธ์„œ ๊ธฐ๋ฐ˜์˜ ์•ฑ์„ ๊ฐœ๋ฐœํ•  ๋•Œ ์‚ฌ์šฉํ•˜๋Š” ํ…œํ”Œ๋ฆฟ

3. Game
   - ๊ฒŒ์ž„ ์•ฑ์„ ๊ฐœ๋ฐœํ•  ๋•Œ ์‚ฌ์šฉํ•˜๋Š” ํ…œํ”Œ๋ฆฟ

4. Argumented Reality App
    - ์ฆ๊ฐ•ํ˜„์‹ค(AR) ์•ฑ์„ ๊ฐœ๋ฐœํ•  ๋•Œ ์‚ฌ์šฉํ•˜๋Š” ํ…œํ”Œ๋ฆฟ

5. Swift Playgrounds App
    - ํ”Œ๋ ˆ์ด๊ทธ๋ผ์šด๋“œ ์•ฑ์„ ๊ฐœ๋ฐœํ•  ๋•Œ ์‚ฌ์šฉํ•˜๋Š” ํ…œํ”Œ๋ฆฟ

6. Sticker Pack App
    - ์Šคํ‹ฐ์ปค ํŒฉ ์•ฑ์„ ๊ฐœ๋ฐœํ•  ๋•Œ ์‚ฌ์šฉํ•˜๋Š” ํ…œํ”Œ๋ฆฟ

7. iMessageApp
    - iMessageApp์„ ๊ฐœ๋ฐœํ•  ๋•Œ ์‚ฌ์šฉํ•˜๋Š” ํ…œํ”Œ๋ฆฟ

8. Safari Extension App
    - ์‚ฌํŒŒ๋ฆฌ ๋ธŒ๋ผ์šฐ์ € ํ™•์žฅ ์•ฑ์„ ๊ฐœ๋ฐœํ•  ๋•Œ ์‚ฌ์šฉํ•˜๋Š” ํ…œํ”Œ๋ฆฟ

 
์ด ๋งŽ์€ ํ…œํ”Œ๋ฆฟ๋“ค ์ค‘์— ์ผ๋ฐ˜์ ์œผ๋กœ ๊ฐ€์žฅ ๋งŽ์ด ์‚ฌ์šฉํ•˜๋Š” ๊ฑด App์ž…๋‹ˆ๋‹ค !!!!
๊ทธ๋Ÿผ App์„ ์„ ํƒํ•œ ํ›„ ํ”„๋กœ์ ํŠธ ์ƒ์„ฑ์„ ๊ณ„์† ์ง„ํ–‰ํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

์ œ๊ฐ€ ์ฒ˜์Œ ํ”„๋กœ์ ํŠธ๋ฅผ ์ƒ์„ฑํ•  ๋•Œ ๋‹นํ™ฉํ–ˆ๋˜ ๋ถ€๋ถ„์ธ๋ฐ์š”.
์—ฌ๊ธฐ๋„ ํ•˜๋‚˜ ์”ฉ ์„ค๋ช…ํ•ด๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.
 

1. Product Name
    - ์•ฑ์˜ ๊ณ ์œ ๋ฒˆํ˜ธ์ธ Bundle Identifier์„ ๋งŒ๋“œ๋Š” ์š”์†Œ๋กœ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.
    - ์‚ฌ์šฉํ•  ํ”„๋กœ์ ํŠธ ์ด๋ฆ„์„ ๋„ฃ์œผ๋ฉด ๋ฉ๋‹ˆ๋‹ค! ex) 1st-Seminar, DooriBon, NadoSunbae

2. Team
    - ์• ํ”Œ ๊ฐœ๋ฐœ์ž๋กœ ์ƒ์„ฑ๋œ ์ธ์ฆ์„œ๋ฅผ ์„ ํƒํ•˜๋Š” ๋ถ€๋ถ„์ž…๋‹ˆ๋‹ค.
    - ์• ํ”Œ ๊ฐœ๋ฐœ์ž ์‚ฌ์ดํŠธ์—์„œ ๋ฐœ๊ธ‰ ๋ฐ›์€ ์ธ์ฆ์„œ๊ฐ€ ์žˆ๋‹ค๋ฉด ๋ชฉ์ ์— ๋งž๊ฒŒ ์„œ๋ช…๋œ ์•ฑ์„ ๋งŒ๋“ค์–ด ๋‚ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    - ๋งŒ์•ฝ ์• ํ”Œ ๊ฐœ๋ฐœ์ž ๊ณ„์ •์ด ์—†๋‹ค๋ฉด Personal Team์ธ ๊ฐœ์ธ ๊ณ„์ •์„ ๋„ฃ์–ด์ฃผ๋ฉด ๋ฉ๋‹ˆ๋‹ค.

3. Organization Identifier
    - ํ”„๋กœ์ ํŠธ ์šด์˜ ๊ธฐ๊ด€ ๋˜๋Š” ์กฐ์‹์˜ ์‹๋ณ„๊ฐ’์„ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค.
    - ๋Œ€์ฒด๋กœ ์†Œ์† ํšŒ์‚ฌ๋‚˜ ํ•ด๋‹น ํ”„๋กœ์ ํŠธ์˜ ๋„๋ฉ”์ธ์—์„œ www๋ฅผ ๋บ€ ๋‚˜๋จธ์ง€ ์—ญ์ˆœ์œผ๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
    - ์ด ๊ฐ’์€ Product Name๊ณผ ํ•จ๊ป˜ Bundle Identifier์˜ ๊ตฌ์„ฑ ์š”์†Œ๊ฐ€ ๋ฉ๋‹ˆ๋‹ค!

4. Bundle Identifier
    - ์•ฑ์˜ ๊ณ ์œ  ์‹๋ณ„ ๋ฒˆํ˜ธ์ž…๋‹ˆ๋‹ค.
    - Organization Identifier + Product Name์œผ๋กœ ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค.

5. Interface
    - Interface๋ฅผ ๊ตฌํ˜„ํ•  ๋•Œ ์‚ฌ์šฉ๋˜๋Š” ๋ฐฉ๋ฒ•์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.
    - ์ง€๊ธˆ์€ StoryBoard ๋ฐฉ์‹์„ ์„ ํƒํ•˜๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

6. Language
    - ์•ฑ์„ ๊ฐœ๋ฐœํ•  ๋•Œ ์‚ฌ์šฉํ•  ์–ธ์–ด๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.
    - ์ง€๊ธˆ์€ Swift๋ฅผ ์„ ํƒํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

7. Use Code Data
    - ๊ธฐ๊ธฐ ๋‚ด๋ถ€์— ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๋Š” ๊ฒฝ์šฐ, ์ด๋ฅผ ์ง€์›ํ•˜๋Š” ์ฝ”์–ด ๋ฐ์ดํ„ฐ๋ฅผ ์‚ฌ์šฉํ•  ๊ฒƒ์ธ์ง€๋ฅผ ๋ฌป๋Š” ์˜ต์…˜์ž…๋‹ˆ๋‹ค.
    - ์‚ฌ์šฉ ์—ฌ๋ถ€์— ๋”ฐ๋ผ ์„ ํƒํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.

8. Include Tests
    - ๊ฐœ๋ฐœํ•œ ์†Œํ”„ํŠธ์›จ์–ด์˜ ํ’ˆ์งˆ์„ ํ…Œ์ŠคํŠธํ•œ ๊ฒฐ๊ณผ๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋Š” ๋‹จ์œ„ ํ…Œ์ŠคํŠธ ๊ธฐ๋Šฅ๊ณผ UI ์š”์†Œ์— ๋”ฐ๋ฅธ ํ…Œ์ŠคํŠธ๋ฅผ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    - ํ•„์š” ์—ฌ๋ถ€์— ๋”ฐ๋ผ ์„ ํƒํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.

 

Next๋ฅผ ๋ˆ„๋ฅธ ํ›„, ์›ํ•˜๋Š” ๊ฒฝ๋กœ๋ฅผ ์„ ํƒํ•˜๊ณ  Create๋ฅผ ๋ˆ„๋ฅด๋ฉด ํ”„๋กœ์ ํŠธ ์ƒ์„ฑ์ด ์™„๋ฃŒ๋ฉ๋‹ˆ๋‹ค!

๋ฌด์‚ฌํžˆ ํ”„๋กœ์ ํŠธ๊ฐ€ ์ƒ์„ฑ๋˜์—ˆ๋„ค์š” ๐Ÿ‘
 

 ๐Ÿ“Œ ํ”„๋กœ์ ํŠธ ๊ธฐ์ดˆ ๊ตฌ์„ฑ

- Navigation Area
   : ํŒŒ์ผ ํƒ์ƒ‰ ๋ฐ ํŒŒ์ผ ์ถ”๊ฐ€, ์ด์Šˆ ๋“ฑ ์—ฌ๋Ÿฌ ์ •๋ณด๋ฅผ ํ•˜๋Š” ์˜์—ญ

์™ผ์ชฝ๋ถ€ํ„ฐ

  • Project navigator
    - ์ž‘์—…์ค‘์ธ ํ”„๋กœ์ ํŠธ ํŒŒ์ผ ๊ตฌ์„ฑ์„ ๋ณด์—ฌ์ค€๋‹ค.
    - ์ƒˆ๋กœ์šด ํŒŒ์ผ์„ ์ถ”๊ฐ€ํ•˜๊ฑฐ๋‚˜ ์‚ญ์ œ, ์ˆ˜์ •์ด ๊ฐ€๋Šฅํ•˜๋‹ค.
  • Source Control navigator
    - ์†Œ์Šค ํŒŒ์ผ ๋ฒ„์ „ ๊ด€๋ฆฌ๋ฅผ ์œ„ํ•œ ๋„ค๋น„๊ฒŒ์ดํ„ฐ์ด๋‹ค.
    - ๋ ˆํฌ์ง€ํ† ๋ฆฌ๋ผ๊ณ  ๋ถˆ๋ฆฌ๋Š” ์†Œ์Šค ๊ด€๋ฆฌ ์ „์šฉ ๊ณต๊ฐ„์„ ์ƒ์„ฑํ–ˆ์„ ๋•Œ๋งŒ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•˜๋‹ค. (ํ”„๋กœ์ ํŠธ ์ƒ์„ฑ ์‹œ ํ•˜๋‹จ์— ์žˆ๋Š” Create Git repository on my Mac ์„ ํƒ ๋˜๋Š” Source Control -> Create Git Repositories ์„ ํƒ)
  • Symbol navigator
    - ํ”„๋กœ์ ํŠธ์—์„œ ์ž‘์„ฑ๋œ ํด๋ž˜์Šค๋‚˜ ๊ตฌ์กฐ์ฒด, ๋ฉ”์†Œ๋“œ ๋“ฑ์˜ ์‹ฌ๋ฒŒ์„ ๊ตฌ์กฐ์ ์œผ๋กœ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” ๋„ค๋น„๊ฒŒ์ดํ„ฐ์ด๋‹ค.
  • Find navigator
    - ํ”„๋กœ์ ํŠธ ๋‚ด๋ถ€ ๋‚ด์šฉ์„ ๊ฒ€์ƒ‰ํ•  ๋•Œ ์‚ฌ์šฉํ•œ๋‹ค.
  • Issue navigator
    - ์ฝ”๋”ฉ ์ค‘ ๋ฌธ๋ฒ• ์˜ค๋ฅ˜๋‚˜ ๋ฌธ์ œ๊ฐ€ ์ƒ๊ธธ ๊ฒฝ์šฐ ๊ฒฝ๊ณ ๋‚˜ ์˜ค๋ฅ˜ ํ‘œ์‹œ๊ฐ€ ๋‚˜ํƒ€๋‚œ๋‹ค.
  • Test navigator
    - ํ”„๋กœ์ ํŠธ ํ…Œ์ŠคํŠธ ๋ชฉ์ ์œผ๋กœ ์ƒ์„ฑ๋œ ์ •๋ณด๋ฅผ ๋ณด์—ฌ์ค€๋‹ค.
  • Debug navigator
    - ๋””๋ฐ”์ด์Šค ํ˜น์€ ์‹œ๋ฎฌ๋ ˆ์ด์…˜์ด ์‹คํ–‰๋˜๋ฉด ๊ฐ์ข… ์ •๋ณด๋ฅผ ๋ณด์—ฌ์ค€๋‹ค.
    - ๋””๋ฒ„๊น… ์ค‘์—๋งŒ ์ •๋ณด๊ฐ€ ํ‘œ์‹œ๋œ๋‹ค.
  • Breakpoint navigator
    - ์‹คํ–‰ ์ค‘๊ฐ„์— ์ฝ”๋“œ์˜ ์ง„ํ–‰์„ ๋ฉˆ์ถ”๊ณ  ๋ฉ”๋ชจ๋ฆฌ๋‚˜ ๋ณ€์ˆ˜๊ฐ’ ๋“ฑ์„ ํ™•์ธํ•  ๋•Œ ์‚ฌ์šฉํ•œ๋‹ค.
    - ์ฝ”๋“œ ๋‚ด ์›ํ•˜๋Š” ์œ„์น˜์— ๋ธŒ๋ ˆ์ดํฌ ํฌ์ธํ„ฐ๋ฅผ ์‚ฝ์ž…ํ•˜๊ณ  ํ•ด๋‹น ๋ชฉ๋ก์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.
  • Report navigator
    - ๋นŒ๋“œ ๊ฒฐ๊ณผ๋‚˜ ์‹คํ–‰ ๊ฒฐ๊ณผ ๋“ฑ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.
    - ํ•„ํ„ฐ์™€ ํ•จ๊ป˜ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

 

- Editor Area
   : ์ฝ”๋“œ ์ž‘์„ฑ, ํ™”๋ฉด ์„ค๊ณ„ ๋“ฑ์˜ ์ž‘์—…์„ ํ•˜๋Š” ์˜์—ญ

  • ํ•˜๋‹จ์˜ ํฐ ๋ชจ์–‘ ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด๋ฉด ์–ด๋–ค ๊ธฐ์ข…์œผ๋กœ ์ž‘์—…์„ ํ• ์ง€ ์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์–ผ๋งˆ ์ „ ์ œ์ธ์ดˆ์ด๋‹˜๊ป˜์„œ ์Šคํ† ๋ฆฌ๋ณด๋“œ ์ž‘์—… ๊ด€๋ จ ์กฐ์–ธ์„ ์ฃผ์…จ๋Š”๋ฐ,
์‚ฌ์ด์ฆˆ๊ฐ€ ํฐ ๊ธฐ์ข…์œผ๋กœ ์ž‘์—…์„ ํ•˜๊ณ  ์ž‘์€ ๊ธฐ์ข…์—์„œ ์ž˜๋ฆฌ๋Š” ๊ฒƒ << ์‚ฌ์ด์ฆˆ๊ฐ€ ์ž‘์€ ๊ธฐ์ข…์œผ๋กœ ์ž‘์—…์„ ํ•˜๊ณ  ํฐ ๊ธฐ์ข…์—์„œ ์—ฌ๋ฐฑ์ด ๋‚จ๋Š” ๊ฒƒ
์ด๊ธฐ ๋•Œ๋ฌธ์— mini๋กœ ์ž‘์—…์„ ํ•˜๋Š” ๊ฒƒ์„ ์ถ”์ฒœํ•œ๋‹ค๊ณ  ํ•˜์…จ์Šต๋‹ˆ๋‹ค ๐Ÿซถ๐Ÿป
 

- Inspector Area
   : ์„ ํƒํ•œ ํŒŒ์ผ์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ์˜์—ญ

์™ผ์ชฝ๋ถ€ํ„ฐ

  • File inspector
    - ์„ ํƒ๋œ ํŒŒ์ผ์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ๋ณด์—ฌ์ค€๋‹ค.
    - story board๋ผ๋ฉด? ํŒŒ์ผ ์ •๋ณด, ๋นŒ๋“œ ๋Œ€์ƒ iOS ๋ฒ„์ „, ์ž๋™ ๋ ˆ์ด์•„์›ƒ ์˜ต์…˜ ๋“ฑ ์„ค์ •ํ•˜๋Š” ํ•ญ๋ชฉ ํ‘œ์‹œ
    - ํ™”๋ฉด ํฌ๊ธฐ์— ๋Œ€์‘ํ•˜๋Š” ์•ฑ, ๊ตญ๊ฐ€๋ณ„ ์–ธ์–ด ์„ค์ • ์ฒ˜๋ฆฌ ๊ฐ€๋Šฅ
  • History inspector
  • Quick Help inspector
  • Identity inspector
    - ์ธํ„ฐํŽ˜์ด์Šค ๋นŒ๋”์— ์ถ”๊ฐ€๋œ ๊ฐ์ฒด์™€ ์ด๋ฅผ ๊ตฌํ˜„ํ•œ ํด๋ž˜์Šค ์‚ฌ์ด์˜ ์—ฐ๊ฒฐ, ๊ฐ์ฒด์˜ ID ๋“ฑ ๊ณ ์œ  ์ •๋ณด ๊ด€๋ฆฌ๋ฅผ ํ•  ์ˆ˜ ์žˆ๋‹ค.
    - UI ๊ฐ์ฒด๋ฅผ ์†Œ์Šค ์ฝ”๋“œ์—์„œ ์ฐธ์กฐํ•˜๊ธฐ ์œ„ํ•œ ์‹๋ณ„ ๊ฐ’์„ ์ •์˜ํ•  ์ˆ˜ ์žˆ๋‹ค.
    - ์†Œ์Šค ์ฝ”๋“œ์™€ ํ™”๋ฉด ์ƒ์˜ ๊ฐ์ฒด๋ฅผ ์—ฐ๊ฒฐํ•  ์ˆ˜ ์žˆ๋‹ค.
  • Attributes inspector
    - ์„ ํƒ๋œ ๊ฐ์ฒด์˜ ์†์„ฑ์„ ๊ด€๋ฆฌํ•œ๋‹ค.
  • Size inspector
    - ์„ ํƒ๋œ ๊ฐ์ฒด์˜ ์™ธํ˜•์— ๋Œ€ํ•œ ์†์„ฑ์„ ๊ด€๋ฆฌํ•œ๋‹ค.
    - ์ฃผ๋กœ ํฌ๊ธฐ, ์œ„์น˜, ๋ฐฐ์น˜ ๋ฐฉ์‹ ๋“ฑ์„ ๋‹ค๋ฃฐ ์ˆ˜ ์žˆ๋‹ค.
  • Connections inspector
    - ์ธํ„ฐํŽ˜์ด์Šค ๋นŒ๋”์™€ ์†Œ์Šค ์ฝ”๋“œ ๊ฐ„์˜ ์—ฐ๊ฒฐ ๊ด€๊ณ„๋ฅผ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋‹ค.

 

- Debug Area
   : ๋””๋ฒ„๊ทธ ๊ด€๋ จ ๋‚ด์šฉ ํ‘œ์‹œ๋˜๋Š” ์˜์—ญ

  • ์—๋Ÿฌ ๋กœ๊ทธ, ์ถœ๋ ฅ ๋กœ๊ทธ ๋“ฑ ํ™•์ธ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

 

- Tool Bar
   : ํ•ต์‹ฌ ๋ฒ„ํŠผ์ด ์žˆ๋Š” ์˜์—ญ

  • โ–ถ๏ธ ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด๋ฉด ๋นŒ๋“œ๊ฐ€ ๋˜๊ณ , ์‹œ๋ฎฌ๋ ˆ์ดํ„ฐ๊ฐ€ ์ž‘๋™๋ฉ๋‹ˆ๋‹ค.
  • ์ด๋ฏธ์ง€ ์ค‘๊ฐ„ ๋ถ€๋ถ„์˜ 'iPhone 11'์„ ๋ˆ„๋ฅด๋ฉด ์‹œ๋ฎฌ๋ ˆ์ดํ„ฐ ๊ธฐ์ข…์„ ์„ ํƒํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.
    (์—ฌ๊ธฐ์„œ ์•„์ดํฐ์„ ์œ ์„  ์—ฐ๊ฒฐํ•ด์„œ ์‹œ๋ฎฌ๋ ˆ์ดํ„ฐ๋กœ ์„ค์ •ํ•  ์ˆ˜ ๋„ ์žˆ์Šต๋‹ˆ๋‹ค.)

 

๊ฐ ๋ถ€๋ถ„๋งˆ๋‹ค ์ด๋Ÿฐ ์•„์ด์ฝ˜์ด ์žˆ์„ ๊ฒ๋‹ˆ๋‹ค!
์ด๊ฑธ ๋ˆŒ๋Ÿฌ์ฃผ๋ฉด ํ•ด๋‹น ๋ถ€๋ถ„์„ ์ ‘์—ˆ๋‹ค ํˆ๋‹ค ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
์ €๋„ 14์ธ์น˜๋ฅผ ์“ฐ๊ณ  ์žˆ๊ธฐ ๋•Œ๋ฌธ์—.. ์ ‘์–ด ๋†“๊ณ  ์“ฐ๋Š” ๊ฒŒ ๋ˆˆ์ด ์กฐ๊ธˆ์ด๋‚˜๋งˆ ํŽธํ•˜๋”๋ผ๊ตฌ์š”.. ํ•˜ํ•˜
 
 
๋‹ค์Œ์œผ๋กœ๋Š” ํŒŒ์ผ๋“ค์— ๋Œ€ํ•ด ์‚ดํŽด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.
 

1. *.swift

    - Swift ํด๋ž˜์Šค ํŒŒ์ผ๋กœ ์•ฑ์˜ ์†Œ์Šค ์ฝ”๋“œ๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค.
    - AppDelegate, SceneDelegate ํŒŒ์ผ์€ ์•ฑ ์ „์ฒด์˜ ์ƒ๋ช… ์ฃผ๊ธฐ๋ฅผ ๊ด€๋ฆฌํ•˜๋Š” ํด๋ž˜์Šค ํŒŒ์ผ์ž…๋‹ˆ๋‹ค.
        * ์ƒ๋ช…์ฃผ๊ธฐ์— ๋Œ€ํ•ด์„œ๋Š” ๋”ฐ๋กœ ํฌ์ŠคํŒ…ํ•˜๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค!
    - ViewController ํŒŒ์ผ์€ ํ™”๋ฉด(๋ทฐ)์—์„œ ์ฒ˜๋ฆฌํ•˜๋Š” ์ž‘์—…๋“ค์„ ์ฒ˜๋ฆฌํ•˜๊ธฐ ์œ„ํ•œ ์†Œ์Šค ์ฝ”๋“œ๋ฅผ ๋‹ด๊ณ  ์žˆ๋Š” ํด๋ž˜์Šค ํŒŒ์ผ์ž…๋‹ˆ๋‹ค.
      storyboard์— ๊ฐ€๋ฉด ํ™”๋ฉด์ด ๋ณด์ผํ…๋ฐ์š”, ์ผ๋ฐ˜์ ์œผ๋กœ ํ™”๋ฉด ๊ฐœ์ˆ˜๋งŒํผ ViewController๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค!
 

2. *.storyboard

    - ์œ ์ € ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์ข…ํ•ฉ์ ์œผ๋กœ ๊ตฌํ˜„ํ•˜๋Š” ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค.
    - Main.storyboard ํŒŒ์ผ์€ ํ”„๋กœ์ ํŠธ ์ƒ์„ฑ ์‹œ ๊ธฐ๋ณธ์œผ๋กœ ์ƒ์„ฑ์ด ๋˜๊ณ , ์•ฑ์˜ GUI๋ฅผ ๋‹ด๋‹นํ•ฉ๋‹ˆ๋‹ค.
    - LaunchScreen.storyboard ํŒŒ์ผ์€ ์•ฑ์„ ์‹คํ–‰ํ•˜๋ฉด ์ฒ˜์Œ ๋‚˜ํƒ€๋‚˜๋Š” ์‹œ์ž‘ ํ™”๋ฉด์˜ ์ธํ„ฐํŽ˜์ด์Šค ์„ค๊ณ„๋ฅผ ๋‹ด๋‹นํ•ฉ๋‹ˆ๋‹ค. (์Šคํ”Œ๋ž˜์‹œ)
    - ํ™”๋ฉด ๊ฐ„์˜ ์—ฐ๊ฒฐ์„ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค.
    - View Controller์™€ View๋ฅผ ๋‹ด๋Š” ๊ณต๊ฐ„์ž…๋‹ˆ๋‹ค.
    - ์ฒ˜์Œ iOS ๊ฐœ๋ฐœ์„ ๊ณต๋ถ€ํ•˜๊ฒŒ ๋˜๋ฉด ์ด ์Šคํ† ๋ฆฌ ๋ณด๋“œ์—์„œ ํ™”๋ฉด ๊ตฌํ˜„์„ ๊ณต๋ถ€ํ•  ๊ฑฐ์˜ˆ์š”!
 

์ž ๊น, View Controller๋Š” ๋ญ๊ณ , View๋Š” ๋ญ”๋ฐ ?!

๊ฐ„๋‹จํ•˜๊ฒŒ View Controller ์•ˆ์— View๊ฐ€ ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•˜๋ฉด ๋  ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

View Controller๋Š” ๋ทฐ์˜ ๊ณ„์ธต ๊ตฌ์กฐ๋ฅผ ๊ด€๋ฆฌํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
๋ทฐ ์ปจํŠธ๋กค๋Ÿฌ์—๋Š” ๋ชจ๋“  ์ฝ˜ํ…์ธ ๋ฅผ ํฌํ•จํ•˜๋Š” ํ•˜๋‚˜์˜ ๋ฃจํŠธ ๋ทฐ(Root View)๊ฐ€ ์žˆ์œผ๋ฉฐ,
์ด ๋ฃจํŠธ ๋ทฐ์—๋Š” ์ฝ˜ํ…์ธ ๋ฅผ ํ‘œ์‹œํ•˜๋Š” ๋ฐ์— ํ•„์š”ํ•œ ๋ทฐ(View)๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

View๋Š” iOS ์•ฑ ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ๊ธฐ๋ณธ ๊ตฌ์„ฑ ์š”์†Œ์ž…๋‹ˆ๋‹ค.
๋ทฐ๋ฅผ ์‚ฌ์šฉํ•ด์„œ ํ™”๋ฉด์— ์ปจํ…์ธ ๋ฅผ ๋ฐฐ์น˜ํ•˜๊ฑฐ๋‚˜ ๊ทธ๋ฆด ์ˆ˜ ์žˆ์œผ๋ฉฐ ๋ทฐ ์•ˆ์— ๋˜ ๋‹ค๋ฅธ ๋ทฐ๊ฐ€ ๋“ค์–ด๊ฐˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
UI ์ปดํฌ๋„ŒํŠธ์ธ Label์ด๋‚˜ Button ๋“ฑ๋„ ํ•˜๋‚˜์˜ View ์ž…๋‹ˆ๋‹ค.


โ€ผ๏ธ ViewController.swift ํŒŒ์ผ๊ณผ View Controller๋Š” ๋‹ค๋ฆ…๋‹ˆ๋‹ค!!!!!

์œ„์—์„œ swift ํŒŒ์ผ์— ๋Œ€ํ•ด ์–ธ๊ธ‰์„ ํ–ˆ ๋“ฏ์ด ViewController ํŒŒ์ผ์€ ์ž‘์—…์— ํ•„์š”ํ•œ ์†Œ์Šค ์ฝ”๋“œ๋ฅผ ๋‹ด๊ณ  ์žˆ๋Š” ํŒŒ์ผ์ž…๋‹ˆ๋‹ค.
๋จผ์ € ViewController.swift ํด๋ž˜์Šค ํŒŒ์ผ์€ ๋ง ๊ทธ๋Œ€๋กœ 'ํด๋ž˜์Šค' ํŒŒ์ผ์ด๊ธฐ ๋•Œ๋ฌธ์— storyboard์— ์žˆ๋Š” View Controller์™€ ์—ฐ๊ฒฐํ•ด์„œ ์‚ฌ์šฉํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.
๊ทธ๋Ÿผ ํ•ด๋‹น View Controller์—์„œ ViewController.swift ํŒŒ์ผ์— ์žˆ๋Š” ์†Œ์Šค ์ฝ”๋“œ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๊ฒ ์ฃ ?!

 

3. Assets.xcassets

    - ์ด๋ฏธ์ง€ ๋ฐ ์•„์ด์ฝ˜ ๋“ฑ์˜ ๋ฆฌ์†Œ์Šค๋ฅผ ๊ด€๋ฆฌํ•  ๋•Œ ์‚ฌ์šฉํ•˜๋Š” ํด๋”์ž…๋‹ˆ๋‹ค.
    - ์Šฌ๋ผ์ด๋”๋ฅผ ์ปค์Šคํ…€ํ•˜๊ฑฐ๋‚˜ ์•ฑ์˜ ์•„์ด์ฝ˜ ๋“ฑ๋“ฑ์ด ํฌํ•จ๋  ์ˆ˜ ์žˆ๊ฒ ์ฃ ?!
 

4. info.plist 

    - ํ”„๋กœ์ ํŠธ ์„ค์ •์„ ๋‹ด๋‹นํ•˜๋Š” ํŒŒ์ผ์ž…๋‹ˆ๋‹ค.
    - ์‹œ์ž‘ํ™”๋ฉด ์„ค์ •, ๋„คํŠธ์›Œํฌ ์ ‘๊ทผ ํ—ˆ์šฉ, ์นด๋ฉ”๋ผ ์ ‘๊ทผ ํ—ˆ์šฉ, ์œ„์น˜ ์ ‘๊ทผ ํ—ˆ์šฉ ๋“ฑ์ด ์žˆ์Šต๋‹ˆ๋‹ค.
 

 ๐Ÿ“Œ ๋งˆ์น˜๋ฉฐ

๊ธฐ๊น”๋‚œ ์„ธ๋ฏธ๋‚˜ ์ž๋ฃŒ๋ฅผ ๋งŒ๋“ค์–ด ์ฃผ์‹  ์†ํŠธ 30๊ธฐ iOS ํŒŒํŠธ์žฅ ํƒœ๋ผ๋‹˜๊ป˜ ๊ฐ์‚ฌ์˜ ๋ง์”€์„ ์ „ํ•ฉ๋‹ˆ๋‹ค...
 
 
์ฐธ๊ณ 
* SOPT 30th iOS 1์ฐจ ์„ธ๋ฏธ๋‚˜ ์ž๋ฃŒ
* https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=sqlpro&logNo=221045495843 
 

+ Recent posts