์ƒ์„ธ ์ปจํ…์ธ 

๋ณธ๋ฌธ ์ œ๋ชฉ

[ํŒ€ํ”„๋กœ์ ํŠธ 8์ผ์ฐจ] ์ตœ์ข… ๋ฐœํ‘œ ๋ฐ KPT ํšŒ๊ณ 

๋ณธ๋ฌธ

๐ŸŽฌ ํ”„๋กœ์ ํŠธ ์ด๋ฆ„: 4์กฐ ์˜ํ™” ์˜ˆ๋งค ์•ฑ

ํ”„๋กœ์ ํŠธ ์†Œ๊ฐœ

ํ”„๋กœ์ ํŠธ ์ผ์ • : 2024.07.23 - 07.28(6์ผ๊ฐ„) 

์ด๋ฒˆ ํ”„๋กœ์ ํŠธ๋Š” ๋ฐ์ดํ„ฐ CRUD ๋ฐ ์™ธ๋ถ€ API ์š”์ฒญ์„ ์ ์šฉํ•ด๋ณด๋Š” ๊ฒฝํ—˜์„ ๋ชฉํ‘œ๋กœ ํ•ฉ๋‹ˆ๋‹ค.

TMDB API๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์˜ํ™” ๋ฐ์ดํ„ฐ๋ฅผ ํ˜ธ์ถœํ•˜๊ณ  ์ด๋ฅผ ๊ด€๋ฆฌํ•˜๋ฉฐ, ์‚ฌ์šฉ์ž๊ฐ€ ์˜ํ™”๋ฅผ ๊ฒ€์ƒ‰ํ•˜๊ณ  ์˜ˆ๋งคํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

 

 

์‹œ์—ฐ ์˜์ƒ

https://github.com/dkswlgus0314/NBC_iOS_4Team.git

 

 

 

์—ญํ•  ๋ถ„๋‹ด

๊น€๊ด‘ํ˜„: ๋ฉ”์ธ ํ™”๋ฉด, ํ•˜๋‹จ ํƒญ๋ฐ”

์•ˆ์ง€ํ˜„: ์˜ํ™” ์ƒ์„ธํŽ˜์ด์ง€, ์˜ˆ๋งคํ•˜๊ธฐ ๋ชจ๋‹ฌ ํ™”๋ฉด, NetworkManager

์ด์ฃผํฌ: ์˜ˆ๋งคํ•˜๊ธฐ ๋‚ด์—ญ ํ™”๋ฉด, ์ฆ๊ฒจ์ฐพ๊ธฐ ๋‚ด์—ญ ํ™”๋ฉด

์ด์ง„๊ทœ: ๋กœ๊ทธ์ธ ํ™”๋ฉด, ํšŒ์›๊ฐ€์ž… ํ™”๋ฉด

์ ์Šนํ˜„: ๋งˆ์ดํŽ˜์ด์ง€ ํ™”๋ฉด, ๊ฒ€์ƒ‰ํ™”๋ฉด

 

 

์‚ฌ์šฉ ๊ธฐ์ˆ 

ํ˜‘์—…ํˆด: GitHub, Figma

์–ธ์–ด: Swift

UI ํ”„๋ ˆ์ž„์›Œํฌ: UIKit, SnapKit

๋ฐ์ดํ„ฐ ์ €์žฅ์†Œ: Core Data

๋„คํŠธ์›Œํ‚น: URLSession

์˜ํ™” ๋ฐ์ดํ„ฐ API: TMDB API

์•„ํ‚คํ…์ฒ˜ ํŒจํ„ด: MVC ํŒจํ„ด

 

 

๊ธฐ๋Šฅ ๋ชฉ๋ก

์‚ฌ์šฉ์ž ์ธ์ฆ: ๋กœ๊ทธ์ธ ๋ฐ ํšŒ์›๊ฐ€์ž… ๊ธฐ๋Šฅ

์˜ํ™” ๊ฒ€์ƒ‰: TMDB API๋ฅผ ์ด์šฉํ•œ ์˜ํ™” ๊ฒ€์ƒ‰ ๊ธฐ๋Šฅ

์˜ํ™” ์ƒ์„ธ ์ •๋ณด: ์„ ํƒํ•œ ์˜ํ™”์˜ ์ƒ์„ธ ์ •๋ณด ํ‘œ์‹œ

์˜ํ™” ์˜ˆ๋งค: ์˜ํ™” ์˜ˆ๋งค ๊ธฐ๋Šฅ ๋ฐ ์˜ˆ๋งค ๋‚ด์—ญ ๊ด€๋ฆฌ

์ฆ๊ฒจ์ฐพ๊ธฐ: ์‚ฌ์šฉ์ž๊ฐ€ ์ฆ๊ฒจ์ฐพ๊ธฐํ•œ ์˜ํ™” ๋ชฉ๋ก ๊ด€๋ฆฌ

๋งˆ์ดํŽ˜์ด์ง€: ์‚ฌ์šฉ์ž ์ •๋ณด ๊ด€๋ฆฌ ๋ฐ ์„ค์ •

 

 


 

 


Keep

