본문 바로가기

분류 전체보기98

[PhotoKit] 0. PhotoKit 소개 PhotoKitPhotos 앱이 관리하는 이미지와 비디오 Asset들(iCloud Photos 및 Live Photos도 포함)을 작업해야할때 사용하는 프레임워크.!Photokit을 사용하면 Photos 앱이 iOS, MacOS, TVOS 및 VisionOS에서 관리하는 이미지 및 비디오 Asset에 접근할 수 있음.사용자의 사진을 편집하거나 표시하거나 앨범, 순간 및 공유 앨범과 같은 Asset의 Collection을 관리 할 수 ​​있음.이 프레임워크는 사용자의 기기와 iCloud에 있는 사진에 액세스 할 수 있도록 해줌.   앱에서 사람의 사진에 액세스하는 것 외에도 앱 확장을 구축하고 iOS 또는 MacOS의 사진 앱에 직접 앱 기능을 통합 할 수 있음.앱을 앱 스토어에 제출할 때 앱 번들에 앱 .. 2024. 8. 3.
[Swift] class func vs static func 보호되어 있는 글 입니다. 2024. 7. 31.
스마트폰과 스마트워치간에는 어떻게 통신할까? (블루투스) 1. BLE Scanning / Advertising BLE Scanning 과 Advertising 이 이뤄지는 원리와 방식 GAP* 를 통해 관리됨. Advertising- GAP peripheral 로 동작하는 디바이스에서 GAP central로 동작하는 디바이스에 자신을 알리는 것.- Bluetooth Classic은 총 79개의 채널을 사용함.- BLE의 경우에는 전체 40개의 채널중에 ch37, 38, 39 단 3개의 채널만 advertising 을 위해 사용함. central이 pheripheral 보다는 조금 더 많은 양의 전류를 소모함. * BLE 프로토콜 스택 중에 하나인 GAP(Gerneric Access Profile) 2. BLE ConnectionMaster 와 Slave는 Co.. 2024. 7. 25.
[Foundation] Bundle 클래스 보호되어 있는 글 입니다. 2024. 7. 21.
[Swift] inout 매개변수 안녕하세요 로디입니다. 오늘은 Swift의 inout 키워드에 대해서 간단하게 정리하겠습니다. Swift에서, 함수의 매개변수(parameter)로 전달되는 "값 타입"은 기본적으로 상수(let)입니다.* 값 타입Swift의 값 타입은 구조체(struct)를 사용하여 표시합니다. 예를 들어 String, Int, Array, Dictionary 등. 그렇기에, 함수의 body 내부에서 매개변수로 전달받은 값을 바꾸는 것은 불가능합니다.아래와 같이 매개변수 값을 바꾸려고하면 컴파일러가 에러를 표시하죠. 그렇다면 함수 내부에서 매개변수의 값을 바꾸는 게 영영 불가능할까요?아뇨, 매개변수를 inout 키워드를 이용해 inout 매개변수로 정의하면 가능합니다. Swift의 인아웃 매개변수(In-Out Param.. 2024. 7. 19.
[Swift] Method Dispatch 란 보호되어 있는 글 입니다. 2024. 7. 15.
[Swift] LazySequence 보호되어 있는 글 입니다. 2024. 7. 8.
[Swift] 문자열 String 보호되어 있는 글 입니다. 2024. 7. 7.
[알고리즘] 해시 해시- 키를 통해 값을 찾을 수 있음- 그러나 값을 통해 키를 찾을 수는 없음.- 키 자체가 해시 함수에 의해 값이 있는 인덱스가 되므로 값을 찾기 위한 탐색 과정이 필요 없음.- 값을 익덱스로 활용하려면 적절한 변환 과정을 거쳐야함. 해시 테이블- 키와 대응한 값이 저장되어 있는 공간- 해시 테이블의 각 데이터를 버킷이라고 부름. 해시 함수코딩테스트에서 해시 함수를 직접 구현하라는 문제가 나오는 경우는 거의 없음.Swift의 STL은 이미 Dictionary 를 제공하는데, 해시와 거의 동일하게 동작하므로 해시를 쉽게 사용할 수 있음.해시 함수에 의해 얻어지는 값을 해시값, 해시코드, 해시 체크섬으로도 부름. 해시 함수를 구현할 때 고려해야할 부분- 첫째, 해시 함수가 변환한 값은 인덱스로 활용해야 함.. 2024. 7. 4.
[iOS] L10n 대응하기 (with Tuist and SwiftGen) 보호되어 있는 글 입니다. 2024. 7. 2.
[Git/Github] 깃허브의 특정 파일을 모든 히스토리에서 제거하기 github로 버전 관리를 하다보면 이슈가 될 만한 파일들(노출하면 안될 파일, 협업에 충돌을 야기할 수 있는 파일 등)을 실수로 올린 것을 깨닫고 당황할때가 있다. 당황하지말고 얼른 해당 파일들을 흔적도 없이 지워야한다.모든 히스토리에서 파일을 제거하고 그 흔적까지 완전히 없애려면, git-filter-repo 유틸리티를 사용하는 것이 가장 편하다.우선 로컬 저장소에서 히스토리를 모두 제거하는 작업을 수행한 후, 원격 저장소에 강제로 푸시해야한다. 1. git-filter-repo 설치하기brew install git-filter-repo 2. 파일 제거git filter-repo --path --invert-paths --force 저장소의 히스토리를 재작성하게 된다. 브랜치의 트래킹 정보가 손실될.. 2024. 7. 1.
[네트워크/보안] OAuth2.0 보호되어 있는 글 입니다. 2024. 6. 30.