Skip to content

๐Ÿ’ซ ๊ทผ๋ฐฉ์—์„œ ๊ธˆ๋ฐฉ ๋งŒ๋‚˜์š”, ๊ทผ๋ฐฉํ†ก ๐Ÿ’ซ

Notifications You must be signed in to change notification settings

boostcampwm-2022/iOS06-NearTalk

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

NearTalk


๊ทผ์ฒ˜์— ์žˆ๋Š” ์‚ฌ๋žŒ๋“ค๊ณผ ์‹ค์‹œ๊ฐ„ ์†Œํ†ตํ•  ์ˆ˜ ์žˆ๋Š” ๋ฉ”์‹ ์ € ์•ฑ "NeakTalk(๊ทผ๋ฐฉํ†ก)" ์ž…๋‹ˆ๋‹ค.

๊ฐœ๋ฐœ ๊ธฐ๊ฐ„: 2022.11.07 ~ 2022.12.16


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

๐Ÿ’ซ ๊ทผ๋ฐฉ์—์„œ ๊ธˆ๋ฐฉ ๋งŒ๋‚˜์š”, ๊ทผ๋ฐฉํ†ก ๐Ÿ’ซ

  • ์‹ค์‹œ๊ฐ„ ์œ„์น˜ ๊ธฐ๋ฐ˜์œผ๋กœ ๊ทผ์ฒ˜์— ์žˆ๋Š” ์˜คํ”ˆ ๊ทธ๋ฃน ์ฑ„ํŒ…๋ฐฉ์— ์ž…์žฅํ•˜๊ณ , ๋‹ค๋ฅธ ์‚ฌ๋žŒ๋“ค๊ณผ ์ฑ„ํŒ…์„ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • ์นœ๊ตฌ๋ฅผ ๋งบ์€ ํ›„, ๊ฑฐ๋ฆฌ์— ์ƒ๊ด€ ์—†์ด ๊ฐœ์ธ ์ฑ„ํŒ…๋ฐฉ์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.


ํŒ€์› ์†Œ๊ฐœ

S001 ๊ณ ๋ณ‘ํ•™ S009 ๊น€์˜์šฑ S013 ๊น€์ค€์˜ S025 ์‹ ๋™์€ S046 ์ž„์ฐฝ๋ฌต
@bengHak @yw22 @prestonk162 @dongeunshin @lymchgmk

๊ฐœ๋ฐœํ™˜๊ฒฝ

IDE

badge

iOS ์ตœ์†Œ ์ง€์›

badge


ํ”„๋ ˆ์ž„์›Œํฌ ๋ฐ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ

Package dependency manager

badge

Networking

badge

Asynchronous programming

badge badge badge badge

Autolayout

badge badge

Image caching

badge

Dependency injection

badge


ํ”„๋กœ์ ํŠธ ์ฃผ์š” ๊ธฐ๋Šฅ

๋ฉ”์ธ์ง€๋„ ํ™”๋ฉด

[๋ฉ”์ธ์ง€๋„] ๊ถŒํ•œ์š”์ฒญ [๋ฉ”์ธ์ง€๋„] ์ฑ„ํŒ…๋ฐฉ ํด๋Ÿฌ์Šคํ„ฐ๋ง [๋ฉ”์ธ์ง€๋„] ์ฝœ์•„์›ƒ๋ทฐ [๋ฉ”์ธ์ง€๋„] ๋ฐ”ํ…€์‹œํŠธ [๋ฉ”์ธ์ง€๋„] ์ž…์žฅ๊ฐ€๋Šฅ๊ฑฐ๋ฆฌ


๊ทธ๋ฃน ์ฑ„ํŒ…/ DM ์ฑ„ํŒ…

์ฑ„ํŒ…์ƒ์„ฑ ๋ฉ”์„ธ์ง€์ž‘์„ฑ ๋ฉ”์„ธ์ง€๋ฐœ์‹ 

  • ์ฑ„ํŒ…๋ฐฉ์„ ์ƒ์„ฑํ•˜๊ณ  ๋ฉ”์„ธ์ง€๋ฅผ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ฑ„ํŒ…์ž…์žฅ ๋ฉ”์„ธ์ง€์†ก์ˆ˜์‹  ์ฑ„ํŒ…๋ฐฉํƒˆํ‡ด

  • ์ง€๋„์—์„œ ์ž…์žฅํ•œ ์ฑ„ํŒ…๋ฐฉ์—์„œ ๊ทธ๋ฃน ์ฑ„ํŒ…์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.
  • ์•ˆ ์ฝ์€ ์‚ฌ๋žŒ ์ˆ˜๋ฅผ ๋ฉ”์„ธ์ง€๋งˆ๋‹ค ํ‘œ์‹œํ•ด ์ค๋‹ˆ๋‹ค.
  • ์šฐ ์ƒ๋‹จ ๋ฒ„ํŠผ์„ ํ†ตํ•ด ์ฑ„ํŒ…๋ฐฉ ๋‚˜๊ฐ€๊ธฐ๋ฅผ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ฑ„ํŒ…๋ฐฉ ๋ชฉ๋ก

