Skip to content

teamterning/Terning-iOS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

1,013 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿ‘” terning ํ„ฐ๋‹ - ๋Œ€ํ•™์ƒ ์ธํ„ด, ๊ณต๊ณ  ๊ด€๋ฆฌ ์บ˜๋ฆฐ๋”

v1.8.0 (~25.11.25 ์„œ๋น„์Šค ์ข…๋ฃŒ)

๋‚ด ๊ณ„ํš์— ๋”ฑ ๋งž๋Š” ๋Œ€ํ•™์ƒ ์ธํ„ด์˜ ์‹œ์ž‘, ํ„ฐ๋‹

์ทจ์—…์„ ์œ„ํ•œ ํ•„์ˆ˜ ๊ด€๋ฌธ์ด์ž ๋Œ€ํ•™์ƒ์œผ๋กœ์„œ ์Œ“์„ ์ˆ˜ ์žˆ๋Š” ์ตœ๊ณ ์˜ ์ŠคํŽ™, ์ธํ„ด.

ํ•™์  ๊ด€๋ฆฌ๋ถ€ํ„ฐ ๋Œ€์™ธํ™œ๋™๊นŒ์ง€, ๋ฐ”์œ ์ผ์ƒ ์†์—์„œ ๋Œ€ํ•™์ƒ๋“ค์€ ์ธํ„ด์ด๋ผ๋Š” ์ŠคํŽ™์„ ์œ„ํ•ด ์ž์‹ ๋งŒ์˜ ๊ณ„ํš์„ ์ˆ˜๋ฆฝํ•ฉ๋‹ˆ๋‹ค.

ํฌ๋งํ•˜๋Š” ๊ทผ๋ฌด ๊ธฐ๊ฐ„๊ณผ ๊ทธ ๊ธฐ๊ฐ„ ๋™์•ˆ ์ผํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ์—…์€ ๋ฌด์—‡์ด ์žˆ๋Š”์ง€, ๋‚ด๊ฐ€ ์ง€์›ํ•  ๊ณต๊ณ ์˜ ์ง€์› ๋งˆ๊ฐ์ผ์€ ์–ธ์ œ์ธ์ง€.

ํŒ€ ํ„ฐ๋‹ํฌ์ธํŠธ๋Š” ๋Œ€ํ•™์ƒ์ด ์„ธ์šด ๊ณ„ํš์— ๋”ฑ ๋งž๋Š” ์ธํ„ด ๊ณต๊ณ ๋ฅผ ์ถ”์ฒœํ•ด์ฃผ๊ณ , ์ธํ„ด ์ง€์› ์ผ์ •์„ ํšจ์œจ์ ์œผ๋กœ ๊ด€๋ฆฌํ•˜๋Š” ๋ฐฉ์•ˆ์— ๋Œ€ํ•ด ๊ณ ๋ฏผํ•ฉ๋‹ˆ๋‹ค.

ํ„ฐ๋‹์—์„œ ๋‚˜๋งŒ์˜ ์ธํ„ด ๊ณ„ํš์„ ๋“ฑ๋กํ•˜๊ณ , ๋”ฑ ๋งž๋Š” ์ธํ„ด ๊ณต๊ณ ๋ฅผ ์ถ”์ฒœ ๋ฐ›์•„๋ณด์„ธ์š”!


About TerningPoint

์ง€๊ธˆ์ด ์šฐ๋ฆฌ์˜ ํ„ฐ๋‹ํฌ์ธํŠธ

์„œ๋น„์Šค ํ•œ ์ค„ ์†Œ๊ฐœ : ๋งž์ถคํ˜• ์ธํ„ด ์ถ”์ฒœ ๋ฐ ์ผ์ • ๊ด€๋ฆฌ๋ฅผ ํ†ตํ•ด, ์‚ฌํšŒ์ธ์„ ํ–ฅํ•œ ๋Œ€ํ•™์ƒ์˜ ๋งˆ์ง€๋ง‰ ํ„ฐ๋‹ํฌ์ธํŠธ๋ฅผ ํ•จ๊ป˜ํ•ฉ๋‹ˆ๋‹ค.


