Skip to content

μΆœμ‹œμ™„λ£ŒπŸ’« iOS μ˜ˆλΉ„ λΆ€λΆ€ λ¬Έλ‹΅ μ•±

Notifications You must be signed in to change notification settings

Hayun218/MacC-Team16-ABloom

Β 
Β 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

MERY (23.09. ~ )

μ˜ˆλΉ„ μ‹ ν˜Ό λΆ€λΆ€λ₯Ό μœ„ν•œ β€˜μΈμ›β€™

μ˜ˆλΉ„ μ‹ ν˜Ό λΆ€λΆ€λ₯Ό μœ„ν•œ λ¬Έλ‹΅ μ–΄ν”Œλ¦¬μΌ€μ΄μ…˜μœΌλ‘œ, β€˜μΈμ›β€™κ³Ό λΉ„κ΅ν•˜μ—¬ μ§ˆλ¬Έμ„ μ„ νƒν•˜μ—¬ μ§„ν–‰ν•˜κ³  ν˜„μ‹€μ„ λ°˜μ˜ν•œ 질문으둜 κ΅¬μ„±λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€. Apple Developer Academy @Postech λ§ˆμ§€λ§‰ ν”„λ‘œμ νŠΈλ‘œ μ‹œμž‘ν•˜μ—¬ ꡐ윑 수료 이후에도 μ§„ν–‰λ˜κ³  있으며, 2λͺ…μ˜ 기획자 3λͺ…μ˜ iOS 개발자둜 μ‹œμž‘ν•œ ν›„ ν˜„μž¬ λ””μžμ΄λ„ˆ 1λͺ…, AOS 개발자 2λͺ…을 μΆ”κ°€ μ˜μž…ν•˜μ˜€μŠ΅λ‹ˆλ‹€. ν˜„μž¬ μŠ€ν”„λ¦°νŠΈ 5κΉŒμ§€ μ§„ν–‰λ˜μ—ˆμœΌλ©°, iOSλŠ” λ°°ν¬λ˜μ–΄ κ°œμ„ μ€‘μ΄κ³  AOS도 배포 λ˜μ—ˆμŠ΅λ‹ˆλ‹€.

MERY μ•±μŠ€ν† μ–΄

이전 μ˜¨λ³΄λ”©λ·°

πŸ‘©πŸ»β€πŸ’»λ‚΄κ°€ κΈ°μ—¬ν•œ λΆ€λΆ„

β€˜μœ μ €β€™ 즉, μ‚¬μš©μžλ₯Ό μœ„ν•œ μ–΄ν”Œλ¦¬μΌ€μ΄μ…˜ μ œμž‘μ΄λΌλŠ” λͺ©ν‘œλ₯Ό 가지고 아이디어 μ„ μ •λΆ€ν„° 검증 및 λ°œμ „ν•˜μ—¬ κ°œλ°œκΉŒμ§€ μ§„ν–‰ν•˜μ˜€μŠ΅λ‹ˆλ‹€.

아이디어 μ„ μ • 및 검증

  • 고슀트 ν”„λ‘œν† μ½œ, νŒ¨μŠ€νŠΈνŒ”λ‘œμ›Œ, νŠΈλžœλ“œ, κΈ°μ‘΄ 아이디어 피봇 λ“± λ‹€μ–‘ν•œ μ „λž΅μ„ ν™œμš©ν•œ 아이디어 λ„μΆœ
    • 각 아이디어 별 μ‹€μ œ 문제 ν˜Ήμ€ 기회 정리
  • λžœλ”© νŽ˜μ΄μ§€ 및 사전 μ‹ μ²­ νŽ˜μ΄μ§€λ₯Ό λ°°ν¬ν•˜μ—¬ μ‚¬μš©μžμ˜ μ˜κ²¬μ„ λΉ λ₯΄κ²Œ 듀을 수 μžˆλ„λ‘ 함
    • λ…Έμ…˜ 배포 μ„œλΉ„μŠ€(μš°ν”Ό)와 섀문쑰사 μ„œλΉ„μŠ€(슀λͺ¨μ–΄) ν™œμš©

