λͺ©λ‘πŸ“±πŸŽ iOS (62)

Bibi's DevLog πŸ€“πŸŽ

[iOS] Singleton 싱글톀 νŒ¨ν„΄μ΄λž€ 무엇이고, 단점과 λŒ€μ•ˆμ€ 무엇인가?

What Is a Singleton and How To Create One In Swift Are Singletons Bad 이 글은 μœ„μ˜ 두 λ¬Έμ„œμ— κΈ°λ°˜ν•˜μ—¬ 직접 μ •λ¦¬ν•œ κΈ€μž…λ‹ˆλ‹€.😷 싱글톀 νŒ¨ν„΄μ€ μ†Œν”„νŠΈμ›¨μ–΄ κ°œλ°œμ— 맀우 널리 μ‚¬μš©λ˜λŠ” λ””μžμΈ νŒ¨ν„΄μ΄μ§€λ§Œ, μ•ˆν‹°νŒ¨ν„΄μœΌλ‘œ κ³ λ €λ˜μ–΄μ§„λ‹€. κ·Έ 이유λ₯Ό μ‚΄νŽ΄λ³΄μž. 싱글톀 νŒ¨ν„΄μ΄λž€ 무엇인가 싱글톀 νŒ¨ν„΄μ€ 클래슀의 μΈμŠ€ν„΄μŠ€κ°€ 단 ν•˜λ‚˜λ§Œ μƒμ„±λ˜λ„λ‘ ν•˜λŠ” νŒ¨ν„΄μ΄λ‹€. ν”„λ‘œκ·Έλž¨μ—μ„œ μ–΄λ–€ μ‹œμ μ—μ„œλ„ κ·Έ 클래슀의 μΈμŠ€ν„΄μŠ€λŠ” λ”± ν•˜λ‚˜λ§Œ μ‘΄μž¬ν•˜λ„λ‘ 보μž₯ν•˜λŠ” 것이 싱글톀 νŒ¨ν„΄μ˜ λͺ©μ μ΄λ‹€. 예λ₯Ό λ“€λ©΄, μ• ν”Œμ˜ ν”„λ ˆμž„μ›Œν¬μ—μ„œλŠ” μ•„λž˜μ™€ 같은 객체듀이 μ‹±κΈ€ν†€μœΌλ‘œ μ‚¬μš©λœλ‹€. // Shared URL Session let sharedURLSession = URLSession.shared // D..

πŸ“±πŸŽ iOS 2023. 2. 14. 23:04
[Apple Developer Docs] Choosing Between Structures and Classes (ꡬ쑰체와 클래슀 μ‚¬μ΄μ—μ„œ μ„ νƒν•˜κΈ°)

원본 λ¬Έμ„œ : Apple Developer Documentation ꡬ쑰체와 클래슀 μ‚¬μ΄μ—μ„œ μ„ νƒν•˜κΈ° 데이터와 λͺ¨λΈ 행동을 μ–΄λ–»κ²Œ μ €μž₯할지 κ²°μ •ν•©λ‹ˆλ‹€. κ°œμš” ꡬ쑰체와 ν΄λž˜μŠ€λŠ” λ‹Ήμ‹ μ˜ μ•±μ—μ„œ 데이터λ₯Ό μ €μž₯ν•˜κΈ° μœ„ν•œ, 그리고 행동듀을 λͺ¨λΈλ§ν•˜κΈ° μœ„ν•œ 쒋은 μ„ νƒμž…λ‹ˆλ‹€. ν•˜μ§€λ§Œ μ΄λ“€μ˜ μœ μ‚¬μ„±μ΄ λ‘˜ 쀑 ν•˜λ‚˜λ₯Ό μ„ νƒν•˜λŠ” 것을 μ–΄λ ΅κ²Œ λ§Œλ“€ 수 μžˆμŠ΅λ‹ˆλ‹€. λ‹Ήμ‹ μ˜ 앱에 μƒˆλ‘œμš΄ 데이터 νƒ€μž…μ„ μΆ”κ°€ν•  λ•Œ, μ–΄λ–€ 선택이 합리적인지 μ„ νƒν•˜λ„λ‘ λ„μ™€μ£ΌλŠ” μ•„λž˜μ˜ ꢌμž₯사항을 λ”°λ₯΄λŠ” 것을 κ³ λ €ν•΄ λ³΄μ‹­μ‹œμ˜€. 기본적으둜 ꡬ쑰체λ₯Ό μ‚¬μš©ν•©λ‹ˆλ‹€. Objective-C μƒν˜Έμš΄μš©μ„±μ΄ ν•„μš”ν•œ 경우, 클래슀λ₯Ό μ‚¬μš©ν•©λ‹ˆλ‹€. 당신이 λͺ¨λΈλ§ν•˜κ³  μžˆλŠ” λ°μ΄ν„°μ˜ 동일성을 관리할 ν•„μš”κ°€ μžˆλ‹€λ©΄, 클래슀λ₯Ό μ‚¬μš©ν•©λ‹ˆλ‹€. κ΅¬ν˜„μ‚¬ν•­λ“€μ„ κ³΅μœ ν•¨μœΌλ‘œμ„œ 행동을 μ±„νƒν•˜κΈ° μœ„..

[Swift Language Guide (5.7)] Structures and Classes ꡬ쑰체와 클래슀

[Swift Language Guide (5.7)] Structures and Classes ꡬ쑰체와 클래슀 Structures and Classes - The Swift Programming Language (Swift 5.7) ꡬ쑰체*와 *클래슀 λŠ” λ‹Ήμ‹ μ˜ ν”„λ‘œκ·Έλž¨ μ½”λ“œμ˜ ꡬ성 μš”μ†Œκ°€ λ˜λŠ” λ‹€λͺ©μ μ˜ μœ μ—°ν•œ κ΅¬μ‘°λ“€μž…λ‹ˆλ‹€. μƒμˆ˜, λ³€μˆ˜, ν•¨μˆ˜λ₯Ό μ •μ˜ν•  λ•Œμ™€ 같은 ꡬ문을 μ‚¬μš©ν•΄ λ‹Ήμ‹ μ˜ ꡬ쑰체와 ν΄λž˜μŠ€μ— ν”„λ‘œνΌν‹°λ“€κ³Ό λ©”μ„œλ“œλ“€μ„ 더해 κΈ°λŠ₯을 더할 수 μžˆμŠ΅λ‹ˆλ‹€. λ‹€λ₯Έ ν”„λ‘œκ·Έλž˜λ° μ–Έμ–΄λ“€κ³Ό λ‹€λ₯΄κ²Œ, SwiftλŠ” μ‚¬μš©μž μ •μ˜ ν΄λž˜μŠ€λ‚˜ ꡬ쑰체λ₯Ό μœ„ν•œ λ³„λ„μ˜ μΈν„°νŽ˜μ΄μŠ€μ™€ κ΅¬ν˜„ νŒŒμΌμ„ μƒμ„±ν•˜λ„λ‘ μš”κ΅¬ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. Swiftμ—μ„œλŠ”, ν•˜λ‚˜μ˜ νŒŒμΌμ— κ΅¬μ‘°μ²΄λ‚˜ 클래슀λ₯Ό μ„ μ–Έν•˜κ³ , κ·Έ κ΅¬μ‘°μ²΄λ‚˜ ν΄λž˜μŠ€μ— λŒ€ν•œ μ™ΈλΆ€ μΈν„°νŽ˜μ΄μŠ€λŠ” λ‹€..