Potato
μ•ˆλ…•ν•˜μ„Έμš”, κ°μž‘λ‹ˆλ‹€?πŸ₯” ^___^ 😺 github λ°”λ‘œκ°€κΈ° πŸ‘‰πŸ»
λ°˜μ‘ν˜•

Swift/Swift Documents 22

[Swift] 곡식 λ¬Έμ„œ 정리 (22) - Protocols (ν”„λ‘œν† μ½œ)

μ•ˆλ…•ν•˜μ„Έμš”, κ°μžμž…λ‹ˆλ‹€! (μ™œ..μ˜€λžœλ§Œμ— μΈμ‚¬ν•˜λŠ”κ²ƒ 같지..) μΌμ£ΌμΌλ§Œμ— λŒμ•„μ˜¨ 곡식 λ¬Έμ„œ μ •λ¦¬μž…λ‹ˆλ‹€.. 이번주 λ‚΄λ‚΄ ν”„λ‘œν† μ½œ κ΄€λ ¨ν•΄μ„œλ§Œ μ •λ¦¬ν•œ 것 κ°™μ•„μš”. 그리고 μ• ν”Œμ•„μΉ΄λ°λ―Έμ˜ μ‹œμž‘μœΌλ‘œ μ‹œκ°„μ΄ λ„ˆλ¬΄λ„ˆλ¬΄ λΆ€μ‘±ν•˜λ„€μš” γ… γ…  κ·Έλž˜λ„ μ§€μΉ˜μ§€λ„ μ•Šκ³  ν”„λ‘œν† μ½œ μ •λ¦¬λ‚΄μš©μ„ κ°€μ Έμ™”μŠ΅λ‹ˆλ‹€. λ‚΄μš©μ΄ λ„ˆ~~~~~무 λ§Žμ•„μ„œ,, λͺ¨λ“  λ‚΄μš©μ΄ λ‹€ 머릿속에 λ“€μ–΄μ˜€μ§„ μ•Šμ€ κ²ƒκ°™μ•„μš” γ…  더 읽어보고, μ‹€λ¬΄μ—μ„œ μ ‘ν•΄λ³΄λŠ” 방법 뿐이겟죠? 그럼 즐거운 마음으둜 μ‹œμž‘ν•΄λ΄…μ‹œλ‹€! gogo Swift Document chap.22 Protocols (ν”„λ‘œν† μ½œ) λ°”λ‘œκ°€κΈ° Protocols — The Swift Programming Language (Swift 5.6) Protocols A protocol defines a blueprint of m..

[Swift] 곡식 λ¬Έμ„œ 정리 (21)- Extenstions (ν™•μž₯, μ΅μŠ€ν…μ…˜, ν™•μž₯ κΈ°λŠ₯)

μ•ˆλ…•ν•˜μ„Έμš”, κ°μžμž…λ‹ˆλ‹€. μ˜€λŠ˜μ€ Extension에 λŒ€ν•΄μ„œ 곡뢀해본 λ‚΄μš©μ„ μ •λ¦¬ν–ˆμ–΄μš”. 그럼 μ‹œμž‘! Swift Document chap.21 Extension λ°”λ‘œκ°€κΈ° Extensions — The Swift Programming Language (Swift 5.6) Extensions Extensions add new functionality to an existing class, structure, enumeration, or protocol type. This includes the ability to extend types for which you don’t have access to the original source code (known as retroactive modeling). Exten..

[Swift] 곡식 λ¬Έμ„œ 정리 (20) - Nested Types (쀑첩 νƒ€μž…)

μ•ˆλ…•ν•˜μ„Έμš”, κ°μžμž…λ‹ˆλ‹€. μ˜€λŠ˜μ€ κ³΅μ‹λ¬Έμ„œ 20번째 챕터 쀑첩 νƒ€μž…μ— λŒ€ν•΄μ„œ κ³΅λΆ€ν•œ 글을 정리해보렀고 ν•©λ‹ˆλ‹€. 아직 μ•±κ°œλ°œμ„ 막 ν•΄λ³Έ κ²½ν—˜μ΄ μ—†μ–΄μ„œ ν•΄λ‹Ή μ€‘μ²©νƒ€μž…μ— λŒ€ν•΄μ„œλ„ μ•½κ°„ 애맀λͺ¨ν˜Έν•˜κ²Œ 이해가 λ˜λŠ” 감이 없지 μ•Šμ•„ μžˆλ„€μš”. μ°¨μ°¨ 잘 μ•Œκ²Œ 되겟죠? γ…Žγ…Ž 일단 기초 λΉ‘μ„Έκ²Œ μž‘μ•„λ΄…μ‹œλ‹€. Swift Document chap.20 Nested Types λ°”λ‘œκ°€κΈ° Nested Types — The Swift Programming Language (Swift 5.6) Nested Types Enumerations are often created to support a specific class or structure’s functionality. Similarly, it can be convenient to de..

