[Devfest Songdo 2023] 2. Flutter μ—”μ§€λ‹ˆμ–΄μ—κ²Œ Native 지식이 ν•„μš”ν•œ 이유

2023. 12. 10. 23:17ㆍExperiences/Activities

 

 

 

 

 

ν”ŒλŸ¬ν„°μ™€ λ„€μ΄ν‹°λΈŒ , , , μ•„μ£Όμ•„μ£Ό κ΄€μ‹¬μžˆλ˜ μ£Όμ œλΌμ„œ λ“€μ—ˆλ‹΅λ‹ˆλ‹€. 이외에도 ν”ŒλŸ¬ν„° κ΄€λ ¨ μ„Έμ…˜λ“€μ΄ λ§Žμ•˜λ‹€!

 

 

 

 

 

 

ο£Ώ  μ‚Όμ„±κ³Ό μ• ν”Œμ˜ UX 차이점 

  • iOS의 μœ„μΉ˜ κΆŒν•œ 이원화, μ•ˆλ“œλ‘œμ΄λ“œλ‘œ ν™•μ‚°λ˜κΈ° μ „κΉŒμ§€λŠ” λ”°λ‘œ μ²˜λ¦¬ν•΄μ•Ό ν–ˆλ‹€.
  • μ‘°μž‘ λ°©μ‹μ˜ 차이 / iOS의 제슀처 μ€‘μ‹¬μ˜ μ‘°μž‘, μ• ν”Œμ˜ λ§₯뢁도 ν„°μΉ˜ νŒ¨λ“œ μœ„λ“œμ˜ μ‘°μž‘, μŠ€μ™€μ΄ν”„
  • μ•ˆλ“œλ‘œμ΄λ“œ μœ μ €λŠ” μžˆλŠ”μ§€λ„ λͺ¨λ₯΄λŠ” UXκ°€ μ‘΄μž¬ν•¨

 

 

 

 

 

 

 

 

 

 

 

κ²°κ΅­ 크둜슀 ν”Œλž«νΌλ„ ν”Œλž«νΌμ— μ˜μ‘΄ν•  수 밖에 μ—†λ‹€. 

  • λ„€μ΄ν‹°λΈŒ 지식을 잘 μ΄ν•΄ν•˜κ³  μžˆμ–΄μ•Ό μ˜¬λ°”λ₯΄κ²Œ μ—λŸ¬λ₯Ό ν•΄κ²°ν•  수 μžˆλ‹€.
  • 좔상화 계측 μœ„μ—μ„œ λ™μΌν•œ μ½”λ“œλ₯Ό μž‘μ„±ν•˜λŠ” 것
  • μžλ°”λ„ 크둜슀 ν”Œλž«νΌμ΄λ‹€ (jvm μœ„μ—μ„œ μž‘λ™)
  • μ™œ ꡳ이 ν”ŒλŸ¬ν„°λ§Œ 밑단을 μ•Œμ•„μ•Όν•˜λ‚˜?

 

  • 이건 λͺ¨λ°”일 앱이기 λ•Œλ¬Έ 
  • ꡉμž₯히 많이 ν”Œλž«νΌμ— μ˜μ‘΄ν•˜λŠ” κ²½ν–₯ (μ„Όμ„œ, λ„€νŠΈμ›Œν¬, UX적 μš”μ†Œλ“€)
  • ν”ŒλŸ¬ν„°μ—λŠ” ν”Œλž«νΌμ— 의쑴적인 κΈ°λŠ₯듀을 ν†΅μ œν•  수 μžˆλŠ” ν†΅μ œκΆŒμ΄ 거의 μ—†λ‹€ 
  • μžμœ λ„λ₯Ό μ€€λ‹€λŠ” μž₯점이 μžˆκΈ°λ„ 함
  • μ•ˆλ“œλ‘œμ΄λ“œλ‚˜ iOSλ₯Ό ν”Œλž«νΌ μ±„λ„λ‘œ 지원

 

  • ν”ŒλŸ¬ν„°λŠ” ν•œλ²ˆμ— λ‘˜ λ‹€ λ§Œλ“€ 수 μžˆμ–΄ 생산성이 μ’‹λ‹€
  • ν•˜μ§€λ§Œ κΈ‰ν•œ λ„€μ΄ν‹°λΈŒ νŒ¨ν‚€μ§€κ°€ κ³ μž₯ or μ–΄μ©”μˆ˜ 없이 μˆ˜μ •ν•΄μ•Όν•  λ•Œ 
  • 무쑰건 λ„€μ΄ν‹°λΈŒ 지식을 μ•Œμ•„μ•Όν•œλ‹€
  • λ„€μ΄ν‹°λΈŒμ—μ„œλ§Œ μ§€μ›ν•˜λŠ” λΌμ΄λΈŒλŸ¬λ¦¬κ°€ ν•„μš”ν•  λ•Œ / μ›ν•˜λŠ” κΈ°λŠ₯이 없을 λ•Œ
  • μ„±λŠ₯이 λΆ€μ‘±ν•  λ•Œ ν•˜λ“œμ›¨μ–΄ 가속 (λΉ λ₯΄κ²Œ μ²˜λ¦¬ν•΄μ£Όμ„Έμš”) 
    -> λ‹€νŠΈλ§ŒμœΌλ‘œλŠ” νž˜λ“€ 수 μžˆλ‹€

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