๐ŸŸข Problem

  1. ์ธํ„ด ์ผ์ •์„ ๊ด€๋ฆฌํ•˜๊ธฐ๊ฐ€ ์–ด๋ ค์›€
  2. ๋Œ€๊ธฐ์—…์€ ์ฑ„์šฉ๊ณต๊ณ ๋ฅผ ์ˆ˜์‹œ๋กœ ํ™ˆํŽ˜์ด์ง€์— ๋“ค์–ด๊ฐ€์•ผ ํ•ด์„œ ํ”ผ๋กœํ•จ.
  3. ์ธํ„ด ํ›„๊ธฐ์— ๋Œ€ํ•œ ๊ฐ๊ด€์ ์ธ ํŒ๋‹จ์˜ ์–ด๋ ค์›€ ์กด์žฌ.(๊ธ์ •์ ์ธ ๋ฆฌ๋ทฐ๊ฐ€ ๋Œ€๋ถ€๋ถ„)
  4. ์„œ๋ฅ˜์ œ์ถœ๊ธฐํ•œ, ๋ฉด์ ‘์ œ์ถœ ๊ธฐํ•œ์„ ํ•œ๋ฒˆ์— ํŒŒ์•…ํ•˜๊ธฐ ํž˜๋“ฆ.
  5. ํ™ˆํŽ˜์ด์ง€์— ๋“ค์–ด๊ฐ”์„ ๋•Œ ์ง๋ฌด๊ฐ€ ๋ฌด์Šจ ์ง๋ฌด์ธ์ง€, ๋‚˜๋ž‘ ์ž˜ ๋งž๋Š” ์ง๋ฌด์ธ์ง€ ์ง๊ด€์ ์œผ๋กœ ์•Œ๊ธฐ ์–ด๋ ค์›€ ํ™ˆํŽ˜์ด์ง€์—์„œ ๊ณต๊ณ ๋ฅผ ํ™•์ธํ•  ์‹œ, ์ง๋ฌด์˜ ์ •๋ณด ๊ฒฐํ•, ์ ํ•ฉ์„ฑ์„ ํŒŒ์•…ํ•˜๊ธฐ ์–ด๋ ต๋‹ค๋Š” ์ ์ด ์กด์žฌ.

๐ŸŸข Solution

  1. ๊ฐ„๋‹จํ•œ ์„ธ๊ฐ€์ง€ ๋ฌธ๋‹ต๋งŒ์œผ๋กœ ๋‚˜๋งŒ์˜ ๋Œ€ํ•™์ƒ ์ธํ„ด ๊ณ„ํš์„ ์ž…๋ ฅ -> ์ด์— ๋งž๋Š” ๊ณต๊ณ ๋ฅผ ์ถ”์ฒœ
  2. ๋‚ด ๊ณ„ํš์— ๋”ฑ ๋งž๋Š” ์ธํ„ด ๊ณต๊ณ ๋ฅผ ๋‚˜๋งŒ์˜ ์ปค์Šคํ…€ ์บ˜๋ฆฐ๋”๋กœ ์Šคํฌ๋žฉํ•˜๊ณ  ๊ด€๋ฆฌํ•ด๋ณด์„ธ์š”.
  3. ๋‚ด๊ฐ€ ๊ด€์‹ฌ ์žˆ๋Š” ๊ณต๊ณ  ์ค‘ ์˜ค๋Š˜ ๋งˆ๊ฐ๋˜๋Š” ๊ณต๊ณ ๋ฅผ ๋ฆฌ๋งˆ์ธ๋“œ ๋ฐ›์•„๋ณด์„ธ์š”.

๐Ÿง‘โ€๐Ÿ’ป Member

์ด๋ช…์ง„
(@thingineeer)
์ •๋ฏผ์ง€
(@wjdalswl)
๊น€๋ฏผ์„ฑ
(@mminny)
IMG_6676 2 IMG_6678 IMG_6677
ํ™ˆ ํ™”๋ฉด ์บ˜๋ฆฐ๋” ์†Œ์…œ ๋กœ๊ทธ์ธ ์Šคํฌ๋žฉ ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ ์˜จ๋ณด๋”ฉ ์†Œ์…œ ๋กœ๊ทธ์ธ ํƒ์ƒ‰ ๊ณต๊ณ  ์ƒ์„ธํ™”๋ฉด ๋งˆ์ดํŽ˜์ด์ง€ ํ™ˆ ํ•„ํ„ฐ๋ง