[Swift] 곡식 λ¬Έμ„œ 정리 (19) - Type Casting (νƒ€μž…μΊμŠ€νŒ…) (λ‹€μš΄μΊμŠ€νŒ…, as, is)

μ•ˆλ…•ν•˜μ„Έμš”, μ§€μΉ˜μ§€ μ•Šκ³  λŒμ•„μ˜¨ κ³΅μ‹λ¬Έμ„œ 정리 ν¬μŠ€νŒ…μž…λ‹ˆλ‹€. μš”μ¦˜ μ• ν”Œ λ””λ²¨λ‘œνΌ 아카데미도 λΆ™μ—ˆλ‹€, μŠ€ν„°λ””λ„ ν•œλ‹€, ν•˜λ©΄μ„œ κ°œμΈκ³΅λΆ€λ₯Ό 쑰금 μ†Œν™€νžˆ ν•˜κ³  μžˆλŠ”λ°, 정말 λ°˜μ„±ν•˜λŠ” μ˜λ―Έλ‘œλ‹€κ°€ μ˜€λŠ˜μ€ μ’€ 곡뢀도 μ•„μΉ¨ 일찍 μ‹œμž‘ν•΄λ΄€μ–΄μš”... 갓생 μ‚΄μ•„λ³΄μžμ•„γ…μ•„... κ°“μƒμ‚°λ‹€κ³ λŠ” ν•˜λŠ”λ°, μ–Έμ œλ‚˜ 만쑱슀러운 갓생을 살아본적은 아직 μ—†λŠ” κ²ƒκ°™μ•„μš”. μ–Έμ œμ―€, 제 κΈ°λŒ€μΉ˜μ— λ§Œμ‘±ν• λ§Œν•œ κ³΅λΆ€μ˜ 양을 μ±„μš°κ³  ν•˜λ£¨λ₯Ό 정말 μ•Œμ°¨κ²Œ μ‚΄ 수 μž‡μ„κΉŒμš”? 흠흠흠... λ…Έλ ₯ν•΄λ΄…μ‹œλ‹€ λͺ¨λ‘ ν™”μ΄νŒ… 그럼 κ³΅μ‹λ¬Έμ„œ 정리 μ‹œμž‘! Swift document chap.19 Type Casting λ°”λ‘œκ°€κΈ° Type Casting — The Swift Programming Language (Swift 5.6) Type Casting Type casting..

[Swift] 곡식 λ¬Έμ„œ 정리 (18) - Concurrency (λ™μ‹œμ„±, actor, async, await, 비동기, λ³‘λ ¬μ½”λ“œ)

μ•ˆλ…•ν•˜μ„Έμš”, κ°μžμž…λ‹ˆλ‹€. μ˜€λŠ˜μ€ WWDC21 μ—μ„œ λ“±μž₯ν•œ λ™μ‹œμ„±μ— λŒ€ν•΄μ„œ κ³΅λΆ€ν–ˆμ–΄μš”.. λ„˜ μ–΄λ ΅λ”κ΅°μš” γ… γ…  κ·Έλž˜μ„œ 쑰금 더 μ°Έκ³ ν•˜κ³  이해가 ν•„μš”ν•  것 κ°™μ•„μš”.. 흑흑.. κ·Έλž˜μ„œ κ³΅μ‹λ¬Έμ„œ 맨 λ§ˆμ§€λ§‰μ— μ°Έκ³ ν•΄μ„œ 더 곡뢀해볼 자료λ₯Ό μ²¨λΆ€ν•΄λ‘μ—ˆμ–΄μš”. λͺ¨λ‘ κ°€μ„œ 읽어보고 μ œλŒ€λ‘œ 된 이해λ₯Ό ν•΄λ΄…μ‹œλ‹€ γ… γ…  아직 갈길이 λ©€κ΅°μš”.. Swift documents chap.18 Concurrency λ³΄λŸ¬κ°€κΈ° Concurrency — The Swift Programming Language (Swift 5.6) Concurrency Swift has built-in support for writing asynchronous and parallel code in a structured way. Asynchronous code c..

[Swift] 곡식 λ¬Έμ„œ 정리 (17) Error Handling (μ—λŸ¬ 처리 방법 4가지, do-catch, throws ꡬ문)

μ•ˆλ…•ν•˜μ„Έμš”, κ°μžμž…λ‹ˆλ‹€. μ˜€λŠ˜μ€ μ—λŸ¬λ₯Ό ν•Έλ“€λ§ν•˜λŠ” 방법에 λŒ€ν•΄μ„œ μ•Œμ•„λ³΄λ„λ‘ ν• κ²Œμš”. swift κ³΅μ‹λ¬Έμ„œ 17번째 μ±•ν„°μ—μš”! 일주일에 μ•½3~5κ°œμ”© κΎΈμ€€νžˆ μ •λ¦¬ν•˜λ‹€λ³΄λ‹ˆ 벌써 17개λ₯Ό ν–ˆλ„€μš” γ…Žγ…Ž ν•˜λ©΄μ„œ λͺ¨λ“  κ°œλ…μ΄ μ™„λ²½ν•˜κ²Œ μž‘νžˆμ§„ μ•Šμ•˜μ§€λ§Œ, ν•˜λ‚˜ν•˜λ‚˜ λͺ¨λ₯΄λ˜ 뢀뢄을 μ•Œκ²Œλ˜κ³  λ†“μ³€λ˜ 뢀뢄도 λ‹€μ‹œ λ³΄κ²Œλ˜λŠ” 것 κ°™μ•„μš”. 기본적으둜 3νšŒλ…μ •λ„ ν•˜λ©΄, λ©΄μ ‘ λŒ€λΉ„κΉŒμ§€ 되겟죠?! γ…Žγ…Žγ…Žγ…Ž ν™”μ΄νŒ…μž…λ‹ˆλ‹€ λͺ¨λ‘! Swift document chap.17 Error Handling λ³΄λŸ¬κ°€κΈ° Error Handling — The Swift Programming Language (Swift 5.6) Error Handling Error handling is the process of responding to and recoverin..

[Swift] 곡식 λ¬Έμ„œ 정리 (16) - Optional Chaining (μ˜΅μ…”λ„ 체이닝, ?)

μ•ˆλ…•ν•˜μ„Έμš”, κ°μžμž…λ‹ˆλ‹€. μ˜€λžœλ§Œμ— λŒμ•„μ˜¨ 것 κ°™μ€λ°μš”, (μ•„λ‹Œκ°€ γ…Ž) μš”μ¦˜ μŠ€ν„°λ””λ§Œ μ§„ν–‰ν•˜κ³  μŠ€ν„°λ””ν•œ λ‚΄μš©μ„ μ—…λ‘œλ“œν•˜λŠ” 것을 κΉŒλ¨Ήμ—ˆλ„€μš”. 그리고 μ‚¬λžŒμ΄λΌλŠ”κ²Œ,, 쑰금 μš”μ¦˜ λ‚˜νƒœν•΄μ Έμ„œ γ… γ…  λ‹€μ‹œ ν•œλ²ˆ ν™”μ΄νŒ… μ™ΈμΉ˜κ³  갓생살기 λ‹€μ‹œ μ‹œμž‘ν•©λ‹ˆλ‹€ ν—ˆν—› Swift Document chap16. optional chaining λ³΄λŸ¬κ°€κΈ° Optional Chaining — The Swift Programming Language (Swift 5.6) Optional Chaining Optional chaining is a process for querying and calling properties, methods, and subscripts on an optional that might currently be nil...

[Swift] 곡식 λ¬Έμ„œ 정리 (15) - Deinitialization (μ†Œλ©Έμž, λ””μ΄λ‹ˆμ…œλΌμ΄μ €, deinit)

μ•ˆλ…•ν•˜μ„Έμš”, κ°μžμž…λ‹ˆλ‹€. μ§€λ‚œλ²ˆ 4일간 κ³΅λΆ€ν–ˆλ˜ μƒμ„±μžμ— μ΄μ–΄μ„œ μ†Œλ©Έμžμ— λŒ€ν•΄μ„œ κ³΅λΆ€ν•œ λ‚΄μš©μ„ μ˜¬λ €λ΄…λ‹ˆλ‹€. κ³΅μ‹λ¬Έμ„œ.. κΈΈμ–΄μ„œ μ–΄λ €μ›Œγ…“μ–΄μ–΄μ–΄ Swift Document chap.15 Deinitialization λ°”λ‘œκ°€κΈ° Deinitialization — The Swift Programming Language (Swift 5.6) Deinitialization A deinitializer is called immediately before a class instance is deallocated. You write deinitializers with the deinit keyword, similar to how initializers are written with the init keyword. Dein..

[Swift] 곡식 λ¬Έμ„œ 정리 (14) - Initailization (μƒμ„±μž, 초기자, initμ΄λž€?)

μ•ˆλ…•ν•˜μ„Έμš”, κ°μžμž…λ‹ˆλ‹€. Swift μŠ€ν„°λ””λ₯Ό μ§„ν–‰ν•˜λ©΄μ„œ 4일간 κ³΅λΆ€ν–ˆλ˜.. μƒμ„±μž 챕터λ₯Ό μ—…λ‘œλ“œν•΄λ³Όκ²Œμš”. 정말 κΈΈκ³  κΈΈμ–΄μ„œ μ§€λ£¨ν–ˆμ–΄μš”.. 근데도 μ™„μ „ν•œ μ΄ν•΄λŠ” 아직 λͺ»ν–ˆλ‹€λŠ” 것이 함정!! λΉ λ₯΄κ²Œ ν›‘κ³  μ§€λ‚˜κ°€λŠ”κ²Œ λͺ©ν‘œμ˜€μ–΄μ„œ μ™„μ „ν•œ μ΄ν•΄λŠ” νž˜λ“€μ—ˆμ§€λ§Œ, μ•„ μƒμ„±μžλŠ” μ΄λŸ΄λ•Œ μ‚¬μš©ν•˜λŠ”κ΅¬λ‚˜ μ΄λŸ΄λ•Œ μ•ˆλ˜λŠ”κ΅¬λ‚˜! 이런 기본적인 κ°œλ…μ„ λ‹€μ§€λŠ” μ‹œκ°„μ΄μ—ˆμ–΄μš”. μ•žμœΌλ‘œ μƒμ„±μžμ—λŒ€ν•΄μ„œ λ‹€μ‹œν•œλ²ˆ μ •λ…ν•˜λ©΄μ„œ κΆκΈˆν•œ 점에 λŒ€ν•΄μ„œ ν¬μŠ€νŒ…ν•˜λ„λ‘ ν•΄μ•Όκ² μ–΄μš”. Swift Document chap.14 initialization λ°”λ‘œκ°€κΈ° Initialization — The Swift Programming Language (Swift 5.6) Initialization Initialization is the process of prepari..

[Swift] 곡식 λ¬Έμ„œ 정리 (13) - Inheritance (상속) (Override, final, super, μž¬μ •μ˜, μ˜€λ²„λΌμ΄λ“œ λž€?)

μ•ˆλ…•ν•˜μ„Έμš”, κ°μžμž…λ‹ˆλ‹€. μ˜€λŠ˜μ€ μŠ€μœ„ν”„νŠΈ 상속(Inheritance)에 λŒ€ν•΄μ„œ κ³΅λΆ€ν–ˆμŠ΅λ‹ˆλ‹€. μ˜€λ²„λΌμ΄λ“œ 라고 정말 μ€‘μš”ν•œ κ°œλ… 쀑 ν•˜λ‚˜μΈλ°μš”, 생각보닀 κ°œλ…μ€ κ°„λ‹¨ν•©λ‹ˆλ‹€. Swift Document chap.13 Inheritance λ°”λ‘œκ°€κΈ° Inheritance (상속) ν΄λž˜μŠ€λŠ” λ‹€λ₯Έ ν΄λž˜μŠ€λ‘œλΆ€ν„° 상속 ν• (받을) 수 μžˆλ‹€. 이것이 ν΄λž˜μŠ€κ°€ λ‹€λ₯Έ νƒ€μž…λ“€κ³Ό κ΅¬λΆ„λ˜λŠ” 근본적인 μš”μ†Œμ΄λ‹€. 단, ν•˜λ‚˜μ˜ 클래슀만 상속 ν•  (받을)수 μžˆλ‹€. Swift ν΄λž˜μŠ€λŠ” μŠˆνΌν΄λž˜μŠ€μ— μ†ν•œ λ©”μ„œλ“œ, ν”„λ‘œνΌν‹° 및 ν•˜μœ„ 슀크립트λ₯Ό ν˜ΈμΆœν•˜κ³  μ ‘κ·Όν•  수 있으며, ν•΄λ‹Ή λ©”μ„œλ“œ, ν”„λ‘œνΌν‹° 및 슀크립트의 overrideν•œ 버전을 μ œκ³΅ν•˜μ—¬ ν•΄λ‹Ή λ™μž‘μ„ μˆ˜μ •ν•˜κ±°λ‚˜ λ―Έμ„Έ μ‘°μ •ν•  수 μžˆλ‹€. SwiftλŠ” overrideμ •μ˜μ— μΌμΉ˜ν•˜λŠ” 슈퍼클래슀 μ •..

λ°˜μ‘ν˜•