Swift UI @Observable, @State, @Environment, @Bindable, @Binding으로 상태관리 마스터하기
오늘은 SwiftUI에서 상태를 관리할 수 있게 해주는,swift UI @Observable, @State, @Environment, @Bindable, @Binding에 대해 알아보겠습니다. 이 방법은 ios17이상에서만 적용할 수 있는데요.이전의 방법에 대해서는 아래 글을 참조해 주세요.(이 글을 이해하는데 도움이 됩니다.)>> SwiftUI @State vs @Environment, @EnvironmentObject vs @StateObject, @Binding으로 상태관리 이해하기 1. ios17이상에서의 상태관리 변화구체적으로 알아보기 전에, 상태관리에 무엇이 바뀌었는지 볼까요?우선은 이런 변화가 있었다는 것만 보고,아래에서 하나씩 구체적으로 보겠습니다. ios17이상 @Observable사용..
2026. 2. 26.
SwiftUI VStack, HStack, ZStack, Spacer와 overlay 총정리
오늘은 SwiftUI에서 매우 중요한 역할을 하는,VStack, HStack, ZStack, Spacer와 overlay에 대해 정리하겠습니다. 1. VStack, Hstack 그리고 ZStack각각에 대해 알아보기 전에,3가지를 한 번에 표로 비교해서 전체 그림을 볼까요?대략 이런 것들이 있구나 하고 보시고요.아래에서 하나씩 구체적으로 알아보겠습니다. VStackHStackZStack배치방향수직(세로)수평(가로)깊이(겹침)기본 크기width :자식 뷰 중 가장 넓은 뷰의 너비,height: 모든 자식 뷰 높이의 합width: 모든 자식 뷰 너비의 합, height:자식 뷰 중 가장 높은 뷰의 높이자식 뷰 중 가장 큰 뷰의 크기Spacer() 효과수직방향 확장수평방향 확장영향 없음자식 뷰 배치 순서위에..
2026. 2. 25.
iOS 앱 최소버전 결정 기준 정리
iOS앱을 개발을 시작하면,최소버전을 몇으로 해야할지 결정해야 하는 순간이 옵니다.오늘은 이럴 때,어떤 기준들을 가지고 결정할 수 있는지,정리해 보겠습니다. 1. 애플이 제시하는 사용 현황가장 먼저 살펴볼 것은 iOS버전별로,사용현황을 보는 것인데요.구체적인 정보를 알고 있는 애플은,이 정보를 웹사이트에 게시하고 있습니다.2025년 1월 기준으로는 아래와 같은데요. 이 정보는 구글에서 "ios appstore 지원"이라고 검색하면,처음으로 나오는 애플의 사이트에서 얻을 수 있는데요.이것만 보면, ios16이하는 5%밖에 안되는 군요. 그런데 사실 우리가 고민하는 지점은,iOS15인가 16인가하는 경우가 많습니다.SwiftUI를 사용하면서,async 등 이런저런 기능을 사용하면서,최소한의 버전을 코딩하..
2025. 3. 21.
SQLite의 Coalesce 함수 총정리하기
오늘은 SQLite의 Coalesce 함수에 대해 정리해 보겠습니다. 1. Coalescecoalesce의 원래 뜻은 "합쳐지다" 또는 "병합하다"인데요.데이터베이스 나 SQL에서는,NULL 값을 다른 의미 있는 값으로 대체하는 데 주로 사용됩니다. SQL문에서는 여러개의 표현식 중,NULL이 아닌 첫 번째 값을 찾아서 반환합니다. COALESCE(expression1, expression2, ..., expressionN) 예를 들어,아래에서 쿼리는 첫번째 NULL이 아닌,'Hello'를 반환합니다. SELECT COALESCE(NULL, NULL, 'Hello', 'World'); 2. 예제예제를 보면서 COALESCE를 좀 더 이해해 볼까요.먼저 직원 테이블을 아래와 같이 만듭니다. CREATE ..
2025. 1. 24.
Kotlin Smart Cast(스마트캐스트) 총정리
오늘은 Kotlin의 Smart Cast에 대해 정리하겠습니다. 1. Smart Cast(스마트 캐스트)Smart Cast(스마트캐스트)는 이름 자체에서 알 수 있듯이,컴파일러가 타입을 자동으로 추론해서,명시적으로 타입을 변환하지 않아도,사용하도록 해주는 기능입니다. 타입을 검사하고, 변환하는 것까지,자동으로 Smart하게 해주는 것 이지요. 이를 이용하면,코드가 짧아져 가독성이 좋아지고,유지보수성도 좋아집니다. 2. is를 사용한 Smart Cast2-1. is smart cast가장 기본적인 스마트 캐스트의 사용법은,is 키워드를 사용해,변수의 타입을 검사한 후,해당 타입으로 자동 캐스트하는 것 입니다. 아래는 'is'키워드를 사용해,any의 타입검사를 하고,String에 해당하면 String으로 변..
2025. 1. 22.