ios 165

Rust의 Copy와 Clone 차이점 정리

Rust의 Copy와 Clone 차이점 정리Rust의 소유권과 관련하여 Copy와 Clone의 차이점 정리 // 컴파일 Olet x = 5;let y = x;println!("{x}, {y}");// 컴파일 Xlet s1 = String::from("hello");let s2 = s1;println!("{s1}"); 둘 다 값을 다른 변수에 대입했을 뿐인데, 왜 하나는 되고 하나는 안 되는지 이 차이를 설명하는 개념이 Copy와 Clone 목차요약i32는 왜 대입 후에도 사용할 수 있을까?String은 왜 move될까?Copy란?Clone이란?헷갈리는 부분 정리구조체에서 Copy와 Clone 사용하기Copy를 붙일지 판단하는 기준정리 요약구분CopyClone호출 방식암묵적명시적사용 형태let y = x;..

What's new in SwiftUI (WWDC26)

What's new in SwiftUI (WWDC26) 목차Refreshed look and feelDocument-based appsPresentation and interactionData flow and performanceRefreshed look and feel새롭게 앱을 빌드하고 실행하면 Liquid Glass 디자인이 업데이트 된 모습으로 자동 적용 appearsActive를 사용해서 조건부로 버튼의 불투명도를 조절할 수 있음.Xcode 27부터는 Preview에 리사이징이 가능하도록 변경SwiftUI로 만든 앱은 이런 기능을 자동으로 지원하지만 UIKit과 SwiftUI를 모두 사용하고 있다면 고려해야할 사항 존재.Screen Geometry 확인, 디바이스 대신에 size class 사..

Apple/WWDC 2026.07.02

UIKit 앱 현대화하기 (Modernize your UIKit app) - WWDC26

UIKit 앱 현대화하기 (Modernize your UIKit app) - WWDC26 목차Adaptivity아이폰 앱에서 새롭게 적용되는 적응형 레이아웃 방식Bar and menus탭 바, 네비게이션 바, 메뉴 등 새로운 API 소개Apple Intelligence새로운 기능과 몇가지 변경사항 소개Agentic coding에이전트가 도와주는 새로운 스킬 소개 Adaptivity미러링을 통해서 아이폰도 런타임에 사용 가능한 씬 크기에 맞게 조정할 수 있음. 즉, 이제는 아이폰 하나의 사이즈만 지원하는 것이 아니라 여러 사이즈를 지원해야 함. 런타임에 더 잘 동작하기 위해서는 환경에 맞게 대응이 필요App lifecycle적응형 앱의 기반을 위해서는 App LifeCycle에서 Scene 라이프사이클..

Apple/WWDC 2026.07.01

SwiftUI의 Observation 알아보기 (Discover Observation in SwiftUI) - WWDC23

SwiftUI의 Observation 알아보기 SwiftUI에서 마법적인 기능에 대해서 소개할 것.Observation은 SwiftUI의 뷰가 반응형으로 동작할 수 있도록 도와줌. 목차What is ObservationSwiftUI property wrappers유용한 프로퍼티래퍼 알아볼 것Advanced usesObservable의 고급 사용 사례ObservableObject와 새로운 @Observable 매크로로 코드를 업데이트 하는 예시 Observation은 프로퍼티의 변화를 추적하는 Swift의 신기능.평범한 Swift의 타입을 매크로의 형태로 바꿔둠. Observable을 추가하므로써 UI가 데이터 모델의 변화에 대응할 수 있음.Swift의 새로운 매크로 시스템 덕분에 Swift 5.9에서는..

Apple/WWDC 2026.05.16

머신 러닝 기반 비디오 효과로 앱 향상하기 (Enhance your app with machine-learning based video effects) - WWDC25

머신 러닝 기반 비디오 효과로 앱 향상하기Video Toolbox는 비디오 앱에서 많이 사용되는 프레임워크로 여러 비디오 관련 요구사항을 충족하는 기능을 제공macOS 15.4부터 Video Toolbox는 VTFrameProcessor API로 개선해당 API는 Apple Silicon에 최적화된 새로운 ML 기반 비디오 처리 알고리즘을 포함해당 API를 이제 iOS 26에서도 사용할 수 있음.목차Video effects overview먼저 VTFrameProcessor API를 통해 현재 사용할 수 있는 효과Add effects to your app효과를 앱에 통합하는 기본 단계에 대해서 설명Example use cases주요 사용 사례를 위한 몇가지 예시를 구현하는 방법 시연 VTFrameProc..

