๋ ์ด์์
- ์ด์ ๋ทฐ์ ๋ํด์ ๋ฌ๋ผ์ง๋ ๊ฒ์ ๊ฑฐ์ ์๋ค. ๋ ์ด์์ ์ง๋ ๊ฒ์ ๊ฑฐ์ ๋์ผํ๊ณ , ๊ณ ๋ คํด์ผ ํ ๋ถ๋ถ์ Dynamicํ๊ฒ ๋ค์ด์ค๋ ๋ฐ์ดํฐ๋ฅผ ์ด๋ป๊ฒ ์ฒ๋ฆฌํ๊ณ ๊ด๋ฆฌํ ์ ์์์ง๋ฅผ ๊ณ ๋ฏผํ๋ ๊ฒ์ด ๋ ์ข์ ๊ฒ ๊ฐ๋ค.
- Realm, TableView ๊ฐฑ์ , TableView ๋ก๋
Realm ์ญ์ ์ ๋ฌธ์ ๋ฐ์
func tableView(_ tableView: UITableView, trailingSwipeActionsConfigurationForRowAt indexPath: IndexPath) -> UISwipeActionsConfiguration? {
let favorite = UIContextualAction(style: .normal, title: "์ญ์ ") { action, view, completion in
// - ํ๋กํผํฐ๋ก ๊ด๋ฆฌ
// - 1. ๋ฐ์ดํฐ์ ๋ํ ์ ํ์ฑ
// - 2. ๊ฐ๋
์ฑ
let task = self.tasks[indexPath.row]
// ์ญ์ ์ ๊ฐ์ ๋ฐ์ดํฐ์ ๋ํด ๋์์ ์ ๊ทผํ๋ค๋ณด๋ฉด ๋ฌธ์ ๊ฐ ๋ฐ์ํ ์ ์์
// - Record -> Image (๋ฌธ์ ๋ฐ์)
// - Image -> Record (์์ ๋ณ๊ฒฝ ์ ๋ฌธ์ ํด๊ฒฐ) => ๊ทผ๋ณธ์ ์ธ ํด๊ฒฐ์ฑ
์ ์๋.
self.removeImageFromDocument(fileName: "\(task).jpg")
try! self.realm.write {
self.realm.delete(task)
}
self.readDiary()
}
return UISwipeActionsConfiguration(actions: [favorite])
}
- Realm์ Table(๋ฐ์ดํฐ)์ ์๋์ผ๋ก ๋๊ธฐํํ๊ณ ์๋ค. ๊ทธ๋ ๊ธฐ ๋๋ฌธ์ View๋ฅผ ๊ฐฑ์ ํ๊ธฐ๋ง ํ๋๋ผ๋ ๋ฐ์ดํฐ๋ฅผ ๋ทฐ์ ์ ์์ ์ผ๋ก ๋ฐ์ํ ์ ์๋ค.
- ์ ๋ ฌ ๋๋ ํํฐ ๋ฑ์ ์ฌ์ฉํ์ ๋๋ ์๋กญ๊ฒ ๋ง๋ค์ด์ง ์ธ๋ฑ์ค, ๋ ์ฝ๋๋ก ๊ฐ์ ธ์ฌ ํ์๊ฐ ์๊ธฐ ๋๋ฌธ์ fetchRealm(custom function)์ผ๋ก ์๋กญ๊ฒ ๋ฐ์ดํฐ๋ฅผ ๋ก๋ํด ์ฌ ํ์๊ฐ ์๋ค.
๋ฐ์ดํฐ๋ฒ ์ด์ค ์ฝ๋์ ๋ํ ์ ๋ฆฌ
ํ์์ฑ์ด ๋๊ปด์ง๋ค๋ฉด ์ฝ๋๋ฅผ ๊ฐ์ ํด๋ณด์.
๋ฌธ์ ์ํฉ
- ๋ทฐ ์ปจํธ๋กค๋ฌ ์ฌ๊ธฐ์ ๊ธฐ์ ์ฝ๋๊ฐ ๋๋ฌด ์ฐ์ฌ๋์ด ์๋ค.
- ๋ทฐ ์ปจํธ๋กค๋ฌ๊ฐ ๋ ๋ง์์ง๋ ์๊ฐ ์ด๋ป๊ฒ ํด์ผํ ๊น
- ์๋ก์ด ์ปฌ๋ผ์ด ์ถ๊ฐ๋๋ค๊ฑฐ๋ ์ปฌ๋ผ์ ์ด๋ฆ์ด ๋ณ๊ฒฝ๋์ด์ผ ํ๋ค๋ฉด, ํ ์ด๋ธ๋ช ์ด ๋ณ๊ฒฝ๋์ด์ผ ํ๋ค๋ฉด ๋ชจ๋ ๋ทฐ ์ปจํธ๋กค๋ฌ์ ์ฝ๋๊ฐ ์์ ๋์ด์ผ ํ๋ค.
Repository Pattern
- Protocol๋ก ํ์ํ ๋ฉ์๋๋ฅผ ๋ชจ๋ ๋ง๋ค์ด์ค๋ค.
- ์์กด์ฑ ์ฃผ์
์ต์ ํ
https://github.com/apple/swift/blob/main/docs/OptimizationTips.rst
Swift Optimization Level
Release(Production Mode)์ผ ๋๋ ์ต์ ํ ํ์
- Onone
- O
- OSize
WMO(Whole Module Optimization)
์ ์ฒด ๋ชจ๋ ์ต์ ํ
- WMO๋ ์๋์ผ๋ก ์ ์ฉ๋์ด ์์
- WMO๋ฅผ ํด์ ํ๋ฉด private ํค์๋๊ฐ ๊ฒฐ๊ตญ ์๋ฏธ ์์ด์ง
'๐ฑ SeSAC' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[TIL] 221103 (4) | 2022.11.03 |
---|---|
[SeSAC] 220825 TIL (0) | 2022.08.29 |
[SeSAC] 220824 TIL (0) | 2022.08.29 |
[SeSAC] 220823 TIL (0) | 2022.08.29 |
[SeSAC] 220822 TIL (0) | 2022.08.29 |