마틴 파울러 - 리팩터링 (2판) 의 9장 내용 중 기억하고 싶은 것 기록 ✏️✏️ 9.4 참조를 값으로 바꾸기 (change Reference to Value) - 참조로 다루는 경우: 내부 객체는 그대로 둔 채 그 객체의 속성산 갱신함. - 값으로 다루는 경우: 새로운 속성을 담은 객체로 기존 내부 객체를 통째로 대체함 값 객체는 불변이기 때문에 자유롭게 활용하기 쉽다. 불변 데이터 값은 프로그램 외부로 건네줘도 나중에 그 값이 나 몰래 바뀌어서 내부에 영향을 줄까 염려하지 않아도 된다. 값을 복제해 이곳저곳에서 사용하더라도 서로간의 참조를 관리하지 않아도 된다. 그래서 값 객체는 분산 시스템, 동시성 시스템에서 특히 유용하다. 9.5에서 나오지만.. 이런 값 객체의 특성 때문에 이번 리팩터링을 적용..
WWDC 2021 - Meet async / await in Swift 중, 등장배경만 기록한 글 입니다. ✏️ UIKit은 iOS 15부터 이미지 썸네일링을 할 수 있는 메소드들을 제공합니다. func preparingThumbnail(of: CGSize) -> UIImage? - synchronous한 방식 func prepareThumbnail(of: CGSize, completionHandler: (UIImage?) -> Void) - asynchronous 한 방식 이 썸네일 메소드를 예시로 하여 어떤 문제점이 있어서 async / await이 등장하게 되었는 지를 말씀해주십니다. # synchronous function 을 쓸 때 synchronous한 방식의 메소드를 쓰면 해당 쓰레드는 bl..
# notification을 눌렀을 때 들어오는 메소드 1) application(_:didReceiveRemoteNotification:fetchCompletionHandler:) - remote notification을 눌렀을 때 들어오는 메소드 2) userNotificationCenter(_:didReceive:withCompletionHandler:) - remote, local notification을 눌렀을 때 들어오는 메소드 - iOS 10 이상부터 remote notification을 이 메소드로 처리하라고 권장함. - Handling Notifications and Notification-Related Actions 문서에서는 항상 competionHandler() 를 콜하라고 적혀있음..
# USDZ USDZ는 애플과 픽사가 같이 만든 AR content를 표시하는 3D file format입니다. 이 글에서는 USDZ가 3D계의 PNG 같은 것이라고 하며 storage와 sharing을 최적화했다고 합니다. 그리고 USDZ는 안드로이드와 iOS에서 AR Preview를 볼 수 있는 WebAR Viewer의 일부라고 합니다. (iOS에서는 WebAR Viewer가 AR Quick Look을 말하는 것 같아요!) - 픽사: Usdz File Format Specification - 애플: USDZ Schemas for AR # AR Quick Look AR Quick Look 은 USDZ 파일을 display 해주는 것을 말합니다. Safari, 메시지, Mail, News, 메모 등의 애..
[1] iOS App과 WatchKit Extension 사이의 관계 WatchApp도 위젯처럼 Shared Container를 이용하여 간단히 앱과 워치 사이의 데이터를 공유할 수 있을 줄 알았으나,,, (참고: App과 Extension간 UserDefaults 공유하기 ) Watch는 이 방법말고 Watch Connectivity 라는 framework를 사용해서 iOS App과 paired watchOS app 사이의 two-way communication을 구현해줘야한다고 합니다. 그 이유는 다음과 같습니다. WatchOS 1에서는 iOS App과 Watchkit Extension이 둘다 아이폰 안에 있었으며 data store를 공유했습니다. 하지만 WatchOS 2부터는 WatchKit Ex..
- Total
- Today
- Yesterday
- SerializerMethodField
- 플러터 얼럿
- github actions
- flutter deep link
- Flutter getter setter
- Flutter Clipboard
- cocoapod
- 구글 Geocoding API
- flutter dynamic link
- Dart Factory
- Django FCM
- Watch App for iOS App vs Watch App
- flutter 앱 출시
- METAL
- Sketch 누끼
- 장고 Custom Management Command
- Django Firebase Cloud Messaging
- Flutter Spacer
- drf custom error
- ribs
- 장고 URL querystring
- Flutter Text Gradient
- Django Heroku Scheduler
- Python Type Hint
- flutter build mode
- ipad multitasking
- 플러터 싱글톤
- Flutter 로딩
- PencilKit
- DRF APIException
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |