Inflearn brand logo image
Inflearn brand logo image
์ฑ„๋„ํ†ก ์•„์ด์ฝ˜

[Lv.2] SwiftUI ์ค‘๊ธ‰ - Core Data์™€ SwiftData๋กœ ์•ฑ ์™„์„ฑํ•˜๊ธฐ

SwiftUI ๊ธฐ์ดˆ๋ฅผ ๋‹ค์ง„ ๋‹น์‹ ๊ป˜, ๋ณด๋‹ค ๊ณ ๊ธ‰๊ธฐ๋Šฅ์„ iOS ์•ฑ์— ์ ์šฉ์‹œํ‚ฌ ์ˆ˜ ์žˆ๋Š” SwiftUI ์ค‘๊ธ‰ ๊ฐ•์˜ ์ž…๋‹ˆ๋‹ค. (๐Ÿ“Œ ๋ชจ๋“  ๊ฐ•์˜ ์ž๋ฃŒ PDF ๋ฐ ์‹ค์Šต Code ํŒŒ์ผ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค)

Thumbnail

์ค‘๊ธ‰์ž๋ฅผ ์œ„ํ•ด ์ค€๋น„ํ•œ
[๋ชจ๋ฐ”์ผ ์•ฑ ๊ฐœ๋ฐœ] ๊ฐ•์˜์ž…๋‹ˆ๋‹ค.

์ด๋Ÿฐ ๊ฑธ ๋ฐฐ์šธ ์ˆ˜ ์žˆ์–ด์š”

  • Swift ์ค‘๊ธ‰ ๋ฌธ๋ฒ• - ์ค‘๊ธ‰์œผ๋กœ ๋„˜์–ด๊ฐ€๊ธฐ์ „ ์ค‘์š” ๋ฌธ๋ฒ• ์‚ฌํ•ญ ํ•œ๋ฒˆ ๋” ์ฒดํฌ!

  • SwiftUI Core - iOS ์•ฑ ๊ฐœ๋ฐœ์— ํ•„์š”ํ•œ ๊ณ ๊ธ‰ ๊ธฐ์ˆ ์„ ๋ฐฐ์›๋‹ˆ๋‹ค

  • SwiftUI with UIKit - SwiftUI ์—์„œ UIkit ์„ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๋ฐฐ์›๋‹ˆ๋‹ค

  • Core Data in SwiftUI - ์•ฑ LocalDB์— ์˜๊ตฌ์ ์œผ๋กœ ๋ฐ์ดํ„ฐ ์ €์žฅ์„ ๋ฐฐ์›๋‹ˆ๋‹ค

  • Real Project - ์‹ค์ „์— ์ ์šฉ๊ฐ€๋Šฅํ•œ Coffee Stamp App ์„ ๊ฐ™์ด ๋งŒ๋“ญ๋‹ˆ๋‹ค

  • SwiftData - iOS17 ๋ถ€ํ„ฐ ์†Œ๊ฐœ๋œ ์ตœ์‹  LocalDB ์— ๋Œ€ํ•ด ๋ฐฐ์›๋‹ˆ๋‹ค

SwiftUI Basic ๊ธฐ์ดˆ๋ฅผ ๋‹ค์ง„ ๋‹น์‹ ๊ป˜
๋” ์‹ฌํ™”๋œ ์ค‘๊ธ‰ ๊ธฐ์ˆ ๋กœ iOS ์•ฑ ๊ฐœ๋ฐœ ํ•ด๋ณด์„ธ์š”โš’๏ธ


SwiftUI Intermediate ๊ฐ•์˜ ํŠน์ง• โœจ

SwiftUI ๊ธฐ์ดˆ๋ฅผ ๋„˜์–ด ๋‹ค์–‘ํ•œ ๊ธฐ๋Šฅ์„ APP์— ๊ตฌํ˜„ํ•˜๊ธฐ์œ„ํ•œ ์ค‘๊ธ‰ ์‹ฌํ™” ๊ณผ์ •์ž…๋‹ˆ๋‹ค ๐Ÿง‘โ€๐Ÿ’ป