๐Ÿ“ธ ์‹œ์—ฐ ์˜์ƒ

๋ทฐ 1 2 3
์Šคํ”Œ๋ž˜์‹œ
๋กœ๊ทธ์ธ
์ž๋™๋กœ๊ทธ์ธ
ํšŒ์› ๊ฐ€์ž…
์˜จ๋ณด๋”ฉ
(ํ™ˆ)
์ •๋ ฌ
ํ•„ํ„ฐ๋ง ์žฌ์„ค์ •
(์บ˜๋ฆฐ๋”)
์›”๊ฐ„ ์บ˜๋ฆฐ๋”
์ฃผ๊ฐ„ ์บ˜๋ฆฐ๋”
(ํƒ์ƒ‰)
๊ณต๊ณ  ์ƒ์„ธ ํŽ˜์ด์ง€
๊ฒ€์ƒ‰
(๋งˆ์ดํŽ˜์ด์ง€)
ํ”„๋กœํ•„ ์ˆ˜์ •
๋กœ๊ทธ์•„์›ƒ
ํšŒ์›ํƒˆํ‡ด

image

๐Ÿ“Œ Issue Naming Rule

[Prefix] - ์ด์Šˆ๋‚ด์šฉ

ex) [Feat] - TerningPoint ํ™ˆ ํ™”๋ฉด ๊ตฌํ˜„

๐Ÿ“Œ PR Naming Rule

[Prefix] #์ด์Šˆ๋ฒˆํ˜ธ- ์ž‘์—…๋‚ด์šฉ

ex) [Feat] #1 - TerningPoint ํ™ˆ ํ™”๋ฉด ๊ตฌํ˜„

โญ๏ธ Commit Message Rule

[prefix] #์ด์Šˆ๋ฒˆํ˜ธ - ์ด์Šˆ ๋‚ด์šฉ

[Prefix]

[Add]: ๊ธฐ๋Šฅ๊ณผ ๋ฌด๊ด€ํ•œ ์ฝ”๋“œ ์ถ”๊ฐ€ (๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์ถ”๊ฐ€, ์œ ํ‹ธ๋ฆฌํ‹ฐ ํ•จ์ˆ˜ ์ถ”๊ฐ€ ๋“ฑ)
[Chore]: ๊ทธ ์ด์™ธ์˜ ์žก์ผ/ ๋ฒ„์ „ ์ฝ”๋“œ ์ˆ˜์ •, ํŒจํ‚ค์ง€ ๊ตฌ์กฐ ๋ณ€๊ฒฝ, ํŒŒ์ผ ์ด๋™, ํŒŒ์ผ์ด๋ฆ„ ๋ณ€๊ฒฝ
[Comment]: ํ•„์š”ํ•œ ์ฃผ์„ ์ถ”๊ฐ€ ๋ฐ ๋ณ€๊ฒฝ
[Del]: ์“ธ๋ชจ์—†๋Š” ์ฝ”๋“œ, ์ฃผ์„ ์‚ญ์ œ
[Design]: ๋ทฐ ๊ตฌํ˜„ (UI ๊ด€๋ จ ์ฝ”๋“œ ์ถ”๊ฐ€ ๋ฐ ์ˆ˜์ •)
[Docs]: README๋‚˜ WIKI ๋“ฑ์˜ ๋ฌธ์„œ ๊ฐœ์ •
[Feat]: ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ ๊ตฌํ˜„
[Fix]: ๋ฒ„๊ทธ, ์˜ค๋ฅ˜ ํ•ด๊ฒฐ, ์ฝ”๋“œ ์ˆ˜์ •
[Refactor]: ์ „๋ฉด ์ˆ˜์ •์ด ์žˆ์„ ๋•Œ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค
[Remove]: ํŒŒ์ผ ์‚ญ์ œ
[Setting]: ํ”„๋กœ์ ํŠธ ์„ธํŒ… ๋ฐ ์ „๋ฐ˜์  ๊ธฐ๋Šฅ
[Test]: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ

ex) [Feat] #5 - ์„œ๋ฒ„ ์—ฐ๊ฒฐ ๊ตฌํ˜„

๐Ÿ“‘ Code Convention

