Simple memo app with UIKit & SwiftUI
- ๋ฉ๋ชจ ๋ฆฌ์คํธ
- ๋ฉ๋ชจ ๋ฑ๋ก
- ๋ฉ๋ชจ ์ญ์
- ๋ฉ๋ชจ ์์
- ์คํ ๋ฆฌ์ง ์ ์ฅ
- ๋ฉ๋ชจ ๊ณต์
- ์ด๋ฏธ์ง ๋ฉ๋ชจ ๋ฑ๋ก
- ์์ธ๋ณด๊ธฐ์์ ์ด๋ฏธ์ง ์ค์์ดํผ ๊ตฌํ
- ๋ฉ๋ชจ ์ ๋ ฌ
-
๋ฐ์ดํฐ ๊ฐฑ์
- ViewController ๋ฉ์๋
viewWillAppear
- iOS13๋ถํฐ default๋ก ์ง์ํ๋ sheet ํํ์์๋ viewWillAppear๋ฅผ ์ฌ์ฉํ ์ ์์ Notification
(Observer pattern)
- ViewController ๋ฉ์๋
-
Storyboard์์ constraint๋ฅผ ์ฃผ์ง ์์ ๊ณณ์ด ์์ผ๋ฉด ๋นจ๊ฐ์ ๋ผ์ธ์ด ๋ฌ๋ค
-
Core Data
-
๋จ๋ง๊ธฐ ๋ด๋ถ์ ๋ฐ์ดํฐ๋ฅผ ๋ณด์กด, ์บ์ฑํ๋ ํ๋ ์์ํฌ
-
UI ๋ธ๋ฝ์ ์ผ์ผํค๋ ํ ์คํฌ๋ค์ ๋ฐฑ๊ทธ๋ผ์ด๋์์ ์คํํ๋๋ก ํ ์ ์์
-
๋ทฐ(ํ ์ด๋ธ๋ทฐ, ์ฝ๋ ์ ๋ทฐ๋ฑ)์ ๋ฐ์ดํฐ๊ฐ์ ์ฑํฌ๋ฅผ ๋ง์ถ๋ ๊ฒ์ ๋์์ ์ค
-
DB ๊ด๋ฆฌ๊ฐ ๋ฐ๋ก ํ์ ์์ด ๋ฐ์ดํฐ CRUD๋ฅผ ์ฝ๊ฒ ํด์ฃผ๊ณ ๋ฒ์ ๊ด๋ฆฌ์ ์ฉ์ด
-
Core Data Stack
- Core Data Model์ ์์ฑ ํ ์ด๋ฅผ ๊ด๋ฆฌํ ์ ์๋ ์ฌ๋ฌ ํด๋์ค๋ค์ด ์์ผ๋ฉฐ ์ด๋ฅผ Core Data Stack์ด๋ผ ์นญํ๋ค.
NSPersistentContainer
model, context, coordinator๋ฅผ ๋ชจ๋ ๊ฐ์ง ํ๋์ ํด๋์ค
-
-
Delegate
- ์์(Delegation)์ ํด๋์ค ๋๋ ๊ตฌ์กฐ์ฒด๊ฐ ์ฑ ์์ ์ผ๋ถ๋ฅผ ๋ค๋ฅธ ํ์ ์ ์ธ์คํด์ค์ ๋๊ฒจ์ฃผ๋๋ก ํ๋ ๋์์ธ ํจํด
- delegate ๊ตฌํ ๋ฐฉ๋ฒ
- storyboard
- extension์ ํตํ ํ๋กํ ์ฝ ํ์ฅ
-
Escaping Closure (Swift)
- ํจ์์ ์ธ์๋ก ์ ๋ฌ๋ closure ์ค ํจ์๊ฐ ๋ฆฌํด๋์ด ์ค์ฝํ๊ฐ ์ฌ๋ผ์ง์ง๋ง ์ค์ฝํ๋ฅผ escapingํ์ฌ ํจ์ ์ข
๋ฃ ํ์๋ ๋ฐ๊นฅ์ ๋ณ์์ ์ ์ฅ๋์ด ์คํ๋๋ ํจ์
์๋ฅผ ๋ค์ด ๋น๋๊ธฐ์ ์์ ์ฒ๋ฆฌ ํ ์๋ฃ๊ฐ ๋ ๋ ์คํ๋๋ ์๋ฃ ํธ๋ค๋ฌ๋ฅผ ์ธ์๋ก ๋ฐ์ ๋ ํ์ถ ํด๋ก์ ๋ฅผ ์ฌ์ฉํ๋ค. self
๋ฅผ ํ์ถ ํด๋ก์ ์์ ์ฐธ์กฐํ๋ ๊ฒฝ์ฐ self๋ฅผ ๋ช ์์ ์ผ๋ก ํ์ํ๊ฑฐ๋ ์บก์ณ ๋ฆฌ์คํธ์ ํฌํจ์์ผ์ผ ํ๋ค. ๋ํ ํ์ถ ํด๋ก์ ์ ๊ฒฝ์ฐ ๊ฐํ ์ฐธ์กฐ์ ์ํ ๋ฉ๋ชจ๋ฆฌ ๋ฆญ์ด ๋ฐ์ํ์ง ์๋๋ก weak reference๋ฅผ ์ฌ์ฉํ์ฌ ์บก์ณ ๋ฆฌ์คํธ์ ํฌํจ์์ผ์ผํ๋ค.
- ํจ์์ ์ธ์๋ก ์ ๋ฌ๋ closure ์ค ํจ์๊ฐ ๋ฆฌํด๋์ด ์ค์ฝํ๊ฐ ์ฌ๋ผ์ง์ง๋ง ์ค์ฝํ๋ฅผ escapingํ์ฌ ํจ์ ์ข
๋ฃ ํ์๋ ๋ฐ๊นฅ์ ๋ณ์์ ์ ์ฅ๋์ด ์คํ๋๋ ํจ์
-
๊ฐํ ์ฐธ์กฐ ์ฌ์ดํด (Swift)
-
2๊ฐ ์ด์์ ์ธ์คํด์ค ๊ฐ์ ๊ฐํ ์ฐธ์กฐ์ ์ํด ๋ณ์๋ฅผ nil๋ก ์ ์ธํ์ฌ๋ ARC๊ฐ 0์ผ๋ก ๋์ง ์์ ํ ๋น ํด์ ๊ฐ ๋์ง ์๊ณ ๋ฉ๋ชจ๋ฆฌ ๋์๊ฐ ๋ฐ์ํ๋ ํ์
-
ํด๊ฒฐ ๋ฐฉ๋ฒ
-
์ฝํ ์ฐธ์กฐ ์ฌ์ฉ
weak
ํค์๋๋ฅผ ์ ์ธ ์ ์ ์์น์ํจ ๋ณ์ ๋๋ ํ๋กํผํฐ์ ํ ๋น๋ ์ธ์คํด์ค๋ ์ฝํ ์ฐธ์กฐ๋ฅผ ํ๊ณ ์๊ธฐ ๋๋ฌธ์ ํด๋น ์ธ์คํด์ค๋ฅผ ๊ฐํ๊ฒ ์ฐธ์กฐํ๋ ๋ณ์๋ฅผ nil๋ก ์ ์ธํ์์ ๋ ARC๊ฐ ์ฐธ์กฐ๋ ์ธ์คํด์ค๋ฅผ ์ฒ๋ฆฌํ๋ ๊ฒ์ ์ค์ง ํ์ง ์๊ณ ํ ๋น ํด์ ๋ ์ ์๋๋ก ํ๋ค. -
๋ฏธ์์ ์ฐธ์กฐ ์ฌ์ฉ
weak reference์ ๋ค๋ฅด๊ฒ ์ฐธ์กฐํ๊ณ ์๋ ์ธ์คํด์ค์ ์๋ช ๋ณด๋ค ๊ฐ๊ฑฐ๋ ๊ธด ๊ฒฝ์ฐ์ ์ฌ์ฉ๋๋ค. ์ฝํ ์ฐธ์กฐ์ ๋ฌ๋ฆฌ ํญ์ ๊ฐ์ ์ฐธ์กฐํ๊ณ ์๋ ์ํ๋ก ์์๋ ๋ ์ฌ์ฉ๋๋ค.
-
-