/24HANE_ver2

24HANE_ver2

Primary LanguageSwift

๐Ÿ•“ 24HANE (42Checkin_v2-iOS)

แ„‰แ…ณแ„แ…ณแ„…แ…ตแ†ซแ„‰แ…ฃแ†บ 2022-10-02 แ„‹แ…ฉแ„’แ…ฎ 5 04 40

GitHub Stars GitHub Stars Current Version GitHub License

๐Ÿ’ฌ ํ”„๋กœ์ ํŠธ ์†Œ๊ฐœ

24 hours are not enough! 24์‹œ๊ฐ„์ด ๋ถ€์กฑํ•ด!

์•ˆ๋…•ํ•˜์„ธ์š”:) 42์„œ์šธ ๊ณต์‹ ์ฒดํฌ์ธ ์„œ๋น„์Šค 24HANE์ž…๋‹ˆ๋‹ค๐Ÿ’Œ

"24 Hane" (24 hours are not enough) ์€ Cadet ์—ฌ๋Ÿฌ๋ถ„์˜ ํด๋Ÿฌ์Šคํ„ฐ ์ถœ์ž… ์—ฌ๋ถ€์™€ ์ถœ์ž… ๋ˆ„์  ์‹œ๊ฐ„์„ ์ง์ ‘ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋„๋ก ๊ฐœ๋ฐœ๋œ ์„œ๋น„์Šค ์ž…๋‹ˆ๋‹ค.

์›ํ™œํ•˜๊ฒŒ ์„œ๋น„์Šค๋ฅผ ์ด์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ๊ธฐ๋ณธ ๊ธฐ๋Šฅ์„ ์†Œ๊ฐœํ•ฉ๋‹ˆ๋‹ค. ๐Ÿ‘‹

์นด๋Žƒ ์—ฌ๋Ÿฌ๋ถ„์ด ์ง์ ‘ ํด๋Ÿฌ์Šคํ„ฐ ์ถœ์ž… ๋ˆ„์  ์‹œ๊ฐ„์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋Š” 24 HANE ์„œ๋น„์Šค๋ฅผ ์†Œ๊ฐœํ•ฉ๋‹ˆ๋‹ค.
 - ํด๋Ÿฌ์Šคํ„ฐ ์ถœ์ž…ํƒœ๊น…์ด ์ž˜ ๋๋Š”์ง€ ๊ถ๊ธˆํ•œ๊ฐ€์š”?
 - ํด๋Ÿฌ์Šคํ„ฐ ์ถœ์ž… ๋ˆ„์  ์‹œ๊ฐ„์ด ๊ถ๊ธˆํ•œ๊ฐ€์š”?

24HANE ์„œ๋น„์Šค๋ฅผ ์ด์šฉํ•œ๋‹ค๋ฉด?
 - ํด๋Ÿฌ์Šคํ„ฐ ์ถœ์ž… ๋ˆ„์  ์‹œ๊ฐ„์„ ์˜ค๋Š˜ / ์›” ๊ธฐ์ค€์œผ๋กœ ํ•œ ๋ˆˆ์— ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
 - ์ง€์›๊ธˆ ์‚ฐ์ •์˜ ๊ธฐ์ค€์ด ๋˜๋Š” ์ธ์ • ์‹œ๊ฐ„์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
 - ๋ชฉํ‘œ ์‹œ๊ฐ„์„ ์„ค์ •ํ•˜์—ฌ ์˜ค๋Š˜์˜ ํ•™์Šต ์‹œ๊ฐ„ ์ง„์ฒ™๋„๋ฅผ ๊ทธ๋ž˜ํ”„๋กœ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
 - ์ตœ๊ทผ 6์ฃผ๊ฐ„ / 6๋‹ฌ๊ฐ„์˜ ํ•™์Šต ์‹œ๊ฐ„ ์ง„์ฒ™๋„๋ฅผ ๊ทธ๋ž˜ํ”„๋กœ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
 - ํด๋Ÿฌ์Šคํ„ฐ์—์„œ ํ•™์Šต์ค‘์ธ ์‹ค์‹œ๊ฐ„ ์ธ์›์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
 - ์ž์‹ ์˜ ์ƒ์„ธํ•œ ํด๋Ÿฌ์Šคํ„ฐ ์ถœ์ž… ๊ธฐ๋ก์„ ์ผ๋ณ„๋กœ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.(๋ˆ„๋ฝ๋œ ๊ธฐ๋ก๊นŒ์ง€!)
 - ์ž์ • ์ „ํ›„๋กœ ๋ณ„๋„ ํƒœ๊น… ์—†์ด ํ•™์Šต์—๋งŒ ๋ชฐ์ž… ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
 - ์นด๋“œ๋ฅผ ๋ถ„์‹คํ•œ ๊ฒฝ์šฐ ์นด๋“œ ์žฌ๋ฐœ๊ธ‰์„ ์•ฑ์—์„œ ์‹ ์ฒญํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์•ฑ์Šคํ† ์–ด ๋งํฌ

์›น์‚ฌ์ดํŠธ

๐Ÿ›  ๊ธฐ์ˆ  ์Šคํƒ

๋ถ„์•ผ ๊ธฐ์ˆ ์Šคํƒ ์„ ์ •์ด์œ 
iOS _icon Swift ์ด๋ฏธ ๊ฐ ํ”Œ๋žซํผ๋ณ„๋กœ ํŒ€์ด ๋‚˜๋‰˜์–ด ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ReactNative๋‚˜ Flutter๋“ฑ์˜ ํฌ๋กœ์Šคํ”Œ๋žซํผ ๋ณด๋‹ค
Swift๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜๋Š” ๋„ค์ดํ‹ฐ๋ธŒ๊ฐ€ ๊ฐœ๋ฐœ์ค‘ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋Š” ๋ฌธ์ œ ํ•ด๊ฒฐ์— ์œ ๋ฆฌํ•  ๊ฒƒ์œผ๋กœ ํŒ๋‹จ
_icon SwiftUI ํŒ€์›์ด ๋ชจ๋‘ ์•ฑ ๊ฐœ๋ฐœ์ด ์ฒ˜์Œ์ด์—ˆ๊ธฐ ๋•Œ๋ฌธ์— UIkit์˜ StoryBoard์™€ ํ˜‘์—…์„ ์œ„ํ•ด ์ต์ˆ™ํ•˜์ง€ ์•Š์€ ์ฝ”๋“œ๋ฒ ์ด์Šค์˜ ์ž‘์—…๋ฐฉ์‹์„ ๋ฐฐ์šฐ๊ธฐ ๋ณด๋‹ค๋Š”
์ƒ๋Œ€์ ์œผ๋กœ ๋Ÿฌ๋‹์ปค๋ธŒ๊ฐ€ ๋‚ฎ์€ SwiftUI๋ฅผ ์„ ํƒ
Architecture โœจ MVVM 24HANE.ver1 ๊ฐœ๋ฐœ ๋‹น์‹œ ๋šœ๋ ทํ•œ ํ˜•์‹์ด ์—†๋Š” ์†Œ์Šค์ฝ”๋“œ๋กœ ์ธํ•ด ์ฝ”๋“œ ์ˆ˜์ •์ด๋‚˜ ๋ฆฌํŒฉํ† ๋ง์„ ์‹œ๋„ํ•  ๋•Œ ์˜ˆ์ƒ๋น„์šฉ์ด ๊ต‰์žฅํžˆ ์ปธ๋˜ ์ด์œ ๋กœ
ver2 ์—์„œ ์ƒˆ๋กœ์šด ๋””์ž์ธ์— ๋งž์ถฐ ์ƒˆ๋กœ์šด ์•„ํ‚คํ…์ณ๋ฅผ ์ ์šฉํ•ด ๋ณด๊ณ ์ž ์„ ํƒ

๐Ÿ—“๏ธ ๊ฐœ๋ฐœ ๊ธฐ๊ฐ„

๋ฒ„์ „ ๊ธฐ๊ฐ„ ๋น„๊ณ 
Ver. 1 2022.10 - 2022.12 -
Ver. 2 2023.02 - 2023.03 ์ง€์›๊ธˆ ์ •์ฑ… ๋ณ€๊ฒฝ์— ๋”ฐ๋ฅธ ๋ฆฌ๋นŒ๋”ฉ, ๋””์ž์ธ ๊ฐœํŽธ
Ver. 3 2023.12 - 2023.01 ์ง€์›๊ธˆ ์ •์ฑ… ๋ณ€๊ฒฝ์— ๋”ฐ๋ฅธ ์—…๋ฐ์ดํŠธ, ๋ฆฌํŒฉํ† ๋ง

