μŠ€μœ„ν”„νŠΈ

·🍎 iOS & Swift
λ“€μ–΄κ°€λ©° β˜€οΈ 기초 문법 κ³΅λΆ€μ˜ ν•„μš”μ„±μ„ λŠκ»΄μ„œ μ΄ˆμ‹¬μœΌλ‘œ λŒμ•„κ°€ μ‘°κΈˆμ”© κ³΅λΆ€ν•˜λ €κ³  ν•œλ‹€. μ§€κΈˆ κ³΅λΆ€ν•˜κ³ μž ν•˜λŠ” 것듀이 λ‹¨μˆœ 정리가 λ˜μ§€ μ•Šλ„λ‘ 계속 κ³ λ―Όν•˜κ³  μ—°κ΅¬ν•˜λŠ” μžμ„Έλ₯Ό 가지도둝 ν•˜μž. κΈ°μ΄ˆλŠ” κ°€μž₯ μ‰¬μ›Œμ„œκ°€ μ•„λ‹ˆλΌ κ°€μž₯ μ€‘μš”ν•΄μ„œ κ·Έ μ˜λ―Έκ°€ μžˆμŒμ„ κΉ¨λ‹«μž. ifλ¬Έ πŸ™‹πŸ»‍♂️ νŠΉμ • μ‘°κ±΄μ—μ„œλ§Œ μ½”λ“œλ₯Ό μ‹€ν–‰ν•΄μ•Ό ν•˜κ±°λ‚˜ λ˜λŠ” μ‹€ν–‰ν•˜μ§€ 말아야 ν•˜κ±°λ‚˜ ν•˜λŠ” μƒν™©μ—μ„œ 쓰인닀. 말 κ·ΈλŒ€λ‘œ 쑰건에 따라 λ‹€λ₯Έ 처리λ₯Ό ν•΄μ£Όκ³  싢을 λ•Œ μ‚¬μš©ν•œλ‹€. ν•˜λ‚˜μ˜ ν”„λ‘œκ·Έλž¨μ„ λ§Œλ“€λ‹€ 보면 정말 ν•„μˆ˜μ μœΌλ‘œ 쑰건문을 μ‚¬μš©ν•΄μ„œ 쑰건에 λ”°λ₯Έ 처리λ₯Ό ν•΄μ£ΌλŠ” 상황이 λ°œμƒν•˜κΈ° λ•Œλ¬Έμ— ν•„μˆ˜μ μœΌλ‘œ μ•Œκ³  μžˆμ–΄μ•Ό ν•˜λŠ” λ‚΄μš©μ΄λ‹€. μ€‘μš”ν•œ 건 if문을 μ‚¬μš©ν•  수 μžˆλŠ” μƒν™©μ—μ„œ switch-case문을 μ‚¬μš©ν•  수 μžˆλ‹€λŠ” 것인데 μ–΄λ–»κ²Œ μ½”λ“œλ₯Ό μž‘μ„±ν•΄μ•Ό ν• μ§€λŠ” 적..
·🍎 iOS & Swift
μ•ˆλ…•ν•˜μ„Έμš”, νƒœλΌμž…λ‹ˆλ‹€. 이번 글은 μ •λ¦¬ν˜•νƒœλ‘œ μž‘μ„±ν•΄λ‘μ–΄ μ–΄νˆ¬κ°€ 쑰금 λ”±λ”±ν•  수 μžˆμŠ΅λ‹ˆλ‹€.. μ΄ν•΄λΆ€νƒλ“œλ €μš” πŸ₯² 이번 글은 μ–΄νˆ¬λ„ λ”±λ”±ν•˜κ³  쀄글 ν˜•μ‹μ΄λ‹€. λ„ˆλ¬΄ μ–΄λ ΅κ²Œ 생각할 ν•„μš”κ°€ μ—†λŠ” κ°œλ…μ΄λ‹€. λ‹¨μˆœν•˜κ²Œ λ§žμ„œλ³΄μž. μš”μ•½ ν”„λ‘œν† μ½œμ—μ„œ μ‚¬μš©λ˜λŠ” μ œλ„€λ¦­ Placeholder의 λŠλ‚Œμ΄λ‹€. Associated Type은 μ›λž˜ typealiasμ˜€λŠ”λ°, Swift 2.2λΆ€ν„° Associated Typeμ΄λž€ ν‚€μ›Œλ“œλ‘œ λ°”λ€Œμ—ˆλ‹€. μ„€λͺ… μœ„μ˜ 두 가지 κ΄€μ μ—μ„œ 보면 λ‚΄μš©μ€ 크게 어렡지 μ•Šλ‹€. μ•„λž˜μ˜ μ˜ˆμ‹œλ‘œ ν•¨κ»˜ 이해해보겠닀. μš°μ„  ν”„λ‘œμ νŠΈμ— λŒ€ν•΄ 잠깐 이해해보면, ν”„λ‘œμ νŠΈλŠ” ν˜„μž¬ MVVM νŒ¨ν„΄μ„ λ”°λ₯΄κ³  μžˆλ‹€. λ‹€μŒ ν”„λ‘œμ νŠΈμ—μ„œλŠ” λΉ„μ¦ˆλ‹ˆμŠ€ λ‘œμ§μ„ μ²˜λ¦¬ν•˜λŠ” ViewModel을 κ΅¬ν˜„ν•΄μ•Ό ν•œλ‹€. 보톡 각 ViewControlle..
·🍎 iOS & Swift
ν•΄λ‹Ή 글에 μ‚¬μš©λœ μ˜ˆμ‹œλŠ” 2가지 κΈ€μ—μ„œ κ°€μ Έμ™”μŠ΅λ‹ˆλ‹€. μΆœμ²˜λŠ” κΈ€ λ§ˆμ§€λ§‰μ— μ μ–΄λ†“μ•˜μŠ΅λ‹ˆλ‹€. μ°Έκ³ ν•˜μ…”μ„œ κΈ€ μ½μ–΄μ£Όμ‹œλ©΄ κ°μ‚¬ν•˜κ² μŠ΅λ‹ˆλ‹€ :) πŸ’¬ 듀어가기전에 κ²°λ‘ λΆ€ν„° λ§ν•˜κ³  μ‹œμž‘ν•˜κ² μŠ΅λ‹ˆλ‹€. typealiasλŠ” μ½”λ“œλ₯Ό μ’€ 더 κ°„κ²°ν•˜κ²Œ κ°€λ…μ„±μžˆκ²Œ μž‘μ„±ν•˜κΈ° μœ„ν•΄μ„œ μ‚¬μš©ν•©λ‹ˆλ‹€. μ–Έμ œ μ‚¬μš©ν•˜λƒκ΅¬μš”? 정닡은 μ—†μŠ΅λ‹ˆλ‹€. λ‹€λ§Œ 일반적으둜 μ‚¬μš©ν•˜λŠ” κ²½μš°λŠ” 있죠. 이번 κΈ€μ—μ„œλŠ” κ·Έ 뢀뢄에 λŒ€ν•΄μ„œ ν•¨κ»˜ μ•Œμ•„λ³΄λ„λ‘ ν•˜κ² μŠ΅λ‹ˆλ‹€. πŸ—’ typealiasλž€ typealiasλž€ νƒ€μž…μ— 뢙일 수 μžˆλŠ” 별칭, μ•½μΉ­μž…λ‹ˆλ‹€. typealias (μ‚¬μš©ν•  별λͺ…) = (μ‘΄μž¬ν•˜λŠ” νƒ€μž…) ex) typealias Nickname = Int ex) typealias Codable = Decodable & Encodable ex) ... typealiasλŠ” μƒˆ..
·🍎 iOS & Swift
μ•ˆλ…•ν•˜μ„Έμš”, νƒœλΌμž…λ‹ˆλ‹€~ μ˜€λŠ˜μ€ Convenience initializerκ°€ 무엇인지 μ•Œμ•„λ³΄κ² μŠ΅λ‹ˆλ‹€! μ΄λ‹ˆμ…œλΌμ΄μ €λŠ” 크게 2가지λ₯Ό μ‚΄νŽ΄λ³Ό 수 μžˆμŠ΅λ‹ˆλ‹€. Designated initializer, Covenience initializer μ°¨λ‘€λŒ€λ‘œ 지정 μ΄λ‹ˆμ…œλΌμ΄μ €, 편의 μ΄λ‹ˆμ…œλΌμ΄μ €λΌκ³  해석해볼 수 μžˆλŠ”λ°, 지정 μ΄λ‹ˆμ…œλΌμ΄μ €λŠ” 클래슀(ꡬ쑰체)λ‚΄μ˜ λͺ¨λ“  ν”„λ‘œνΌν‹°κ°€ μ΄ˆκΈ°ν™”λ  수 μžˆλ„λ‘ ν•΄μ£ΌλŠ” μ΄λ‹ˆμ…œλΌμ΄μ €μ΄κ³ , 편의 μ΄λ‹ˆμ…œλΌμ΄μ €λŠ” 좔가적인 μž‘μ—…μ„ ν•  수 μžˆλ„λ‘ ν•΄μ£ΌλŠ” 보쑰 μ΄λ‹ˆμ…œλΌμ΄μ €μž…λ‹ˆλ‹€. Designated init 의 νŒŒλΌλ―Έν„° 일뢀λ₯Ό κΈ°λ³Έκ°’μœΌλ‘œ μ„€μ •ν•΄μ„œ Convenience init μ•ˆμ—μ„œ Designated init 을 ν˜ΈμΆœν•΄μ„œ μ“Έ 수 μžˆμŠ΅λ‹ˆλ‹€. μ€‘μš”ν•œ ν¬μΈνŠΈλŠ” λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€. Convenience i..
·🍎 iOS & Swift
μš°λ¦¬λŠ” μ˜΅μ…”λ„μ— λŒ€ν•΄ λ¬Όμ—ˆμ„ λ•Œ, μ–Όλ§ˆλ‚˜ 잘 λŒ€λ‹΅ν•  수 μžˆμ„κΉŒ? Summary μ˜΅μ…”λ„μ€ λ³€μˆ˜μ— 값이 μžˆμ„ μˆ˜λ„ 있고, 없을 μˆ˜λ„ μžˆλŠ” μƒνƒœ(nil)λ₯Ό ν‘œν˜„ν•˜κΈ° μœ„ν•΄ Swift에 λ„μž…λœ κ°œλ…μž…λ‹ˆλ‹€. μ˜΅μ…”λ„μ€ Enum ν˜•νƒœλ‘œ μ •μ˜λ˜μ–΄ 있고, κ°’μ˜ 있고 μ—†μŒμ„ 각 Case둜 가지고 μžˆμŠ΅λ‹ˆλ‹€. μ˜΅μ…”λ„λ‘œ ν‘œν˜„λœ 값에 μ ‘κ·Όν•˜λŠ” λ°©λ²•μœΌλ‘œλŠ” Forced Unwrapping(κ°•μ œ μ–Έλž˜ν•‘), Optional Binding(μ˜΅μ…”λ„ 바인딩), Nil-Coalescing Operator(Nilλ³‘ν•©μ—°μ‚°μž)κ°€ μžˆμŠ΅λ‹ˆλ‹€. μ˜΅μ…”λ„ 체이닝을 ν†΅ν•΄μ„œ μ˜΅μ…”λ„ λ°”μΈλ”©μœΌλ‘œ ν‘œν˜„λœ μ½”λ“œλ₯Ό κ°„κ²°ν•˜κ²Œ μž‘μ„±ν•  수 μžˆμŠ΅λ‹ˆλ‹€. μ˜΅μ…”λ„(Optional) λ„ˆλž€ 녀석 μ˜΅μ…”λ„μ˜ 의미 자 μš°λ¦¬λŠ” κ·Όλ³ΈμžˆλŠ” 개발자이기 λ•Œλ¬Έμ— Apple 곡식 λ¬Έμ„œλ₯Ό 보도둝 ν•˜μ£ . (..
μ•ˆλ…•ν•˜μ„Έμš”! λ‹€μ‹œ λŒμ•„μ™”μŠ΅λ‹ˆλ‹€ :) μ˜€λŠ˜μ€ μ’€ 일찍 λ³΅μŠ΅μ„ 마무리 ν–ˆμŠ΅λ‹ˆλ‹€. μ˜€ν”½ μ‹œν—˜μ„ 보고 μ™”μœΌλ‚˜,, κ²°κ³ΌλŠ” 쒋지 μ•Šμ„ λ“― ν•˜λ„€μš”... μŠ€ν”Όν‚Ή μ—°μŠ΅μ΄ ν•„μš”ν•¨μ„ λŠκΌˆμŠ΅λ‹ˆλ‹€!! μ˜€λŠ˜μ€ μŠ€μœ„ν”„νŠΈ 문법 볡슡 2μΌμ°¨μž…λ‹ˆλ‹€! ν•¨μˆ˜, μ˜΅μ…”λ„, μ—΄κ±°ν˜•, ꡬ쑰체, ν΄λž˜μŠ€κ°€ ν† ν”½μ΄μ—ˆκ³ ! 볡슡 파트의 경우 λ‚΄μš©μ„ μƒμ„Ένžˆ 적지 μ•ŠμœΌλ €κ³  ν•©λ‹ˆλ‹€. 이미 μ•žμ—μ„œ μ •λ¦¬ν–ˆκ³ , μ•žμœΌλ‘œλŠ” ν•΅μ‹¬λ§Œ μ€„μ—¬λ‚˜κ°€λŠ” 과정이 μ€‘μš”ν•  것 κ°™μ•„μ„œμš”! β–ΆοΈŽ 원문 좜처 κΉƒν—ˆλΈŒ 링크 - Day 14 μŠ€μœ„ν”„νŠΈ 볡슡 (2)
μ•ˆλ…•ν•˜μ„Έμš”, νƒœλΌμž…λ‹ˆλ‹€. μ–΄μ©Œλ‹€ λ³΄λ‹ˆ λΈ”λ‘œκ·Έμ˜ 2번째 ν¬μŠ€νŒ…μ„ ν•˜κ²Œ λ˜μ—ˆλŠ”λ°μš”! μ§€κΈˆκΉŒμ§€ 정리에 λŒ€ν•œ κ°•λ°•(?!) λ•Œλ¬Έμ— λΈ”λ‘œκ·Έ 정리λ₯Ό λ―Έλ€„μ™”μ—ˆλŠ”λ° μ΄μ œλŠ” 얽맀이지말고 κ·Έ λ™μ•ˆ κ³΅λΆ€ν–ˆλ˜ λ‚΄μš©μ΄λ‚˜ μƒˆλ‘­κ²Œ μ•Œκ²Œλœ λ‚΄μš©μ„ κΎΈμ€€νžˆ 잘 μ •λ¦¬ν•΄λ³΄λ €κ΅¬μš”! μ˜€λŠ˜μ€ 100 Days Of Swift의 2일차 μž…λ‹ˆλ‹€. λ°°μ—΄/집합/νŠœν”Œ/λ”•μ…”λ„ˆλ¦¬ λ“±μ˜ λ³΅μž‘ν•œ μžλ£Œν˜•κ³Ό πŸ€”μŠ€μœ„ν”„νŠΈμ˜ νŠΉλ³„ν•œ 녀석이죠. Enum(μ—΄κ±°ν˜•)을 μ •λ¦¬ν•΄λ³΄μ•˜μŠ΅λ‹ˆλ‹€. μžμ„Έν•œ λ‚΄μš©μ€ κΉƒν—ˆλΈŒμ— 잘 μ •λ¦¬λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€ 😁 개인 κ³΅λΆ€μš©μ΄λΌ λ‚΄μš©μ΄ 쑰금 κΈΈμ–΄μ‘Œμ§€λ§Œ, λ³΄λŠ” λΆ„λ“€μ—κ²Œ 도움이 λœλ‹€λ©΄ μ’‹κ² μŠ΅λ‹ˆλ‹€ :D 원문링크 β–ΆοΈŽ κΉƒν—ˆλΈŒ μ£Όμ†Œ 레퍼런슀 β–ΆοΈŽ Enum μ—΄κ±°ν˜• μ •λ³΅ν•˜κΈ° 1편 - μ—Όμ—Ό(FLIP)λ‹˜ λΈ”λ‘œκ·Έ
taeeekki
'μŠ€μœ„ν”„νŠΈ' νƒœκ·Έμ˜ κΈ€ λͺ©λ‘