일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- WWDC
- modern concurrency deep dive
- SWIFT
- 티스토리챌린지
- 야곰 # 야곰아카데미커리어스타터캠프 #iOS개발자 # 부트캠프
- APNS
- 오블완
- modern concurrency
- ios
- Today
- Total
목록iOS developer essential skills (26)
Geon
델리게이트 패턴과 콜백 함수의 차이점은 무엇인가요?iOS에서 Delegate Pattern은 주로 DIP를 적용, 추상화에 의존하게 구현한다.반면 콜백함수는 동등 혹은 상위 객체에 의존하게 된다.델리게이트 패턴과 옵저버 패턴의 차이점은 무엇이고 각각 어떨때 사용하면 좋나요?델리게이트 패턴은 내부에 delegate를 주입해야하고, protocol에 맞는 인터페이스를 구현해야 하다보니 1:1 정도의 소규모 데이터 전달시 주로 사용하기 좋습니다.옵저버 패턴의 경우 브로드 캐스트 처럼 1: 다 관계에서 사용하기 편하다.델리게이트 메서드에서 반환값을 사용하는 경우는 언제인가요?결과 전달: - 델리게이트 메서드가 어떤 작업을 수행한 후, 그 결과를 호출자에게 전달할 때 주로 사용- 예를 들어, 특정 조건을 만족하는..

Property Wrapper를 사용하는 이유와 장점은 무엇인가요?중복되는 코드 구현을 막을수 있다.편리함@State, @Binding, @ObservedObject 등의 Property Wrapper의 차이점과 사용 방법을 설명해주세요.state는 View 내부에서 값의 변화를 통해 View를 업데이트 할떄 주로 사용합니다.Binding은 부모 View 같이 외부 객체와 데이터를 연동시키기 위해 바인딩을 사용한다.ObservedObject는 Observable을 할수 있는 객체의 변화를(내부 Published) 감지하고자 하는 값에 주로 선언한다.StateObject는 한번의 init만 진행하고자 할때 주로 사용한다.Custom Property Wrapper를 만드는 방법과 사용 예시를 들어주세요.@p..
접근 제어자란 무엇인가요?다른 소스 파일 및 모듈의 코드에서 코드 일부에 대한 엑세스를 허용 또는 제한 하는것모듈: 하나의 프레임워크 (ex: import UIKit)openpublicinternalfileprivateprivate- 참조 타입만 가능- 값 타입일 경우 public이 최상단- 내부 변수에 따로 접근제어를 설정하지 않으면 internal- 기본값- 파일 내 접근만 가능- 컨텍스트 내부에만 접근 가능- 단일 선언 내에서만 사용 가능 open과 public의 차이점은 무엇인가요?public의 경우 모듈 내부에서는 상속, 재정의가 가능하지만 외부 모듈에서는 상속, 재정의가 되지 않는다.반면 open의 경우 모듈 외부에서도 상속, 재정의가 가능하다.접근 제어자를 사용하는 이유는 무엇인가요?규모 있..
로컬 푸시 알림과 원격 푸시 알림(Remote Push Notification)의 차이점은 무엇인가요?로컬 푸시 알림 (Local Push Notification)로컬 푸시 알림은 앱이 실행 중이거나 백그라운드에서 로컬 데이터에 기반하여 알림을 생성하고 표시하는 방식로컬 푸시 알림은 서버와의 통신이 필요 없으며, 주로 사용자의 기기 내에서 발생하는 이벤트나 일정에 따라 알림을 생성합니다.사용 사례:일정 알림: 캘린더 앱에서 사용자의 일정에 따라 알림을 설정.타이머 또는 알람: 시간 경과에 따라 알림을 표시.위치 기반 알림: 사용자가 특정 위치에 도달했을 때 알림을 트리거.원격 푸시 알림 (Remote Push Notification)원격 푸시 알림은 서버에서 생성되어 푸시 알림 서비스를 통해 사용자의 기..
Bluetooth 모드 설정앱에서 비즈니스 로직을 처리 하려고 하여, BLE 모드로 진행하였습니다.HID (Human Interface Device)Bluetooth HID (Human Interface Device)는 Bluetooth 무선 장치를 키보드로 사용하도록 설계되었습니다. 이 모드는 Android, iOS, MacOS, Windows에서 장치를 키보드로 인식하기 때문에 애플리케이션이 필요하지 않습니다.SPPBluetooth SPP (Serial Port Profile)는 RS-232 케이블(또는 다른 시리얼 통신 인터페이스)을 대체하기 위해 설계되었습니다. SPP는 두 장치 간의 데이터/정보를 보낼 때 훌륭합니다. Bluetooth SPP는 종종 Windows 호스트의 실제 COM 포트와 ..

앱의 각 상태(Not Running, Inactive, Active, Background, Suspended)에서 할 수 있는 작업은 무엇인가요?Not Running앱이 아직 실행되지 않았거나, 완전히 종료되어 동작하지 않는 상태InactiveInactive는 앱이 실행중이지만 사용자로부터 이벤트를 받을수 없는 상태사용자가 APP을 사용중이였다가, 전화나 문자를 수신했을경우Active앱이 event를 수신받을수 있는 상태사용자가 APP을 사용하는 상태BackGroundAPP이 백그라운드 상태에서 실행중인 상태 이고, 이벤트를 수신할수 있으며 코드를 실행할수 있다.이상태에서는 짧은 작업을 수행하고 제어권을 OS로 돌려놔야 한다.SuspendedAPP은 백그라운드에 있지만 코드는 실행되지 않는 상태OS는 메..