๐Ÿง‘โ€๐Ÿ’ป ๋ฉค๋ฒ„

๋ฉค๋ฒ„ ์—ญํ• 
๐Ÿ‘ฉ๐Ÿปโ€๐Ÿ’ป ์žฅํฌ์ฃผ (hejang) ๊ธฐํš, ๊ฐœ๋ฐœ
๐Ÿพ ํ™ฉ์œค๊ธฐ (yuhwang) ๊ฐœ๋ฐœ
๐ŸŽจ ์‹ ์ธํ˜ธ (inshin) ๊ธฐํš, ๋””์ž์ธ

๐Ÿ’ป ๊ธฐ๋Šฅ ์†Œ๊ฐœ

image image image
image image image
  • ๋กœ๊ทธ์ธ

    • Intra ๋กœ๊ทธ์ธ์„ ํ†ตํ•ด ์„œ๋น„์Šค ๋กœ๊ทธ์ธ์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.
  • ํ™ˆ

    • ๋กœ๊ทธ์ธ ํ›„ ๋ฐ”๋กœ ๋ณด์ด๋Š” ํŽ˜์ด์ง€๋กœ ๋ณธ์ธ์˜ ์ •๋ณด์™€ ์ถœ์ž… ๋ˆ„์  ์‹œ๊ฐ„(์˜ค๋Š˜, ์ด๋ฒˆ ๋‹ฌ) ํ˜„ํ™ฉ์„ ํ•œ ๋ˆˆ์— ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    • ๊ฐœ์ธ ์ •๋ณด
      • ๋ณธ์ธ์˜ ์ธํŠธ๋ผ ์‚ฌ์ง„๊ณผ ID๋ฅผ ํ†ตํ•ด ๋ณธ์ธ์˜ ์ •๋ณด๋ฅผ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.
    • ์ถœ์ž… ์—ฌ๋ถ€
      • ์ž…์‹ค ์‹œ ํ™ˆ ํ™”๋ฉด์˜ ์ „์ฒด ๋ฐฐ๊ฒฝ์ด ๋ฐ”๋€๋‹ˆ๋‹ค. ๋˜ํ•œ ์ธํŠธ๋ผID์˜ ์šฐ์ธก ์ƒ๋‹จ์— ์žˆ๋Š” ์ž‘์€ ์›์œผ๋กœ ์ถœ์ž… ์—ฌ๋ถ€๊ฐ€ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.
      • (์ดˆ๋ก์ƒ‰๐ŸŸข) ์ •์ƒ์ ์œผ๋กœ ์ž…์‹ค(check-in) ๋˜์—ˆ์Œ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.
    • ์ด์šฉ์‹œ๊ฐ„
      • ์˜ค๋Š˜์˜ ํด๋Ÿฌ์Šคํ„ฐ ๋ˆ„์  ์‹œ๊ฐ„์„ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค.
      • ๋‹จ, ๊ฐœ์ธ๋ณ„ ์‚ฌ์ง„ ์ถœ์ž… ์นด๋“œ์˜ โ€˜์ž…์‹คโ€™ ๊ณผ โ€˜ํ‡ด์‹คโ€™ ํƒœ๊น… ์ง์ด ์ผ์น˜ํ•˜๋Š” ๊ฒฝ์šฐ์—๋งŒ โ€˜์˜ค๋Š˜ ๋ˆ„์  ์‹œ๊ฐ„โ€™์œผ๋กœ ๊ธฐ๋ก๋ฉ๋‹ˆ๋‹ค.
      • ๋”ฐ๋ผ์„œ, ์ž…์‹ค(check-in) ์ค‘์ผ ๊ฒฝ์šฐ ์˜ค๋Š˜ ๋ˆ„์  ์‹œ๊ฐ„์€ ๊ธฐ๋ก๋˜์ง€ ์•Š์œผ๋ฉฐ ํ‡ด์‹ค(check-out) ํƒœ๊น…์ด ํ™•์ธ ๋œ ํ›„ ๋ˆ„์  ์‹œ๊ฐ„์ด ๊ธฐ๋ก๋ฉ๋‹ˆ๋‹ค.
      • ๋ชฉํ‘œ์‹œ๊ฐ„์„ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ธฐ๋ณธ ๊ฐ’์œผ๋กœ 4์‹œ๊ฐ„์ด ์ ์šฉ๋˜์–ด ์žˆ์œผ๋ฉฐ, ๋ชฉํ‘œ์‹œ๊ฐ„์„ 1์‹œ๊ฐ„ ๋‹จ์œ„๋กœ 24์‹œ๊ฐ„๊นŒ์ง€ ๋ณ€๊ฒฝํ•˜์‹ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    • ์›” ๋ˆ„์ ์‹œ๊ฐ„
      • ์ด๋ฒˆ ๋‹ฌ ํด๋Ÿฌ์Šคํ„ฐ ๋ˆ„์  ์‹œ๊ฐ„์„ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค.
      • ํŒจ๋„์„ ํŽผ์ณ์„œ ์ง€์›๊ธˆ ์‚ฐ์ • ๊ธฐ์ค€์ด ๋˜๋Š” '์ธ์ •์‹œ๊ฐ„'์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    • 6์ฃผ / 6๊ฐœ์›” ์ฒด๋ฅ˜์‹œ๊ฐ„ ๊ทธ๋ž˜ํ”„
      • 6์ฃผ, 6๊ฐœ์›” ์ฒด๋ฅ˜ ์‹œ๊ฐ„์„ ํ‘œ์‹œํ•˜๋Š” ๋ฐ”ํ˜• ๊ทธ๋ž˜ํ”„๊ฐ€ ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
      • ๊ฐ ๋ฐ”๋ฅผ ํƒญํ•˜๋ฉด ๋ˆ„์  ์‹œ๊ฐ„๊ณผ ์ผ ํ‰๊ท  ์‹œ๊ฐ„์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    • ์‹ค์‹œ๊ฐ„ ํ˜„ํ™ฉ
      • 42์„œ์šธ ํด๋Ÿฌ์Šคํ„ฐ์˜ ํ˜„์žฌ ์ฒด๋ฅ˜ ์ธ์›์ด ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.
  • ์บ˜๋ฆฐ๋”

      1. 8(24HANE ์„œ๋น„์Šค ์‹œ์ž‘ ์›”)๋ถ€ํ„ฐ ํ˜„์žฌ๊นŒ์ง€์˜ ๊ธฐ๋ก์„ ํ™•์ธ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    • ์›”๋ณ„๋กœ ์ด ๋ˆ„์ ์‹œ๊ฐ„์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    • ์ด ๋ˆ„์ ์‹œ๊ฐ„ ํŒจ๋„์„ ํƒญํ•˜๋ฉด ํ•ด๋‹น ์›”์˜ ์ธ์ •์‹œ๊ฐ„์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    • ์ผ๋ณ„ ์ง„์ฒ™๋„๋ฅผ ์ƒ‰์ƒ์„ ํ†ตํ•ด ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. (4์‹œ๊ฐ„ ๋‹จ์œ„)
    • Pagination๊ณผ ํƒ€์ดํ‹€์„ ํƒญํ•ด์„œ ์›”์„ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    • ์ผ๋ณ„๋กœ ํƒœ๊น…๊ธฐ๋ก์„ ํ™•์ผ ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ๋ˆ„๋ฝ๋œ ๊ธฐ๋ก๋„ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.
  • ๋”๋ณด๊ธฐ

    • ์•ฑ์„ ํ†ตํ•ด ์นด๋“œ ์žฌ๋ฐœ๊ธ‰ ์‹ ์ฒญ์„ ์ง„ํ–‰ํ•˜์‹ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    • ์ง€์›๊ธˆ ์ง€์นจ ์•ˆ๋‚ดํŽ˜์ด์ง€(๋งํฌ)
    • ์ถœ์ž…๊ธฐ๋ก ๋ฌธ์˜(๋งํฌ)
    • ์ด์šฉ ๊ฐ€์ด๋“œ(๋งํฌ)
    • ์•ฑ ํ”ผ๋“œ๋ฐฑ(๋งํฌ)
    • ๋กœ๊ทธ์•„์›ƒ