일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 클린 코드
- UITextView
- ribs
- swift documentation
- 리펙터링
- Observable
- Refactoring
- 스위프트
- clean architecture
- collectionview
- Clean Code
- RxCocoa
- 리펙토링
- swiftUI
- UICollectionView
- Human interface guide
- Protocol
- rxswift
- Xcode
- uiscrollview
- 리팩토링
- uitableview
- ios
- tableView
- MVVM
- 애니메이션
- map
- SWIFT
- HIG
- combine
- Today
- Total
목록FileManager (2)
김종권의 iOS 앱 개발 알아가기
1. SDWebImage 오픈소스 까보기 - 캐싱 처리 로직 2. SDWebImage 오픈소스 까보기 - 메모리 캐싱, 디스크 캐싱 SDWebImage 메모리 캐시 SDMemoryCache.m 코드를 보면 SDMemoryCache를 선언해 놓았으며 이것은 NSCache 타입이므로 일반적으로 swift에서 메모리 캐싱을 사용하는 방법과 유사 (NSCache를 통해 메모리 캐싱하는 방법은 이전 포스팅 글 참고) @interface SDMemoryCache () { #if SD_UIKIT SD_LOCK_DECLARE(_weakCacheLock); // a lock to keep the access to `weakCache` thread-safe #endif } ... @interface SDMemoryCach..
긴 문자열 파일을 저장하고 싶은 경우 keychain (x) userDefault (x) 긴 문자열을 저장하는데 적합한 FileManager를 이용하여 documentDirectory에 저장 사용 방법 파일이름 정의: 상수 이용 struct Constants { static let sampleFileName = "sampleFile" } save 함수 정의 (String에 extension하여 사용하면 재활용성 상승) func saveFile(stringData: String, fileName: String) { let directory = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask)[0] let sampleFileName..