- ํŒ€์›๋“ค๊ฐ„์˜ ์†Œํ†ตํ•˜๋Š” ๋ถ„์œ„๊ธฐ๋ฅผ ์กฐ์„ฑํ•˜๋ ค ํ–ˆ๋˜ ์  

- ๊นƒ ์ด์Šˆ/ ๊ธฐ๋Šฅ ๋ช…์„ธ๋ฅผ ํ†ตํ•œ ์ผ๊ฐ ๋ฐฐ๋ถ„ ๋ฐ ์ดˆ๊ธฐ ํ˜‘์—… ์ž‘์—… ์‹œ๋„

- ๋ฌธ์ œ ๋ฐœ์ƒ ์‹œ ๋น ๋ฅธ ์†Œํ†ต 

- ๋ฌธ์ œ ๋ฐœ์ƒ ์‹œ ํ˜ผ์ž ๊ณ ๋ฏผํ•˜๋Š” ์‹œ๊ฐ„์„ ๊ฐ–๋˜ ๋„ˆ๋ฌด ์˜ค๋ž˜ ๊ณ ๋ฏผํ•˜์ง€ ์•Š๊ณ  ํŠœํ„ฐ๋‹˜์„ ์ฐพ์•„๊ฐ€ ๋ฌธ์ œ ํ•ด๊ฒฐ

- 1์ผ 1์ž๋ž‘์œผ๋กœ ์‚ฌ๊ธฐ ๋ถ๋‹์›€ / ์–ด๋ ค์šด ๊ธฐ๋Šฅ ๊ตฌํ˜„์‹œ ๊ณต์œ ํ•˜๊ณ  ํŒ€์˜ ์‚ฌ๊ธฐ๋ฅผ ์˜ฌ๋ฆผ

- 1์ผ 3ํด๋ก ์—์„œ 1์ผ 1ํด๋ก ์œผ๋กœ ํšŸ์ˆ˜ ์ค„์ž„ 

- cmd + S ๋ˆ„๋ฅด๊ณ  ์ปค๋ฐ‹

- ์ปค๋ฐ‹ํ•˜๊ณ  ์ด์ „์œผ๋กœ ๋Œ์•„๊ฐ€๊ธฐ ๊ธฐ๋Šฅ ๋ฐฐ์›€

- ํŒ€์›๋“ค๊ฐ„์˜ ์†Œํ†ต๋ฐฉ๋ฒ•์„ ๋ฐฐ์šด ๊ฒƒ ๊ฐ™๋‹ค. 

- ๋งˆ๊ฐ ์ œ์ถœ๊ธฐํ•œ ๋งˆ์ถ˜ ๊ฒƒ 

 

 

 


Problem

์ง€๋‚œ KPT ํšŒ๊ณ  ๋‚ด์šฉ

- ํŒ€์›๋งˆ๋‹ค ์ตœ์‹ ํ™”๊ฐ€ ๋‹ค๋ฅธ ์ƒํƒœ๋กœ ์ธํ•œ ๊นƒ ์ถฉ๋Œ ๋ฐœ์ƒ 

- ๋ฐ์ดํ„ฐ ๊ตฌ์กฐ๋ฅผ UI์ž‘์—…์ด ๋๋‚œ ํ”„๋กœ์ ํŠธ ํ›„๋ฐ˜์— ์„ค๊ณ„ํ•ด ์ž‘์—…์ด ๊ผฌ์ž„

- ์•ฑ ๋ผ์ดํ”„ ์‚ฌ์ดํด์„ ๊ณ ๋ คํ•˜์ง€ ์•Š๊ณ  ๋‹ด๋‹น ๋ทฐ์˜ ๊ธฐ๋Šฅ๊ณผ UI๋ฅผ ๋ถ„๋ฐฐํ•จ

- UI๋ฅผ ๋จผ์ € ์ž‘์—…ํ•˜๊ณ  ๋ฐ์ดํ„ฐ ์„ค๊ณ„๋ฅผ ํ–ˆ๋˜ ์ 

- ์ดˆ๋ฐ˜์— ํŒŒ์ผํŠธ๋ฆฌ๋ฅผ ์ƒ์„ธํ•˜๊ฒŒ ์ž‘์„ฑํ–ˆ์–ด์•ผํ•œ ๊ฒƒ 

- ๋ทฐ์™€ ๋ทฐ์˜ ์—ฐ๊ฒฐ๊ด€๊ณ„ ์ดํ•ด๋„์™€ ๋ฐ์ดํ„ฐ ์ „๋‹ฌ ๊ณผ์ •์˜ ์ดํ•ด ๋ถ€์กฑ

- PR ๋ฆฌ๋ทฐ ๋‹ฌ๊ณ  ์‹ถ์—ˆ๋Š”๋ฐ ๋งˆ์Œ์ด ๊ธ‰ํ•ด์„œ ์ œ๋Œ€๋กœ ์•ˆ๋œ ์•„์‰ฌ์šด ์  -> ์ž์ฃผ ์‚ฌ์šฉํ•˜๋Š” PR ๋ฉ˜ํŠธ ๋”ฐ๋กœ ์ž‘์„ฑ ์™„๋ฃŒ.

 

 

 


