최근에 포켓몬 빵을 사기 위해 마트 오픈 시간 전에 줄은 선다는 이야기를 전해 들었다. 이와 같이 ‘줄서기’에서 줄이 영어로 Queue 이다.그럼 Queue타입의 특징을 알아보자.큐는 스택과 다른 점은 대표적으로 FIFO(First In First Out) 이다. 줄서
SRP : Single-Responsibilit Principle한 클래스는 단 한 가지의 책임을 가져야한다.높은 응집도 → 하나의 기능을 고칠 때 파일 한 개만 수정한다. (낮은 결합도)낮은 응집도 → 하나의 기능을 고칠 때 여러 파일을 수정한다. (높은 결합도)1번
Frame과 Bounds는 UIView의 인스턴스 프로퍼티 이다. 사진과 같이 Frame, Bounds 모두 CGRect 타입이다. '사각형' 으로 그려진다. Frame의 특징 SuperView(상위뷰)를 기준으로 위치와 크기를 나타낸다. 사진과 같이 View를 3
클로저를 인자로 받는 함수Transforming a Sequence : 시퀀스 내용을 변형하는 함수Sorting Elements : 시퀀스의 내용 변경 없이 정렬만 해주는 함수Iterating Over a Sequence's Elements : 시퀀스의 내용을 반복하
메모리의 구조 Q. 컴퓨터의 주기억장치는 어떤어떤 영역을 가지고 있을까? 모르겠다. ARC Q : ARC는 무엇인가? Auto Reference Count 메모리 영역 중 힙 영역을 관리한다. 인스턴스에서 사용하는 메모리를 해제하여 메모리를 다른 용도로 사용할 수 있도
어플리케이션의 메모리 영역의 일부분을 Caching에 사용하는 것(단점) 어플리케이션이 종료되어 메모리에서 해제되면 이 영역에 있던 리소스들은 OS에 반환되면서 Memory Caching 되어 있던 리소스들은 사라짐데이터를 파일 형태로 디스크에 저장하는 것(단점) Di
Stack vs Heap 메모리에서 이득을 챙기자 !
개발 공부를 하다보면 분명 강의의 코드를 따라 쳐도 실행이 안되는 경우가 있다.프로그래밍 언어 뿐 아니라 컴퓨터 구조를 알면 다양한 시점에서 문제 해결을 할 수 있다.컴퓨터란? 미지의 대상이 아닌 분석의 대상출력에 집중하지 않고 성능, 용량, 비용을 고려하는 개발자가
앱의 콘텐츠나 데이터 자체를 저장/보관하는 특별한 객체를 무엇이라고 하는가? User Defaults 앱 실행 중 키-값 쌍을 지속적으로 저장하는 사용자의 기본 데이터베이스에 대한 인터페이스이다. 대용량의 데이터보다 자동로그인 여부, 아이디, 환경설정에서의 기본 설정
App store 및 운영 체제는 사용자의 기기 및 운영체제 버전에 맞게 app delivery를 조정하여 최소한의 설치공간을 사용할 수 있도록 iOS, tvOS, watchOS앱들의 설치를 최적화한다.App thinning이라고 불리는 최적화를 통해 device의 기
코코아 터치 프레임 워크에서 앱 라이프 사이클을 시작하는 함수앱의 본체에 해당하는 객체인 UIApplication객체(singleton)를 생성하고 앱의 Life Cycle을 관리한다.Delegate 객체를 생성하고 info.plist에서 필요한 nib file을 로드
Foreground는 메모리 및 기타 시스템 리소스에 높은 우선순위를 가지며 시스템은 이러한 리소스를 사용할 수 있도록 필요에 따라 background 앱을 종료한다.Background는 가능한 적은 메모리 공간을 사용 해야한다. 따라서, 사용자의 이벤트를 받는데에 제
애플리케이션이 실행된 직후 사용자의 화면에 보여지기 직전에 호출 func application(\_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: UIApplicationLaunchOp
Xcode가 넣으라고 해서 넣다가 문득 생각해보니 몰라서 알아보았다.UIKit의 대부분 구성요소는 non-atomic하게 구성되어있는데, 이는 곧 Thread-safe하지 않다는 것을 의미한다. 모든 속성을 Thread-safe하게 설계하기엔 UIKit이 너무 방대한
앱이 In-Active 상태가 되는 시나리오를 설명하시오. In-active(비활성화): 앱이 실행되면서 포어그라운드에 진입하지만 어떠한 이벤트도 받지 않는 상태이다. 앱 사용 중 전화나 메시지 같은 interrupt 발생 시 미리알림 같은 특정 알림창이 화면을 덮어
: 백그라운드에서 스레드를 관리하면서 작업을 실행시키는 저수준 API를 제공하는 라이브러리Dispatch Queue : FIFO 순서로 작업을 실행Serial Dispatch Queue : 한 번에 한 작업만 실행Concurrent Dispatch Queue : 작업이
iOS 앱을 만들고, User Interface를 구성하는 데 필수적인 프레임워크 이름은 무엇인가? : UIKit이다. UIKit : iOS Application의 cocoaTouch에서 User Interface를 구현하고 이벤트를 관리하는 프레임워크 UIKit F
모든 View Controller 객체의 상위 클래스는 무엇이고 그 역할은 무엇인가? 모든 View Controller 객체의 상위 클래스는 UIViewController이다. UIViewController는 뷰의 내용을 업데이트하고, 뷰와 사용자의 상호 작용에 응답
remote notification sound 설정 방법. 사운드 파일 이름.caf 파일을 추가 project - TARGETS - Build Phases - Copy Bundle Resouces -> '+'추가 - 사운드 파일 이름.caf payload 에 사운
ReactorKit의 기본적인 구조에 대해서 기록하고자 한다.최근 했던 프로젝트에서 ReactorKit을 이용하여 구성했다.ReactorKit은 단방향 데이터 플로우를 가지고 리액터를 이용하여 뷰에서의 액션을 처리하고 데이터를 수정한다.해당 데이터의 bind 처리를 하
iPhone 5iPhone 5ciPhone 5siPhone 6iPhone 6 PlusiPhone 6siPhone 6s PlusiPhone 7iPhone 7 PlusiPhone SE (1st generation)iPhone 8iPhone 8 PlusiPhone XiOS
기존에 포스트 맨으로 테스트를하던 Cloud Messaging API(기존) 버전이 사용 중지되면서Firebase Cloud Messaging API(V1)으로 마이그레이션 하게 되었는데테스트를 하는 방법도 달라져서 포스트하게 됐다.appleDeveloper - key