ํ„ฐ๋‹ ์ฝ”๋“œ ์ปจ๋ฒค์…˜

๐Ÿ“Œ Code Review Rule

์ฝ”๋“œ ๋ฆฌ๋ทฐ๋ฅผ ์ตœ๋Œ€ํ•œ ๋นจ๋ฆฌ ๋‹ฌ๊ณ  ๋ฐ˜์˜ํ•˜์ž!

๐Ÿ“Œ App Store Distribution Rule

[Setting] #issueNumber - VersionNumber ๋ฐฐํฌ

ex) [Setting] #821 - v1.0.0 ๋ฐฐํฌ

๐Ÿ“Œ Git Flow

  1. ์ด์Šˆ ์ƒ์„ฑ (์–ด๋–ค ์ž‘์—… ํ•  ๊ฒƒ ์ธ์ง€?)
  2. ๋ธŒ๋žœ์น˜ ์ƒ์„ฑ
  3. ๋ธŒ๋žœ์น˜ add, commit, push โ†’ PR ๊ณผ์ • ๊ฑฐ์น˜๊ธฐ
  4. ์ตœ์†Œ 1๋ช… "Approve" ์žˆ์–ด์•ผ merge (๋ฆฌ๋“œ ์™ธ ๊ฐ•์ œ ๋จธ์ง€ ๊ธˆ์ง€)
  5. ๋จธ์ง€ํ›„ ( ํ•ด๋‹น ๋ธŒ๋žœ์น˜ ๋ฐ”๋กœ ์ œ๊ฑฐ )
  6. pull ๋ฐ›์•„์„œ ๋‹ค์Œ ์ด์Šˆ ์ง„ํ–‰

๐Ÿ“Œ Git

์ถฉ๋Œ ์•ˆ๋‚˜๊ฒŒ ๊ฐ™์€ ํŒŒ์ผ ์ตœ๋Œ€ํ•œ ์ž‘์—…ํ•˜์ง€ ์•Š๊ธฐ

๐Ÿ“– Development Environment and Using Library

  • Development Environment



  • ๐Ÿ“š Library
๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์‚ฌ์šฉ ๋ชฉ์  Version Management Tool
Moya ์„œ๋ฒ„ ํ†ต์‹  15.0.3 SPM
SnapKit UI Layout 5.7.1 SPM
Then UI ์„ ์–ธ 3.0.0 SPM
Kingfisher ์ด๋ฏธ์ง€ ์ฒ˜๋ฆฌ 7.12.0 SPM
RxSwift ๋น„๋™๊ธฐ ์ฒ˜๋ฆฌ 6.7.1 SPM
FSCalendar ์บ˜๋ฆฐ๋” ๊ตฌํ˜„ 2.8.4 SPM
KakaoSDK ์นด์นด์˜ค ์†Œ์…œ ๋กœ๊ทธ์ธ ๊ตฌํ˜„ 2.22.4 SPM
Inject SwiftUI ์ฒ˜๋Ÿผ ๋ทฐ ๋””๋ฒ„๊น… 1.5.2 SPM
Lottie ์• ๋‹ˆ๋ฉ”์ด์…˜ ๊ตฌํ˜„ 4.5.0 SPM
Amplitude ๋ฐ์ดํ„ฐ ๋ถ„์„ 1.9.4 SPM

  • ๐Ÿงฑ framework
ํ”„๋ ˆ์ž„์›Œํฌ ์‚ฌ์šฉ ์ด์œ 
UIKit UI ๊ตฌํ˜„

๐Ÿ“‚ Foldering

โ””โ”€โ”€ ๐Ÿ“‚ Terning-iOS
    โ”œโ”€โ”€ ๐Ÿ“‚ Application
    โ”œโ”€โ”€ ๐Ÿ“‚ Resource
    โ”œโ”€โ”€ ๐Ÿ“‚ Data
    โ”œโ”€โ”€ ๐Ÿ“‚ Domain
    โ””โ”€โ”€ ๐Ÿ“‚ Presentation

About

๐ŸŽ ์ง€๊ธˆ์ด ์•„์š”์˜ ํ„ฐ๋‹ํฌ์ธํŠธ~ ๐ŸŽ SOPT 34๊ธฐ iOS

Topics

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors