Recent posts

11 minute read

iOS) 강한 순환 참조(Strong Reference Cycle)는 어떤 경우에 발생하나요?

less than 1 minute read

인스턴스가 계속 사용되야 하기 때문에 메모리에 남아있어야 한다. 라는 명분을 주는 것이 Strong Reference(강한 참조)입니다. 레퍼런스 카운트가 증가될 때는 강한 참조인 경우에 해당합니다. 이 강한 참조는 별도의 식별자를 명시하지 않으면 강한 참조로 여겨집니다.

WWDC22) Build a workout app for Apple Watch

2 minute read

WWDC22) Build a workout app for Apple Watch 세션에서 알아보는 HealthKit 에 대해서 기록해보았습니다. HealthKit 의 heart rate 를 사용하기 위한 목표를 가지고 시청한 세션입니다.

detent?

less than 1 minute read

detent 라는 용어를 개발자 문서에서 사용하는데 멈춤쇠라고 해석하기에 조금 부족함이 있었다. 그러던 중 WWDC22 세션 “Build a productivity app for Apple Watch” 에서 듣게 되어서 발췌했다.

iOS) thread-safe 와 atomic 에 대해서 설명하시오.

less than 1 minute read

thread-safe : 멀티스레드 프로그래밍에서 자원에 스레드가 동시에 접근해도 문제가 생기지 않는 것을 말한다. 즉, 여러 곳에서 접근하더라도 올바른 결과를 얻게된다. atomic : 멀티스레드 프로그래밍에서 데이터의 변경 전과 후에만 자원에 접근할 수 있음을 보장하는 것이다....

iOS) Swift 에서 GCD 로 atomic 을 어떻게 구현할 수 있나요?

less than 1 minute read

1️⃣ 하나의 serial queue 가 테스크를 담당하도록 함 concurrent queue 를 사용하거나 여러 개의 serial queue 를 사용하면 여러 스레드가 동시에 접근하는 경우 발생. 이를 막기 위해 근본적으로 하나의 serial queue 가 테스크를 담당. ...

iOS) mutating 키워드는 무엇일까?

less than 1 minute read

클래스의 인스턴스 메소드는타입의 구조 자신의 프로퍼티 값을 수정할 때 신경 쓸 필요가 없지만, 값 타입의 구조체나 열거형 등에서는 인스턴스 메소드가 내부 프로퍼티 값을 변경할 수 없습니다.

iOS) CaseIterable 을 채택한 enum

less than 1 minute read

Xcode 14 업데이트 후 KakaoSDKAuth에서 저장 프로퍼티에 @available 이 붙는 곳에 다음과 같은 에러 메시지가 등장하였습니다.

Objective-C) 전처리기

5 minute read

** 본 포스팅은 ‘프로그래밍 오브젝티브-C 2.0’ 을 읽으며 실습한 코드와 내용, 추가적으로 궁금한 내용을 정리한 글입니다.*

iOS) COW(Copy-on-Write)

1 minute read

OptimizationTips 문서에서 Value Type(값 타입)은 COW(Copy-on-Write) 최적화를 사용한다고 합니다.

iOS) COW(Copy-on-Write)

1 minute read

OptimizationTips 문서에서 Value Type(값 타입)은 COW(Copy-on-Write) 최적화를 사용한다고 합니다.

Objective-C) 서브클래싱을 고려할 때

less than 1 minute read

예를 들어 많은 객체들이 해당 클래스를 상속받아서 같은 뷰를 가져야 한다면 서브클래싱을 하는 것이 유용하다. 이를 통해 재사용성이 좋아진다.

Objective-C) 서브클래싱을 고려할 때

less than 1 minute read

예를 들어 많은 객체들이 해당 클래스를 상속받아서 같은 뷰를 가져야 한다면 서브클래싱을 하는 것이 유용하다. 이를 통해 재사용성이 좋아진다.

Objective-C) 카테고리와 프로토콜

8 minute read

본 포스팅은 ‘프로그래밍 오브젝티브-C 2.0’ 을 읽으며 실습한 코드와 내용, 추가적으로 궁금한 내용을 정리한 글입니다.

Objective-C) nullability