1. Swift ์ค‘๊ธ‰ ๋ฌธ๋ฒ•

  • SwiftUI Intermediate ๋„˜์–ด๊ฐ€๊ธฐ์ „ ํ•„์ˆ˜ ์ค‘๊ธ‰ ๋ฌธ๋ฒ• ์‚ฌํ•ญ์„ ์ ๊ฒ€ํ•˜๊ณ  ๋ฐฐ์›๋‹ˆ๋‹ค.

2. SwiftUI Intermediate - Core

  • ๋” ์‹ฌํ™”๋œ SwiftUI ๊ธฐ๋Šฅ์„ ํ•จ๊ป˜ ๋ฐฐ์›๋‹ˆ๋‹ค
  • SwiftUI ์—์„œ UIKit ์„ ๊ฐ€์ ธ์™€์„œ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๋ฐฐ์›๋‹ˆ๋‹ค

3. Project - Coffee Stamp APP

  • ๋ฐฐ์šด ์ด๋ก  ๋‚ด์šฉ์„ ๋ฐ”ํƒ•์œผ๋กœ AppStore ์— ์žˆ๋Š” Coffee Stamp App ์„ ํ•จ๊ป˜ ๋งŒ๋“ค์–ด ๋ด…๋‹ˆ๋‹ค

4. PDF, Xcode Files : ๋ชจ๋“  ๊ฐ•์˜ ์ž๋ฃŒ ํŒŒ์ผ ๋‹ค์šด๋กœ๋“œ

  • ๊ฐ•์˜ ์ด๋ก  ์ž๋ฃŒ (PDF), ์‹ค์Šต ์ฝ”๋“œ (Xcode) ํŒŒ์ผ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

5. SwiftData (iOS 17) 

  • iOS17 ๋ฒ„์ „์—์„œ ์ƒˆ๋กญ๊ฒŒ ์ถ”๊ฐ€๋œ SwiftData ์— ๋Œ€ํ•ด์„œ ๋ฐฐ์›๋‹ˆ๋‹ค.

6. Code Snippets ํŒŒ์ผ, ๊ฐ•์˜ ์ œ๊ณต

  • ์ž์ฃผ ์‚ฌ์šฉ๋˜๋Š” Code ๋ฅผ ์ €์žฅํ•˜์—ฌ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” Snippets ์— ๋Œ€ํ•ด์„œ ๋‹ค๋ฃน๋‹ˆ๋‹ค


UPDATE LOG ๐Ÿ†™

[3.0] Added SwiftData Section  - 2024-10-02

  • SwiftData Intro
  • SwiftData in Preview
  • TodoApp 01 - Model, UI
  • TodoApp 02 - Delete, Update
  • TodoApp 03 - Add, Update
  • TodoApp 04 - Sort, Filter 

[2.0] Added Code Snippets Section  - 2023-12-03

  • Snippets Intro
  • NavStack, VStack Snippets
  • HStack Snippets
  • ZStack Snippets
  • Button Snippets
  • Form Snippets
  • TabView Snippets
  • Text Snippets
  • Custom Snippets

Q&A ๐Ÿ’ฌ

Q. ์ค‘๊ธ‰ ๊ฐ•์˜์— ๋‚œ์ด๋„๋Š” ์–ด๋Š์ •๋„ ์ธ๊ฐ€์š”?

Swift ๋ฌธ๋ฒ•๊ณผ, SwiftUI ๊ธฐ๋ณธ ์Šคํ‚ฌ๋งŒ ์žˆ์œผ์‹œ๋ฉด ์ถฉ๋ถ„ํžˆ ๊ฐ•์˜๋ฅผ ๋“ค์œผ์‹ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. SwiftUI ์‚ฌ์šฉ ๊ฒฝํ—˜์ด ์—†์œผ์‹œ๋ฉด '๋ˆ„๊ตฌ๋‚˜ ํ•  ์ˆ˜ ์žˆ๋Š” [Lv.1] iOS 17 ์•ฑ ๊ฐœ๋ฐœ ๊ธฐ์ดˆ - SwiftUI๋กœ ์‹œ์ž‘ํ•˜๊ธฐ ๊ฐ•์˜ ๋“ฃ๊ณ  ์˜ค์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค.

 

Q. SwiftData ๊ฐ•์˜์— ๋Œ€ํ•œ ์ข€ ๋” ์‹ฌํ™” ๋œ ๋‚ด์šฉ์„ ์•Œ๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค.

SwiftData ์ด๋ก , ๊ธฐ์ดˆ ์‹ค์Šต ๊ฐ•์˜ ๋ถ€๋ถ„์„ ์—…๋กœ๋“œ ํ•˜์˜€์Šต๋‹ˆ๋‹ค. ์ถ”ํ›„, SwiftData ์ค‘์š” ์—…๋ฐ์ดํŠธ์‹œ ๋ณ€๊ฒฝ์‚ฌํ•ญ, ์ข€ ๋” ์‹ฌํ™”๋œ ๋‚ด์šฉ๋„ ๊ฐ•์˜ ์ œ์ž‘ํ•˜์—ฌ ์—…๋ฐ์ดํŠธ ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ ๊ณง ์ถœ์‹œ๋  SwiftUI Networking ๊ฐ•์˜์—์„œ๋„ SwiftData ์— ๋Œ€ํ•ด์„œ๋„ ๋‹ค๋ฃฐ ์˜ˆ์ •์ž…๋‹ˆ๋‹ค. 

Q. ์ตœ์‹  ๋ฒ„์ „์„ ์ง€์›ํ•˜๋Š” ๊ฐ•์˜์ธ๊ฐ€์š”?

2023๋…„ ๊ธฐ์ค€ iOS 16๊ณผ XCode 14.3 ๋ฒ„์ „์— ํ˜ธํ™˜๋˜๋Š” ๊ฐ•์˜์ž…๋‹ˆ๋‹ค. ์ถ”ํ›„ iOS ๋ฉ”์ด์ € ์—…๋ฐ์ดํŠธ ์‹œ ์ถ”๊ฐ€ ๋‚ด์šฉ๋„ ๊ณ„์† ์—…๋กœ๋“œ ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค


์ˆ˜๊ฐ• ์ „ ์ฐธ๊ณ  ์‚ฌํ•ญ ๐Ÿ“ข

  • ์‹ค์Šต ํ™˜๊ฒฝ : macOS Catalina, ๋ฒ„์ „ 10.15 ์ด์ƒ์˜ ๋งฅ ๋””๋ฐ”์ด์Šค
  • ํ•™์Šต ์ž๋ฃŒ : ์ œ๊ณต๋˜๋Š” PDF, Xcode ํŒŒ์ผ์„ ๋‹ค์šด๋ฐ›์•„์„œ ์„ค์น˜ํ•˜์„ธ์š”.

์ด๋Ÿฐ ๋ถ„๋“ค๊ป˜
์ถ”์ฒœ๋“œ๋ ค์š”!

ํ•™์Šต ๋Œ€์ƒ์€
๋ˆ„๊ตฌ์ผ๊นŒ์š”?

  • SwiftUI Basic ๊ฐ•์˜ ์™„๋ฃŒํ•˜์‹ ๋ถ„

  • SwiftUI ์ค‘๊ธ‰์œผ๋กœ ํ•œ๋‹จ๊ณ„ ๋ ˆ๋ฒจ์—…์ด ํ•„์š”ํ•˜์‹ ๋ถ„

  • APP ์— Core data ์ ์šฉํ•˜๊ณ  ์‹ถ์€๋ถ„

์„ ์ˆ˜ ์ง€์‹,
ํ•„์š”ํ• ๊นŒ์š”?

  • SwiftUI Basic ๊ฐ•์˜ ์ˆ˜๊ฐ•

  • SwiftUI ๊ธฐ๋ณธ ์ง€์‹