μ»΄ν¬λ„ŒνŠΈ ꡬ성 λ‹΄λ‹Ή

  • μž¬ν™œμš©λ˜λŠ” μ»΄ν¬λ„ŒνŠΈ(λ²„νŠΌ, 챗버블, 이미지, 폰트 λ“±) κ΅¬ν˜„ λ‹΄λ‹Ή
  • 버전이 μ—…κ·Έλ ˆμ΄λ“œ λ˜λ©΄μ„œ 전체 λ””μžμΈκ³Ό λ ˆμ΄μ•„μ›ƒμ΄ λ°”λ€œμ— 따라 폐기된 μ»΄ν¬λ„ŒνŠΈ λ‹€μˆ˜ 쑴재

λ‹΄λ‹Ή ν™”λ©΄ iOS κ΅¬ν˜„

  • v2.0.0 μ˜¨λ³΄λ”© ν™”λ©΄ κ΅¬ν˜„

  • v1, v2의 질문 선택 ν™”λ©΄μ˜ 둜직 및 ν™”λ©΄ κ΅¬ν˜„

    • μΉ΄ν…Œκ³ λ¦¬μ„ νƒν™”λ©΄: 였늘의 μΆ”μ²œ 질문 둜직 κ΅¬ν˜„ 및 μΉ΄ν…Œκ³ λ¦¬ λΆ„λ₯˜
    • μ§ˆλ¬Έμ„ νƒν™”λ©΄: ν•΄λ‹Ή μΉ΄ν…Œκ³ λ¦¬λ‘œ μ΄λ™ν•˜μ—¬, λ‹΅λ³€ μ™„λ£Œ 된 질문 μ œμ™Έ 질문 리슀트
      • 둜그인 μ•ˆλ˜μ–΄ μžˆμ„ μ‹œ, 제일 우츑과 같이 질문 전체λ₯Ό λ³Ό 수 없도둝 막기
  • λ‹΅λ³€ μž‘μ„± ν™”λ©΄ 둜직 및 ν™”λ©΄ κ΅¬ν˜„

    • λ‹΅λ³€μ˜ λ¬Έμžκ°€ 150자 이상일 경우, μž‘μ„±μ€ κ°€λŠ₯ν•˜λ‚˜ μ €μž₯ λ²„νŠΌ λΉ„ν™œμ„±ν™”
    • β€˜μ™„λ£Œβ€™ λ²„νŠΌ λˆ„λ₯Ό μ‹œ, 메인 ν™”λ©΄μœΌλ‘œ λ³΅κ·€λ˜κ³ , λ°μ΄ν„°λŠ” Firebase에 μ €μž₯

λ‹΅λ³€μž‘μ„±ν™”λ©΄

Firebase μ‹€μ‹œκ°„ 데이터 ν™œμš©

  • Firebase μ‹€μ‹œκ°€ 데이터λ₯Ό ν†΅ν•œ λ‹΄λ‹Ή 화면에 맞좘 CRUD κ΅¬ν˜„
  • Firebase둜 λ°μ΄ν„°λ² μ΄μŠ€λ₯Ό μ„€κ³„ν•˜μ—¬ 각 ν•„λ“œλ₯Ό ν™”λ©΄μ—μ„œ 적절히 ν™œμš©
    • SnapshotListener λ₯Ό 톡해 μ„œλ²„ ν˜ΈμΆœμ„ μ΅œμ†Œν™”μ‹œν‚€λ©΄μ„œ μ‹€μ‹œκ°„ 데이터 λ³€ν™”λ₯Ό 감지할 수 μžˆλ„λ‘ 함