μ—”μ§€λ‹ˆμ–΄λŠ” 문제λ₯Ό ν•΄κ²°ν•˜λŠ” μ‚¬λžŒ

  • λŒ€μΆ© 남듀이 ν•˜λŠ” 기술 λ”°λΌμ“°λŠ” μ‚¬λžŒ X
  • μ™œ μ‚¬μš©ν•˜λŠ” 지 μ•Œκ³ , 문제λ₯Ό ν•΄κ²°ν•  수 μžˆμ–΄μ•Ό ν•œλ‹€.
  • κ°œλ°œμ„ 경제적으둜만 μ‚¬μš©ν•˜λŠ” μ‚¬λžŒμ΄ λ˜μ–΄μ„œλŠ” X

 

 

 

 

 

Swift :)
λͺ¨λ°”일 ν”Œλž«νΌ κ°œλ°œμ— λŒ€ν•œ μ΄ν•΄μ˜ ν•„μš”μ„±κ³Ό 같은 말인 것 κ°™λ‹€.

 

 

 

 

 

Native κ³΅λΆ€μ˜ μž₯점과 ν•„μš”μ„±

  • λͺ¨λ°”일 μ—”μ§€λ‹ˆμ–΄λ§μ— λŒ€ν•œ μ „λ°˜μ μΈ μΈμ‚¬μ΄νŠΈ
  • 각 ν”Œλž«νΌμ— λŒ€ν•œ 이해가 생긴닀.
  • ν’μ„±ν•˜κ²Œ ν”ŒλŸ¬ν„° μ•± μ½”λ“œλ₯Ό μž‘μ„±ν•  수 μžˆλ‹€
  • 였λ₯˜κ°€ 났을 λ•Œ, λ°”λ‘œ λŒ€μ‘ν•  수 μžˆλ‹€. 

 

 

 

μŠ€μœ„ν”„νŠΈμ™€ 코틀린을 κ³΅λΆ€ν•˜μž

  • ν”„λ‘œκ·Έλž˜λ° μ–Έμ–΄λ₯Ό κ³΅λΆ€ν•˜λ©΄, λ„€μ΄ν‹°λΈŒ μ½”λ“œλ₯Ό κ±΄λ“œλ¦΄ 수 μžˆλ‹€
  • 곡식 λ¬Έμ„œλ₯Ό 잘 이해할 수 μžˆλ‹€ -> μ°Έκ³ ν•  수 μžˆλŠ” μ†ŒμŠ€κ°€ λŠ˜μ–΄λ‚¨
  • μ†Œν”„νŠΈμ›¨μ–΄ μ—”μ§€λ‹ˆμ–΄λ§μ— λŒ€ν•œ μ‹œμ•Ό λ„“νžˆκΈ°
  • μΈμ‚¬μ΄νŠΈ 증가 (ν•¨μˆ˜ν˜• ν”„λ‘œκ·Έλž˜λ°, delegate νŒ¨ν„΄, ARC, 였λ₯˜μ²˜λ¦¬ λ“±λ“±) 

 

  • μ–΄λ–»κ²Œ 앱이 λ™μž‘ν•˜λŠ”μ§€ μ•Œ 수 μžˆλ‹€
  • 각 ν”Œλž«νΌμ— λŒ€ν•œ 이해가 증가할 수 μžˆλ‹€
  • ex) push notification이 μ–΄λ–€ μ •μ±… ν•˜μ—μ„œ λ™μž‘ν•˜λŠ”κ°€ λ“±λ“±

 

  • μ–΄λ–€ μ½”λ“œκ°€ 문제λ₯Ό μΌμœΌν‚€λŠ”μ§€, 
    였λ₯˜λ₯Ό λ°œμƒν•  κ°€λŠ₯성이 μžˆλŠ” μ½”λ“œλ₯Ό νŒŒμ•…ν•  수 μžˆλ‹€
  • 처리λ₯Ό ν•˜μ§€ μ•ŠμœΌλ©΄ 앱이 ν„°μ§€λŠ”, κ°•μ œ μ’…λ£Œκ°€ λ˜λŠ” 경우 있음
    null point exception, λ©”λͺ¨λ¦¬ 이슈 (이미지 많이 λ‘œλ“œ)
    out of memeory, μŠ€λ ˆλ“œμ— μž‘μ—…μ΄ λ§‰νžˆλŠ” 경우 λ“±λ“±

 

  • ν”Œλž«νΌ λΌμ΄λΈŒλŸ¬λ¦¬λ“€μ— λŒ€ν•œ μ΄μŠˆλ“€ νŒŒμ•…
  • μ• ν”Œμ—μ„œ μ œκ³΅ν•˜λŠ” μ„œλΉ„μŠ€λ“€μ— λŒ€ν•œ νŒŒμ•…
  • λΉŒλ“œλ‚˜ μ˜μ‘΄μ„± 관리 μ‹œμŠ€ν…œ λ“±λ“±
  • XCode도 μ•Œμ•„μ•Όν•¨ (μ˜μ‘΄μ„±μ΄ 있음)
    μ•ˆλ“œλ‘œμ΄λ“œλŠ” μ•ˆλ“œλ‘œμ΄λ“œ μŠ€νŠœλ””μ˜€μ— λŒ€ν•œ μ˜μ‘΄μ„±μ΄ 적음

 

 

 

 

 

γ…‹γ…‹γ…Œγ…Šγ…‹γ…‹γ…‹γ…‹γ…‹γ…‹γ…‹γ…‹

 

 

 

 

μΆ”μ²œν•˜λŠ” 곡뢀 μ‹œμž‘λ²•

  • λ„€μ΄ν‹°λΈŒ μ–΄ν”Œλ¦¬μΌ€μ΄μ…˜ 
    or λ„€μ΄ν‹°λΈŒμ— μ˜μ‘΄ν•˜λŠ” νŒ¨ν‚€μ§€ λ§Œλ“€μ–΄λ³΄κΈ°

 

  • λŒ€μ²΄ μ–΄λ””κΉŒμ§€ κ³΅λΆ€ν•΄μ•Όν•˜λ‚˜? 
    UI λΉΌκ³  μ „λΆ€ κ³΅λΆ€ν•˜λ©΄ μ’‹μŠ΅λ‹ˆλ‹€
  • ν”ŒλŸ¬ν„°κ°€ UIλ₯Ό κ·Έλ €μ£Όλ‹ˆκΉŒ
  • XMLμ΄λ‚˜ μŠ€ν† λ¦¬λ³΄λ“œ μ •λ„λ§Œ κ±΄λ„ˆλ›°λŠ” μˆ˜μ€€μœΌλ‘œ
    λ·°κ°œλ… λ·°μ»¨νŠΈλ‘€λŸ¬λŠ” μ•Œμ•„μ•Ό ν•œλ‹€.

 

  • μ•ˆλ“œλ‘œμ΄λ“œλŠ” 개발자 λ¬Έμ„œκ°€ 잘 λ˜μ–΄μžˆλ‹€.
  • iOSλŠ” μžλ£Œλ„, μ‚¬λžŒλ„ λΆ€μ‘±ν•˜λ‹€. 
  • 기술 λ©΄μ ‘ 곡뢀 레포 읽어보기 
  • μ• ν”Œ λ””λ²¨λ‘œνΌ λ¬Έμ„œμ— technologies 
    ꡉμž₯히 λΆˆμΉœμ ˆν•˜μ§€λ§Œ, μ˜μ–΄λ‘œ 읽으면 λœλ‹€

 

  • κ°œλ°œμ— λŒ€ν•œ νŠΈλ Œλ“œλŠ” medium μ•„ν‹°ν‹€
  • iOS development 주제 κ΅¬λ…ν•˜κ³  μΆ”μ²œ 기사 보기
  • 심심할 λ•Œλ§ˆλ‹€ 읽기

 

 

 

μ™œ λ„€μ΄ν‹°λΈŒλ₯Ό μ•Œμ•„μ•Όν•˜λ‚˜? 

μ–Έμ  κ°€λŠ” λ§ˆμ£ΌμΉœλ‹€

 

 

 

 

 

πŸ“Œ

였늘 λ“€μ—ˆλ˜ μ—¬λŸ¬ κ°•μ˜λ“€ μ€‘μ—μ„œ κ°€μž₯ μΈμƒκΉŠμ—ˆλ‹€.

ꡬ글, ν”ŒλŸ¬ν„° 개발자의 μ‹œμ„ μ—μ„œ iOS κ°œλ°œμ„ λ°”λΌλ³΄λŠ”

μƒˆλ‘œμš΄ μ‹œκ°μ„ μ ‘ν•  수 μžˆμ–΄μ„œ λ„ˆλ¬΄ μž¬λ―Έμžˆμ—ˆλ‹€. πŸ˜‰

크둜슀 ν”Œλž«νΌμ—μ„œλ„ λ„€μ΄ν‹°λΈŒ 지식이 ν•„μš”ν•œ μ΄μœ μ— λŒ€ν•΄μ„œ κ°•μ˜λ₯Ό λ“£λ‹€λ³΄λ‹ˆ,

μžμ—°μŠ€λŸ½κ²Œ λ‚΄κ°€ 처음 iOS κ°œλ°œμ„ 배우던 과정이 λ– μ˜¬λžλ‹€. 

μ‹œκ°„μ΄ 되면 κ΅μˆ˜λ‹˜μ΄ μ£Όμ…¨λ˜ μ±…μœΌλ‘œ ν”ŒλŸ¬ν„° 앱을 ν•˜λ‚˜ λ§Œλ“€μ–΄λ³΄λŠ” 것도 쒋을 것 κ°™λ‹€. :)