Skip to content

nbcamp-archive/advanced-todo-ios

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

42 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Sonamu

  • So(๊ทธ๋ž˜์„œ), ๋‚˜ ๋ฌด์—‡์„ ํ•ด์•ผํ•˜์ง€? ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ Sonamu๋Š” ์ŠคํŒŒ๋ฅดํƒ€์ฝ”๋”ฉํด๋Ÿฝ ๋‚ด์ผ๋ฐฐ์›€์บ ํ”„์˜ ์•ฑ๊ฐœ๋ฐœ ์ˆ™๋ จ ๊ณผ์ œ์ž…๋‹ˆ๋‹ค.
  • ํ•™์Šตํ•œ ๋‚ด์šฉ์„ ์ ์šฉ์‹œํ‚ค๊ณ  ์ถ”๊ฐ€์ ์œผ๋กœ Apple์—์„œ ์ œ๊ณตํ•˜๋Š” ์—ฌ๋Ÿฌ ๊ธฐ๋ณธ ๊ธฐ๋Šฅ์„ ์ ์šฉํ•˜๊ณ  ์ˆ™์ง€ํ•˜๋Š” ๊ฒƒ์ด ๋ชฉํ‘œ์ž…๋‹ˆ๋‹ค.

๊ตฌํ˜„

  • Coordinator + MVVM Pattern ํ•™์Šต ๋ฐ ์ ์šฉ
  • UserDefaults๋ฅผ ์‚ฌ์šฉํ•ด์„œ ๋ฐ์ดํ„ฐ ์ผ๊ด€์„ฑ ์œ ์ง€
  • Lazy Initializationํ˜•ํƒœ๋กœ UI ์ปดํฌ๋„ŒํŠธ ์ ์šฉ
  • UITableView Section / Header ํ™œ์šฉ
  • URLSession์„ ํ™œ์šฉํ•œ ์ด๋ฏธ์ง€ ๋ฐ์ดํ„ฐ UIImageView ์‚ฌ์šฉ
  • UISwipeActionsConfiguration์œผ๋กœ LeadingSwipeAction ์ ์šฉ

Application Layer

ApplicationLayer

About Coordinator Pattern

  • ๊ธฐ์กด ํ™”๋ฉด ์ „ํ™˜์€ ์ด์ „ UIViewController๊ฐ€ ๋‹ค์ŒUIViewController๊ฐ€ ๋ฌด์—‡์ธ์ง€ ์•Œ๊ณ  ์žˆ์–ด์•ผ ํ•˜๋Š” ๊ตฌ์กฐ์ด๋‹ค.
  • UIViewController์˜ ๊ฒฐํ•ฉ๋„๋ฅผ ์ฆ๊ฐ€์‹œํ‚ฌ ์ˆ˜ ๋ฐ–์— ์—†๋Š” ๊ตฌ์กฐ์ด๋‹ค.

์‹ค์ œ๋กœ Instruments์˜ Leaks๋ฅผ ํ†ตํ•ด Persistant ์ˆ˜์น˜๊ฐ€ ๊ฐ€๋” ๋ˆ„์ ๋˜๋Š” ํ˜„์ƒ์„ ๋ชฉ๊ฒฉํ•  ์ˆ˜ ์žˆ๋‹ค.

  • ์‹ฌํ•œ ์ปคํ”Œ๋ง ํ˜„์ƒ์€ Memory Leak ํ˜„์ƒ์ด ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ทœ๋ชจ๊ฐ€ ์ปค์งˆ์ˆ˜๋ก ํ…Œ์ŠคํŠธ๋„ ํž˜๋“ค์–ด์ง„๋‹ค.
  • ์ฝ”๋””๋„ค์ดํ„ฐ ํŒจํ„ด์€ ์ด๋Ÿฌํ•œ ๋ฌธ์ œ๋ฅผ ๋ฐฉ์ง€ํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ๋ชจ๋“  UIViewController๋Š” Coordinator์ธ์Šคํ„ด์Šค๋งŒ ๋ณด์œ ํ•œ๋‹ค.
  • ๋ชจ๋“  UIViewController๋Š” ์ž์‹ ์„ ์ œ์™ธํ•˜๊ณ  ๋‹ค๋ฅธ UIViewController์ธ์Šคํ„ด์Šค๋ฅผ ๋ณด์œ ํ•˜์ง€ ์•Š๋Š”๋‹ค.
  • ํ™”๋ฉด ์ „ํ™˜๊ณผ ๊ด€๋ จ๋œ ๊ธฐ๋Šฅ์€ ๋ฌด์กฐ๊ฑด Coordinator์—๊ฒŒ ์š”์ฒญํ•˜๊ณ  ๊ฒฐ๊ณผ๋ฅผ UIViewController์—๊ฒŒ ์ „๋‹ฌํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ๋™์ž‘ํ•˜๊ฒŒ ํ•œ๋‹ค.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages