카카오톡 소셜 로그인 구현하기이번에 과제를 진행하면서 애플 로그인을 넣어주셔서 추가적으로 다른 소셜 로그인이 들어가면 좋을 것 같아 카카오톡 소셜 로그인을 넣기로 했다. 일단 카카오 로그인에 관련되서 공식 사이트의 자세한 내용이 있어 생각보다 크게 어렵지 않게 구현할 수 있었다.https://developers.kakao.com/docs/latest/ko/kakaologin/common Kakao Developers카카오 API를 활용하여 다양한 어플리케이션을 개발해보세요. 카카오 로그인, 메시지 보내기, 친구 API, 인공지능 API 등을 제공합니다.developers.kakao.com 공식문서를 토대로 살펴보면 카카오 계정을 인증하는 방법에 따라 카카오 로그인은 두가지로 나뉜다.카카오톡으로 로그인 ..
iOS 앱에서 동기와 비동기는 아주 자주사용되는 내용이고 사실 강의를 들으면서도 좀 어려운 개념이었다. 여러번 반복해서 들으면서 이 개념을 조금 더 익힐 수 있도록 해야겠다. 오늘 공부한 비동기 , 동시성 프로그래밍 관련 2탄 시작해보자 동기(sync) vs 비동기(async) 동기(sync) 동기적인 작업은 순차적으로 실행되며, 한 작업이 끝나야 다음 작업이 실행된다. 동기적인 작업은 보통 현재 실행 중인 스레드에서 처리되며, 작업이 완료될 때 까지 해당 스레드는 차단된다. 비동기(async) 비동기적인 작업은 순차적으로 실행되지 않고 별도의 스레드에서 바로 새로운 작업이 시작된다. 비동기적 작업은 보통 백그라운드 스레드에서 처리되며, 작업이 완료되면 메인 스레드로 결과를 반환하거나 콜백 함수를 호출하..
iOS 메인스레드 (Thread 1) 의 역할 iOS 애플리케이션은 메인 스레드를 생성하고 메인 런 루프(Main Run Loop)를 실행하여 앱의 이벤트를 처리한다. 이벤트는 주로 사용자의 상호작용(터치, 제스처)이나 시스템에서 발생하는 알림(앱의 상태변화, 백그라운드 작업 등) 등을 포함한다. 사용자 인터페이스(UI) 처리 메인 스레드는 앱의 UI를 처리하는 주된 스레드이다. 사용자의 모든 상호 작용은 메인 스레드에서 처리된다. 화면에 보이는 요소들의 업데이트인 레이아웃 변경, 텍스트 업데이트, 이미지 로드 등은 메인 스레드에서 수행된다. 이벤트 처리 사용자의 터치, 제스처 등의 입력은 이벤트로 변환되어 메인스레드로 전달된다. 메인 스레드는 이러한 이벤트를 받아들여 적절한 UI 업데이트나 작업을 수행..
프로세스(Process): 프로세스는 운영 체제에서 실행되는 프로그램의 인스턴스입니다. 각 프로세스는 독립적인 메모리 공간을 가지며, 다른 프로세스와 격리되어 있습니다. 각 프로세스는 최소한 하나의 스레드를 가지며, 프로세스는 스레드의 집합으로 이루어집니다. 프로세스 간 통신(IPC, Inter-Process Communication)을 통해 데이터를 공유할 수 있지만, 일반적으로 비용이 많이 드는 작업입니다. 프로세스 관리 : iOS는 각 앱을 별도의 프로세스로 실행하여 각 앱이 격리되도록 합니다. 이를 통해 앱 간의 간섭을 최소화하고 보안을 강화할 수 있습니다. iOS는 멀티프로세스 환경에서 안정적으로 동작할 수 있도록 프로세스 생성, 종료 및 관리를 담당하는 운영 체제의 역할이 중요합니다. 스레드(..
AP는 Application Processor의 약자로 컴퓨터나 모바일 기기와 같은 전자 제품에서 응용 프로그램을 실행하는 중앙 처리 장치(CPU) 가르킵니다. iOS 기기에서 사용되는 AP(Application Processor)는 모바일 기기에서 앱을 실행하고 관리하는 핵심 적인 부분입니다. 프로세서 종류 : iOS 기기의 AP는 주로 Apple이 설계한 A 시리즈 칩셋을 사용합니다. 이 칩셋은 ARM 기반 프로세서 아키텍처를 기반으로 합니다. 고성능 및 저전력 : AP는 다양한 코어를 가지고 있어 병렬로 여러 작업을 동시에 처리할 수 있습니다. 또한 모바일 기기에서 고성능의 처리를 가능하게 하면서도 전력 소비를 최소화 합니다. 이는 모든 모바일 기기의 배터리 수명을 연장하고 사용자 경험을 향상시킵니..
오늘은 하루종일 ToDoList 만들기 과제에 모든 시간을 쏟아버렸다.. TableView Delegate 패턴의 적용은 간단하기도 하고 필수 구현내용이 없어서 금방 적용할 수 있었지만, Datasource의 경우 필수 구현내용 함수에서 자꾸만 에러가 나 시간을 너무 많이 잡아먹었다. 차라리 코드로 짜버리고 싶은 마음이 굴뚝 같았지만 과제 구현 사항이 Storyboard를 사용하여 구현해야 하므로 오늘 헤맸던 구간에 대해서 기록을 해두려고 한다. Storyboard 를 사용하여 TableView 세팅하기 Storyboard 컴포넌트 VC 내 TableView를 넣어주고 오토레이아웃을 topAnchor 만 버튼의 height 만큼 (40) 넣어주고 나머지 면을 0으로 설정해 가득 차게 구성하였다. 그 이후..