2 minute read

카테고리를 생성했는데 다음과 같이 인터페이스 위아래로 매크로가 있었다. 무엇일까?

iOS) dimming view 에 대해서

1 minute read

largestUndimmendDetentIdentifier 프로퍼티에 대해서 공부하면서 개발자 문서에 이야기하는 dimming view 의 개념에 대해서 이해해보았다.

WWDC22) What’s new in UIKit

9 minute read

What’s new in UIKit - WWDC22 - Videos - Apple Developer 본 글은 WWDC 를 보고, 번역 및 요약 그리고 실행해보는 스터디 프로젝트의 일환입니다.

RxSwift) why

5 minute read

RxSwift/Why.md at main · ReactiveX/RxSwift

swiftui) 이미지에 border 추가하기

less than 1 minute read

var body: some View { Image("featuredImage1") .resizable() .scaledToFill() .cornerRadius(5) // overlay 를 통해서 border 를 추가할 수 있다. ...

iOS) iOS 언어설정

less than 1 minute read

애플 소셜로그인의 경우에 버튼을 코드로 만들 수 있다. 이때 문구가 언어에 따라 설정된다. 앱 출시할 때 앱의 언어가 Korea 로 설정된다.

iOS) Dynamic Type

2 minute read

Dynamic Type 이란! 쉽게 말해서 우리가 기기에서 아래와 같이 텍스트 크기 를 설정할 수 있는데요. 이 때 사용자가 지정한 텍스트 크기에 따라 동적으로 크기가 변하는 것을 말해요!

iOS) Closure 표현방법

2 minute read

오늘은 정렬 함수인 sorted(by:) 를 공부해보다가 생긴 궁금증을 소개해볼게여

iOS) Alamofire 해체쇼

4 minute read

따란, URLSession 을 공부하면서 Alamofire 에서는 어떻게 구현했을까? 라는 궁금증에서 시작된 라이브러리 해체쇼

iOS) 원하는 영역에서만 QR코드 읽기

3 minute read

우리가 접하는 QR코드 리더기는 특정 영역안에서 QR코드가 읽힌다. 그 이유로 나는 많은 QR코드가 카메라에 잡히지 않도록 사용자를 유도함과 동시에 사용자가 본인의 QR코드를 입력하는 인식을 주기 위함이라고 생각이 든다. 핸드폰을 제대로 가져다 대지도 않았는데 조금이라도 카메라에 ...

iOS) Moya 로 GET, POST 통신하기

4 minute read

Moya 의 기본을 다루는 글은 많은데 막상 다양한 경우의 get 과 post 요청에 대해서는 정보가 많지 않아서 이번 프로젝트에서 사용한 방법을 공유하고 한다. 그리고 내가 가진 궁금증에 대해서 알아가면서 진행될 포스팅이다.

iOS) 다크모드 제한시키기

less than 1 minute read

다크모드를 설정해둔 경우 대응하지 못하는 경우가 많다. 다음은 다크모드를 대응하기보다 간단하게 제한시키는 방법이다.

iOS) Main.storyboard 없이 프로젝트 시작하기

less than 1 minute read

협업 시 info.plist 에서 시작 스토리보드를 설정하다보니 info.plist 파일에서 충돌이 나는 것이 위험이 있다고 생각해서 코드로 시작 스토리보드를 변경하도록 해보았다.

iOS) Core Data custom class

3 minute read

Core Data custom class 를 설정해보고 relationship 을 활용해서 관계형 데이터베이스화 해보자.

iOS) UITableView cell selectedBackground

1 minute read

selectedBackgroundView 와 selectionStyle 을 활용해서 cell 이 선택되었을때 불필요하게 변하는 회색 배경을 없앨 수 있다.

iOS) Gesture Recognizer 를 활용한 화면전환

1 minute read

modal 창으로 뷰컨트롤러를 present 한 경우 아래로 쓸어내리면 창이 닫힌다 하지만 .fullScreen 속성을 주게되면 dismiss 로 쓸어내려도 창이 닫히지 않는다.

Branch

less than 1 minute read

Branch

Automated kanban

less than 1 minute read

Automated kanban 을 사용하여 project 생성