🍏(114)
-
[Swift] ActivityKit / WidgetKit / Live Activity / Dynamic Island
보호되어 있는 글입니다.
2024.03.18 -
[Swift] Tail Call Optimization / TCO / 꼬리재귀
꼬리 재귀 최적화란? 꼬리 재귀 최적화는 컴파일러가 꼬리 호출(tail call), 즉 함수의 마지막 동작이 함수 호출인 경우, 새로운 스택 프레임을 생성하는 대신 현재의 스택 프레임을 재사용하여 함수를 호출하는 최적화 기법이다. 이 최적화를 통해 함수 호출에 따른 오버헤드를 줄이고, 스택 오버플로우의 위험을 감소시킨다. func sumPrefix(_ n: Int, _ acc: Int) -> Int { if n == 0 { return acc } return sumPrefix(n - 1, acc + n) } print(sumPrefix(1000000, 0)) 해당 재귀를 부르면 어떻게 될까 ? - 대부분의 정답은 어느정도 depth를 들어가다가 한계를 맞이하고 segmentfault를 띄울 것 이다. 라..
2024.03.16 -
[Swift] Metadata
메타데이터(Metadata or Metainformation)는 데이터(data)에 대한 데이터. 보통은 다른 데이터의 내용, 특성, 품질, 조건 등을 설명하는 정보입니다. 이렇게 흔히들 간단히 정의하지만, 캐런 코일(Karen Coyle)에 의하면 '어떤 목적을 가지고 만들어진 데이터(constructed data with a purpose)'라고도 정의한다. 즉, 다른 데이터를 정의하고 기술하는 데이터(data that defines and describes other data)입니다. 예를 들어, 디지털 이미지 파일의 메타데이터에는 촬영 날짜, 사용된 카메라의 모델, 이미지의 해상도 등의 정보가 포함될 수 있습니다. HTML 문서에서 메타데이터는 태그를 사용하여 문서의 인코딩, 저자, 설명, 키워..
2024.03.14 -
[Firebase] iOS UIKit에서의 Google OAuth 로그인 연동 방법 해결 과정
Firebase 를 시작하여 프로젝트 만들기 앱에 Firebase를 추가하여 시작하기 (bundle id, nickname 등록) 구성 파일 다운로드(Google OAuth 사용자는 굳이 다운로드 안해도됨. 잠시 뒤에 credentials가 포함된 구성파일을 준다.) Upload 해도되는가에 대해서 찾아봤는데, 뭐 중요한 내용은 없다고 한다. (https://groups.google.com/g/firebase-talk/c/EEEwttbpPJU) 그래도 저라면 안 올릴 것 같습니다. Package Dependency 추가 https://github.com/firebase/firebase-ios-sdk Appdelegate에 코드 추가 더보기 import UIKit import FirebaseCore @UI..
2024.03.03 -
[SwiftUI] Swift Charts / 차트
Swift Charts Construct and customize charts on every Apple platform. iOS 16 버전 부터 등장한 chart 입니다. Swift Charts | Apple Developer Documentation Construct and customize charts on every Apple platform. developer.apple.com Hello Swift Charts - WWDC22 - Videos - Apple Developer Say hello to Swift Charts — a flexible framework that helps you create charts entirely in SwiftUI that look and feel right at..
2024.02.29