Try

์ง€๋‚œ KPTํšŒ๊ณ 

 

- ์ตœ์†Œ ๊ธฐ๋Šฅ ๊ตฌํ˜„์„ ๋ชฉํ‘œ๋กœ ์™„๋ฃŒ๋˜๋ฉด ์ถ”๊ฐ€ํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ์ง„ํ–‰ 

- ํŠœํ„ฐ๋‹˜๊ป˜ ๋ฐฐ์šด URLSession ์‚ฌ์šฉ ์‹ฑ๊ธ€ํ†ค ํŒจํ„ด ์‚ฌ์šฉ ๋Œ€์‹  ํ”„๋กœํ† ์ฝœ ์ ์šฉ์„ ํ†ตํ•œ ์ฃผ์ž…์‹ ๋ฐฉ๋ฒ• ์‚ฌ์šฉ ํ•ด๋ณผ ๊ฒƒ

 

 


์ง€๋‚œ ํŒ€ํ”„๋กœ์ ํŠธ KPT์™€ ๋น„๊ตํ•ด์„œ ๋ณด๋‹ˆ ๋ฐ˜์˜์ด ๋œ ๋ถ€๋ถ„๋„ ์žˆ์—ˆ๊ณ 

๋ฐ˜์˜ํ•˜๋ ค๊ณ  ์‹œ๋„ํ•˜์˜€์œผ๋‚˜ ์ œ๋Œ€๋กœ ๋˜์ง€์•Š์€ ๋ถ€๋ถ„๋“ค๋„ ์žˆ์—ˆ๋‹ค. 

๊ทธ๋ž˜์„œ ์ด๋ฒˆ์—๋„ ๋˜ ์ž˜ ๋˜์ง€ ์•Š์•˜๋˜ PR ๋ฆฌ๋ทฐ๋‹ฌ๊ธฐ๋Š” ํ•ญ์ƒ ์–ด๋–ค ๊ธ€์„ ์ ์„์ง€

๊ณ ๋ฏผํ•˜๋Š” ์‹œ๊ฐ„์ด ๋งŽ์•„์ ธ์„œ ๊ทธ๋ƒฅ ์Šน์ธํ•ด๋ฒ„๋ฆฌ๋Š” ๊ฒฝ์šฐ๋„ ์ข…์ข… ์žˆ์—ˆ๋‹ค.  

 

๊ทธ๋ž˜์„œ ํ•ด๊ฒฐ์ฑ…์€ ์ž์ฃผ ์‚ฌ์šฉํ•˜๋Š” ๊ฐ„๋‹จํ•œ ๋ฆฌ๋ทฐ๋“ค์˜ ๋ฉ˜ํŠธ๋“ค์„ ์ฐพ์•„์„œ ์ฐพ์•„์„œ ์“ฐ๋„๋ก ํ•ด์•ผ๊ฒ ๋‹ค.  

 

 

๊ทธ๋ฆฌ๊ณ  ์ด๋ฒˆ ํŒ€ํ”„๋กœ์ ํŠธ๋Š” ๋งค์šฐ ์ธ์ƒ ๊นŠ์—ˆ๋˜ ํ•œ์ฃผ์˜€๋˜ ๊ฒƒ ๊ฐ™๋‹ค. 

์ฒ˜์Œ ์ฑŒ๋ฆฐ์ง€๋ฐ˜์ด ์—†์ด ์šฐ๋ฆฌ๊ฐ€ ์ž˜ ํ•ด๋‚ผ ์ˆ˜ ์žˆ์„๊นŒ๋ผ๋Š” ๊ณ ๋ฏผ๊ณผ ํ•จ๊ป˜

์–ด๋–ป๊ฒŒ ํ•˜๋ฉด  ์ž˜ ํ•ด๋‚ผ ์ˆ˜ ์žˆ์„์ง€์— ๋Œ€ํ•œ ๊ณ ๋ฏผ์„ ๋งŽ์ด ํ•ด์™”๋˜ ๊ฒƒ ๊ฐ™๋‹ค. 

 

๋‹คํ–‰ํžˆ๋„ ๊ฒฐ๊ณผ์ ์œผ๋กœ ํŒ€์›๋“ค๊ฐ„์˜ ๋ถ„์œ„๊ธฐ๋„ ์ข‹์•˜๊ณ 

์šฐ๋ฆฌ๊ฐ€ ํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ๋“ค์„ ์ฐพ์•„์„œ ๋‚ด๊ฐ€ ํ•ด๋ณด๊ณ  ์‹ถ์—ˆ๋˜ ๋ถ€๋ถ„๋“ค์„

์ตœ๋Œ€ํ•œ ๋งŽ์ด ๋‹ค๋ฃฐ ์ˆ˜ ์žˆ์—ˆ๋˜ ๊ธฐํšŒ๊ฐ€ ๋œ ๊ฒƒ ๊ฐ™์•„ ์„ฑ์ทจ๊ฐ์ด ๋†’์•˜๋˜ ํ”„๋กœ์ ํŠธ์˜€๋‹ค. 

 

 

๊ด€๋ จ๊ธ€ ๋”๋ณด๊ธฐ