์•ˆ๋…•ํ•˜์„ธ์š”
Jacob(์ œ์ด์ฝฅ)์ž…๋‹ˆ๋‹ค.

663

๋ช…

์ˆ˜๊ฐ•์ƒ

31

๊ฐœ

์ˆ˜๊ฐ•ํ‰

43

๊ฐœ

๋‹ต๋ณ€

5.0

์ 

๊ฐ•์˜ ํ‰์ 

3

๊ฐœ

๊ฐ•์˜

์ƒ์‹œ ํ•™์ƒ ํ• ์ธ์ค‘

๊ฐ•์˜ ๊ธˆ์•ก์ด ๋ถ€๋‹ด๋˜๋Š” ํ•™์ƒ๋ถ„๋“ค์„ ์œ„ํ•ด์„œ ๋ณธ์ธ ํ•™๊ต ๋ฉ”์ผ ๊ณ„์ •์œผ๋กœ ์˜ˆ) @***.ac.kr , @***.edu

์ด๋ฉ”์ผ ๋ณด๋‚ด์ฃผ์‹œ๋ฉด ์ „ ๊ฐ•์˜ ํ• ์ธ ์ฟ ํฐ์„ ๋ณด๋‚ด ๋“œ๋ฆฝ๋‹ˆ๋‹ค.

๐Ÿ‘‰ jacobko@kakao.com


์•ˆ๋…•ํ•˜์„ธ์š”. ๐Ÿ˜€

๋‰ด์งˆ๋žœ๋“œ์—์„œ iOS ๊ฐœ๋ฐœ์„ ํ•˜๊ณ  ์žˆ๋Š” Jacob ์ž…๋‹ˆ๋‹ค.

SwiftUI ์„ ํ†ตํ•ด ๋ˆ„๊ตฌ๋‚˜ ์‰ฝ๊ฒŒ iOS APP ์„ ๋งŒ๋“ค์ˆ˜ ์žˆ๋„๋ก ๋‹ค์–‘ํ•œ ๊ฐ•์˜๋ฅผ ์ œ์ž‘์ค‘์— ์žˆ์Šต๋‹ˆ๋‹ค.

SwiftUI ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ๋‹ค์–‘ํ•œ iOS ๊ฐœ๋ฐœ ๊ด€๋ จ ์ž๋ฃŒ๋“ค์„ ์ €์˜ Jacob's DevLog ์—์„œ ๋งŒ๋‚˜์‹ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๐Ÿ‘‰  Jacob's DevLog ๋ฐ”๋กœ๊ฐ€๊ธฐ


Hello. ๐Ÿ˜€

I'm Jacob,living in New Zealand.

I'm currently working on creating various tutorials to make it easy for anyone to develop iOS apps through SwiftUI.

You can find not only SwiftUI but also various iOS development-related materials on my Jacob's DevLog.

๐Ÿ‘‰  Go to Jacob's DevLog directly

๋”๋ณด๊ธฐ

์ปค๋ฆฌํ˜๋Ÿผ

์ „์ฒด

47๊ฐœ โˆ™ (10์‹œ๊ฐ„ 41๋ถ„)

ํ•ด๋‹น ๊ฐ•์˜์—์„œ ์ œ๊ณต:

์ˆ˜์—…์ž๋ฃŒ
๊ฐ•์˜ ๊ฒŒ์‹œ์ผ: 
๋งˆ์ง€๋ง‰ ์—…๋ฐ์ดํŠธ์ผ: 

์ˆ˜๊ฐ•ํ‰

์•„์ง ์ถฉ๋ถ„ํ•œ ํ‰๊ฐ€๋ฅผ ๋ฐ›์ง€ ๋ชปํ•œ ๊ฐ•์˜์ž…๋‹ˆ๋‹ค.
๋ชจ๋‘์—๊ฒŒ ๋„์›€์ด ๋˜๋Š” ์ˆ˜๊ฐ•ํ‰์˜ ์ฃผ์ธ๊ณต์ด ๋˜์–ด์ฃผ์„ธ์š”!