์ฑ„ํŒ…๋ฐฉ๋ชฉ๋ก01 ์ฑ„ํŒ…๋ฐฉ๋ชฉ๋ก02 ์ฑ„ํŒ…๋ฐฉ๋ชฉ๋ก03

  • Group ์ฑ„ํŒ…๋ฐฉ๊ณผ DM ์ฑ„ํŒ…๋ฐฉ์„ ๋ถ„๋ฆฌํ–ˆ์Šต๋‹ˆ๋‹ค.
  • ํ˜„์žฌ์œ„์น˜๊ธฐ๋ฐ˜์œผ๋กœ ์ž…์žฅ ๊ฐ€๋Šฅํ•œ ์ฑ„ํŒ…๋ฐฉ์„ UI๋กœ ํ‘œ์‹œํ–ˆ์Šต๋‹ˆ๋‹ค.
  • ์‹ค์‹œ๊ฐ„์œผ๋กœ ์„œ๋ฒ„์™€ ๋™๊ธฐํ™”ํ•ด ์ƒˆ๋กœ์šด ๋ฉ”์„ธ์ง€๊ฐ€ ์˜ฌ๋•Œ๋งˆ๋‹ค UI๋ฅผ ์—…๋ฐ์ดํŠธํ•ฉ๋‹ˆ๋‹ค.

QR์ฝ”๋“œ๋ฅผ ํ†ตํ•œ ์นœ๊ตฌ ์ถ”๊ฐ€/์‚ญ์ œ ๋ฐ ์ฑ„ํŒ…

์นœ๊ตฌ๋ชฉ๋ก01 ์นœ๊ตฌ๋ชฉ๋ก02 ์นœ๊ตฌ๋ชฉ๋ก03 ์นœ๊ตฌ์ถ”๊ฐ€01

  • QR์ฝ”๋“œ๋ฅผ ํ†ตํ•˜์—ฌ ์นœ๊ตฌ์ถ”๊ฐ€์™€ ์ถ”๊ฐ€ํ•œ ์นœ๊ตฌ๋ฅผ ์‚ญ์ œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • QR์ฝ”๋“œ๋กœ ์ถ”๊ฐ€ํ•œ ์นœ๊ตฌ์™€ ๋Œ€ํ™”ํ• ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์• ํ”Œ ๊ณ„์ •์œผ๋กœ ํšŒ์› ๊ฐ€์ž…, ๋กœ๊ทธ์ธ, ํšŒ์› ํƒˆํ‡ด

แ„…แ…ฉแ„€แ…ณแ„‹แ…ตแ†ซแ„’แ…ชแ„†แ…งแ†ซ


ํ…์ŠคํŠธ์™€ ์ด๋ฏธ์ง€๋กœ ํ”„๋กœํ•„ ๋“ฑ๋ก ๋ฐ ํŽธ์ง‘

  • ํ”„๋กœํ•„ ์‚ฌ์ง„์€ ์„ค์ • ์•ฑ์—์„œ ์ ‘๊ทผ์„ ํ—ˆ์šฉํ•œ ์‚ฌ์ง„๋งŒ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

๋‹คํฌ ๋ชจ๋“œ ์ง€์›

์‹œ์Šคํ…œ ์„ค์ • (๋ผ์ดํŠธ) ์‹œ์Šคํ…œ ์„ค์ • (๋‹คํฌ) ๋‹คํฌ ๋ชจ๋“œ ๋ผ์ดํŠธ ๋ชจ๋“œ

์•„ํ‚คํ…์ณ & ๋””์ž์ธ ํŒจํ„ด

Data Flow

Clean Architecture

  • ํ”„๋ ˆ์  ํ…Œ์ด์…˜ ๋ ˆ์ด์–ด, ๋„๋ฉ”์ธ ๋ ˆ์ด์–ด, ๋ฐ์ดํ„ฐ ๋ ˆ์ด์–ด๋กœ ๋ถ„๋ฆฌ๋œ ์ฝ”๋“œ๋กœ ๊ฐ ๋ ˆ์ด์–ด์—์„œ ๊ฐœ๋ฐœํ•œ ๊ฒฐ๊ณผ๋ฌผ์„ ํ•ฉ์น  ๋•Œ ์ด์ ์ด ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ๋„์ž…ํ–ˆ์Šต๋‹ˆ๋‹ค.
  • ๋„๋ฉ”์ธ ๋ ˆ์ด์–ด๊ฐ€ UI์™€ ๋…๋ฆฝ์ ์ด๊ธฐ ๋•Œ๋ฌธ์— ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง์˜ ์œ ๋‹› ํ…Œ์ŠคํŠธ์— ์šฉ์ดํ•ฉ๋‹ˆ๋‹ค.
  • MVVM์—์„œ viewModel์ด ์ปค์ง€๋Š” ๊ฒƒ์„ use case์™€ repsoitory ์ฝ”๋“œ๋กœ ๋ถ„์‚ฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

MVVM - C

  • View์™€ ๋…๋ฆฝ์ ์œผ๋กœ ๊ฐœ๋ฐœํ•  ์ˆ˜ ์žˆ๋Š” viewModel์„ ํ™œ์šฉํ•ด์„œ ์œ ๋‹› ํ…Œ์ŠคํŠธํ•˜๊ธฐ์— ์šฉ์ดํ•œ MVVM ํŒจํ„ด์„ ๋„์ž…ํ–ˆ์Šต๋‹ˆ๋‹ค.
  • View์˜ ํ™”๋ฉด์ „ํ™˜ ๋กœ์ง์„ viewController์—์„œ ๋ถ„๋ฆฌํ•˜๋Š” ๊ฒƒ์œผ๋กœ ํ™”๋ฉด์ „ํ™˜์„ ์œ ์—ฐํ•˜๊ฒŒ ํ•  ์ˆ˜ ์žˆ๋Š” ์ฝ”๋””๋„ค์ดํ„ฐ ํŒจํ„ด์„ ๋„์ž…ํ–ˆ์Šต๋‹ˆ๋‹ค.

About

๐Ÿ’ซ ๊ทผ๋ฐฉ์—์„œ ๊ธˆ๋ฐฉ ๋งŒ๋‚˜์š”, ๊ทผ๋ฐฉํ†ก ๐Ÿ’ซ

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published