FCM 토큰을 ν™œμš©ν•œ μ•Œλ¦Ό μ„œλΉ„μŠ€ κ΅¬ν˜„

  • FCM 토큰을 λ°œκΈ‰λ°›μ•„ μ‹€μ‹œκ°„ 데이터 λ³€ν˜•μ— λ”°λ₯Έ μ•Œλ¦Ό μ„œλΉ„μŠ€ java script둜 κ΅¬ν˜„
    1. β€˜λ‚˜β€™μ™€ β€˜μƒλŒ€λ°©β€™μ΄ 처음 μ—°κ²°λ˜μ—ˆμ„ λ•Œ, β€˜μƒλŒ€λ°©β€™μ—κ²Œ μ•Œλ¦Ό 전솑
    2. β€˜λ‚˜β€™κ°€ 문닡을 μž‘μ„±ν–ˆμ„ λ•Œ, β€˜μƒλŒ€λ°©β€™μ—κ²Œ νŠΉμ • 문닡이 μž‘μ„±λ˜μ—ˆμŒμ„ μ•Œλ¦Ό
      • μ•Œλ¦Όμ„ ν΄λ¦­μ‹œ ν•΄λ‹Ή λ¬Έλ‹΅ 확인 ν™”λ©΄μœΌλ‘œ λ„˜μ–΄κ°
    3. β€˜μƒλŒ€λ°©β€™μ΄ 문닡을 μž‘μ„±ν•˜κ³  λ°˜μ‘μ„ 남겼을 λ•Œ, β€˜λ‚˜β€™μ—κ²Œ λ°˜μ‘ μš”μ²­ μ•Œλ¦Ό
    4. β€˜λ‚˜β€™μ˜ λ°˜μ‘μ— λ”°λΌμ„œ, μ™„μ„± μ•Œλ¦Ό ν˜Ήμ€ λ°˜μ‘ λ‚¨κ²ΌμŒμ„ μ•Œλ¦¬λŠ” μ•Œλ¦Ό
  • SwiftUI λ‚΄λΆ€ μ½”λ“œμ—μ„œ 맀일 μ˜€μ „ 9μ‹œλ§ˆλ‹€ μΆ”μ²œ μ•Œλ¦Ό 확인 μ•Œλ¦Ό λ°œμ†‘
  • Firebase Function을 ν™œμš©ν•΄ μ„œλ²„μ˜ κΈ°λŠ₯을 λŒ€μ²΄

πŸ€ 배운점

[Soft Skill]

  • μ‚¬μš©μžμ˜ κ΄€μ μ—μ„œ μ΄ν•΄ν•˜κ³  μ„œλΉ„μŠ€λ₯Ό λ°”λΌλ³΄λŠ” 사고 ν™•μž₯
  • νŒ€μ˜ 전체 ν”„λ‘œμ„ΈμŠ€μ—μ„œ ν˜‘μ—…μ„ 이루고, κ°ˆλ“±μƒν™©μ„ λ•Œμ— 따라 ν•΄κ²°ν•  수 μžˆλŠ” λŠ₯λ ₯
  • 맀 μŠ€ν”„λ¦°νŠΈλ§ˆλ‹€ μ§„ν–‰λ˜λŠ” νŒ€ ν”Όλ“œλ°±(KPT)을 톡해 개인이 μ•„λ‹Œ νŒ€μ˜ κ°œμ„ μ„ μœ„ν•΄ 생각할 수 μžˆλŠ” 관점 ν‚€μš°κΈ°

[Hard Skill]

  • 아이디어 개발 μ „ μ‚¬μš©μžμ—κ²Œ λ‹€κ°€κ°ˆ 수 μžˆλŠ” λ°©μ•ˆ 읡힘 β†’ λžœλ”© νŽ˜μ΄μ§€, 사전 μ‹ μ²­ νŽ˜μ΄μ§€ μ œμž‘
  • CSS, KPT와 같은 ν”Όλ“œλ°± ν”„λ‘œμ„ΈμŠ€μ— λŒ€ν•œ 이해도 ν–₯상
  • v1 κ³Ό v2 사이 λ””μžμΈ ꡬ성이 λ°”λ€Œλ©΄μ„œ, μƒˆλ‘œμš΄ μ–΄ν”Œλ¦¬μΌ€μ΄μ…˜μœΌλ‘œ νƒˆλ°”κΏˆ β‡’ ν™”λ©΄ κ΅¬ν˜„ 읡힘
    • v1은 νƒ­ 3개둜 κ΅¬μ„±λ˜μ—ˆμœΌλ‚˜, v2λŠ” 탭을 μ—†μ• κ³  λͺ¨λ‹¬λ·°λ‘œ μ „ν™˜μ‹œν‚΄ (νŠΈλžœλ“œ 뢄석 κ²°κ³Ό)
  • Firebase SnapshotListener λ„μž…μœΌλ‘œ κΈ°μ‘΄ 화면이 그렀질 λ•Œλ§ˆλ‹€ 호좜 λ˜μ—ˆλ˜ μ½”λ“œλ₯Ό 효율적으둜 ꡬ성
  • FCM 토큰과 Firebase function을 ν™œμš©ν•œ 데이터에 λ”°λ₯Έ μ•Œλ¦Ό κΈ°λŠ₯
  • 효율적인 GitHub ν˜‘μ—…λ°©μ‹ - 라벨, 이슈, PR 적극 ν™œμš©

About

μΆœμ‹œμ™„λ£ŒπŸ’« iOS μ˜ˆλΉ„ λΆ€λΆ€ λ¬Έλ‹΅ μ•±

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Swift 94.8%
  • JavaScript 5.2%