[level 1] 삼총사 - 131705 문제 링크 성능 요약 메모리: 16.7 MB, 시간: 0.02 ms 구분 코딩테스트 연습 > 연습문제 채점결과 정확성: 100.0 합계: 100.0 / 100.0 제출 일자 2024년 04월 16일 10:02:16 문제 설명 한국중학교에 다니는 학생들은 각자 정수 번호를 갖고 있습니다. 이 학교 학생 3명의 정수 번호를 더했을 때 0이 되면 3명의 학생은 삼총사라고 합니다. 예를 들어, 5명의 학생이 있고, 각각의 정수 번호가 순서대로 -2, 3, 0, 2, -5일 때, 첫 번째, 세 번째, 네 번째 학생의 정수 번호를 더하면 0이므로 세 학생은 삼총사입니다. 또한, 두 번째, 네 번째, 다섯 번째 학생의 정수 번호를 더해도 0이므로 세 학생도 삼총사입니다. 따라..
iOS 앱에서 동기와 비동기는 아주 자주사용되는 내용이고 사실 강의를 들으면서도 좀 어려운 개념이었다. 여러번 반복해서 들으면서 이 개념을 조금 더 익힐 수 있도록 해야겠다. 오늘 공부한 비동기 , 동시성 프로그래밍 관련 2탄 시작해보자 동기(sync) vs 비동기(async) 동기(sync) 동기적인 작업은 순차적으로 실행되며, 한 작업이 끝나야 다음 작업이 실행된다. 동기적인 작업은 보통 현재 실행 중인 스레드에서 처리되며, 작업이 완료될 때 까지 해당 스레드는 차단된다. 비동기(async) 비동기적인 작업은 순차적으로 실행되지 않고 별도의 스레드에서 바로 새로운 작업이 시작된다. 비동기적 작업은 보통 백그라운드 스레드에서 처리되며, 작업이 완료되면 메인 스레드로 결과를 반환하거나 콜백 함수를 호출하..
iOS 메인스레드 (Thread 1) 의 역할 iOS 애플리케이션은 메인 스레드를 생성하고 메인 런 루프(Main Run Loop)를 실행하여 앱의 이벤트를 처리한다. 이벤트는 주로 사용자의 상호작용(터치, 제스처)이나 시스템에서 발생하는 알림(앱의 상태변화, 백그라운드 작업 등) 등을 포함한다. 사용자 인터페이스(UI) 처리 메인 스레드는 앱의 UI를 처리하는 주된 스레드이다. 사용자의 모든 상호 작용은 메인 스레드에서 처리된다. 화면에 보이는 요소들의 업데이트인 레이아웃 변경, 텍스트 업데이트, 이미지 로드 등은 메인 스레드에서 수행된다. 이벤트 처리 사용자의 터치, 제스처 등의 입력은 이벤트로 변환되어 메인스레드로 전달된다. 메인 스레드는 이러한 이벤트를 받아들여 적절한 UI 업데이트나 작업을 수행..
2024.04.10 - [◽️ Programming/T I L] - WishList 만들기 (1) - (URLSession 데이터 연결 완료) 2024.04.12 - [◽️ Programming/T I L] - WishList 만들기 (2) - (CoreData 연결) 오늘은 주말에 wishlist 만들기를 끝내고 싶어 코어데이터를 테이블 뷰에 나오도록 구현하고 데이터 삭제, 그리고 리프레쉬 하는 기능까지 넣어 과제를 완료 했다. 오늘 진행한 기능 구현을 블로그에 정리해보자 저장된 코어데이터 불러와 테이블 뷰에 표현하기 먼저 저장된 코어 데이터를 가져올 수 있도록 이전에 구현해 놨던 코어데이터 요청하는 메서드를 다시 한번 보자 func getWishListFromCoreData() -> [Product]..
2024.04.10 - [◽️ Programming/T I L] - WishList 만들기 (1) - (URLSession 데이터 연결 완료) 오늘은 드디어 며칠동안 끙끙 앓던 코어데이터를 연결하는데 성공했다. 물론 모든걸 다 이해하고 연결한건 아니지만 그래도 결과를 냈다는거에 만족하고 이전에 만들었던 TodoList에도 코어데이터를 적용해보고 더 익숙해지는 과정이 있어야 할 것 같다. AppDelegate 코드 구성하기 lazy var persistentContainer: NSPersistentContainer = { let container = NSPersistentContainer(name: "WishList") container.loadPersistentStores(completionHandler..
오늘은 테이블 뷰 중에서 xib 파일을 사용해서 커스텀 셀을 구성할 수 있는 방법을 처음 사용해 보았다. 처음 사용하는거라 여러번 막히다가 구글링을 통해 차근차근 다시해보니 금방 할 수 있었다. xib파일 생성 먼저 tableviewCell 파일을 만들면서 사진과 같이 xib 파일을 같이 선택해서 만들어주면 자동적으로 cell 과 연동된 xib 파일을 만들 수 있다. Custom 만들어진 xib 파일에 들어가면 cell 의 크기를 하고 있는 테이블 뷰 셀이 있는데 여기서 원하는 컴포넌트를 넣고 cell 을 구성하면 된다. 호출 만들어진 cell 내 식별자를 입력하고 VC로 넘어와 만들어둔 xib 을 불러오면 연동 완료 let nib = UINib(nibName: "TableViewCell", bundle..