Apple/WWDC 2026.05.07

SwiftUI의 새로운 기능 (Explore related documentation, sample code, and more) -wwdc25

SwiftUI의 새로운 기능 (Explore related documentation, sample code, and more) SwiftUI의 저성능 관련 개선사항부터 UI상의 버튼에 이르기까지 시스템 전반에 걸쳐 개선 목차Make the new design shine새로운 모든 시스템 기능 리뷰Framework foundations성능과 애니메이션, 레이아웃 관련 개선사항 공유SwiftUI across the systemApple 플랫폼 전반에 걸쳐 SwiftUI를 사용할 수 있는 새로운 환경 소개Expand SwiftUI views웹 콘텐츠, 리치 텍스트 지원 등 SwiftUI 뷰의 새 기능에 대해 알아볼 것. Make the new design shine네비게이션, 버튼, 탭바, macOS, Pad..

Apple/WWDC 2026.05.02

기기별 RAM 용량에 따른 이미지 동적 캐시 사이즈 설계

기기별 RAM 용량에 따른 이미지 동적 캐시 사이즈 설계 글로벌 서비스를 운영하다 보면, 여전히 RAM 2GB~3GB 수준의 구형 기기 사용자를 무시할 수 없음.iPhone 8, iPhone SE 1세대, 일부 보급형 기기처럼 메모리 여유가 크지 않은 환경에서는, 캐시 전략 하나만으로도 앱 안정성이 크게 달라질 수 있음. 이미지 캐시는 사용자 경험을 빠르게 만들기 위한 중요한 장치지만, 동시에 메모리를 많이 사용하는 기능이기도 함.그래서 캐시 크기를 고정값으로 두면 다음과 같은 문제가 생김저사양 기기에서는 메모리 압박으로 크래시 위험이 커짐고사양 기기에서는 더 많은 자원을 활용하지 못해 비효율이 발생함기기의 물리적 RAM 용량을 기준으로 이미지 캐시 사이즈를 동적으로 결정하는 방식을 적용 왜 동적 설정이..

swift rethrows

swift rethrows 함수나 메서드는 rethrows 키워드를 사용하여 선언할 수 있음.이는 함수 매개변수 중 하나가 에러를 던질 경우에만 에러를 던진다는 것을 의미.이러한 함수와 메서드를 rethrowing 함수(rethrowing functions) 또는 rethrowing 메서드(rethrowing methods)라고 부름. func someFunction(callback: () throws -> Void) throws { try callback()} rethrowing 함수와 메서드는 적어도 하나의 throwing 함수 매개변수를 가져야 함.rethrowing 함수나 메서드는 오직 catch 블록 안에서만 throw 문을 포함할 수 있음. 이 규칙을 통해 do-catch 구문 안에서 ..

SpeechAnalyzer

SpeechAnalyzer 음성으로 입력된 오디오 콘텐츠를 다양한 방식으로 분석하고, analysis session을 관리 OverviewSpeech 프레임워크는 특정 유형의 analysis(분석) 및 transcription(받아쓰기) 기능을 제공하기 위해 analyzer에 추가할 수 있는 여러 모듈을 제공 대부분의 사용 사례에서는 음성을 텍스트로 변환하는 SpeechTranscriber 모듈만으로 충분. SpeechAnalyzer 역할관련 모듈을 보관음성 오디오 입력을 수신전체 분석 흐름을 제어각 모듈의 역할허용되는 입력 형태에 대한 가이던스를 제공자체 분석 결과 또는 transcription 결과를 출력비동기 기반으로 흐름 분석Analysis는 비동기로 수행.입력, 출력, 세션 제어는 서로 분리..

SpeechTranscriber 정리 + DictationTranscriber

SpeechTranscriber 정리 + DictationTranscriber SpeechTranscriber, DictationTranscriber 각각에 대해서 정리하고, SpeechTranscriber의 속성과 구현을 하나씩 확인. 목차 SpeechTranscriberOverviewCheck device supportDictationTranscriberOverviewImprove accuracySpeechTranscriber와 DictationTranscriber 비교 정리SpeechTranscriber 자세히 보기isAvailable과 supportedLocales 프로퍼티 정의Configuring transcriptionSpeechTranscriber.ReportingOptionSpeechTra..