본문 바로가기

iOS 앱 개발자 프로젝트/iOS 숙련

[iOS] 기술 면접 준비 4월도 어느 덧 중반..  코드를 살펴보며.. 기술 과제를 작성해 봅니다. 모의 기술면접 후기도 연결시켜 둡니다. 링크된 페이지 하단에 있습니다.  1. CoreData의 각 Entity, Attribute, Relationship의 역할 Entity : 하나의 Entity(개체)는 하나의 데이터 모델을 표현한다. 예를 들어, Todo Entity를 정의하면 여러 개의 Todo를 코어데이터 저장소에 저장할 수 있다. Attribute : 하나의 개체(Entity)는 하나 이상의 Attribute(속성)으로 구성되며, 그 Entity의 특성이나 상태를 설명한다. 데이터의 가장 작은 논리적 단위로 개체가 가질 수 있는 특성을 나타내며 field 라고도 한다. Relationship : Entity 간에 관계.. 더보기
[iOS] WishList App (feat. CoreData) coreData를 사용하여 만든 wishList App gitHub : https://github.com/NY-Chae/wishListProject.git      | AppDelegate하단에 아래와 같이 Core Data stack 과 Core Data Saving support 추가되어 있음을 확인할 수 있다. // MARK: - Core Data stack lazy var persistentContainer: NSPersistentContainer = { /* The persistent container for the application. This implementation creates and returns a container, having l.. 더보기
[iOS] DataManager & ViewController (relationship) 2024년 4월 14일 일요일 과제 코드를 보며 좀더 업데이트 할 예정.. 📌 DataManager 역할 데이터 처리: 앱의 데이터 관련 로직을 처리한다. (데이터베이스 접근, 네트워크 요청, 데이터 변환 등) 데이터 제공: ViewController에 필요한 데이터를 제공 → ViewController는 UI 업데이트를 위한 데이터에 접근 📌 ViewController 역할 UI 관리: 화면에 보여지는 UI 요소들을 관리한다. (사용자 입력을 받고, 화면에 데이터 표시하기 등) DataManager와의 상호작용: 필요한 데이터를 DataManager로부터 요청하고, 받은 데이터로 UI를 업데이트 한다. 📌 DataManager와 ViewController를 연결 방법 1. 직접 참조를 통한 연결: Da.. 더보기
[iOS] Decodabe, Encodable, Codable 2024년 4월 13일 토요일 Make your data types encodable and decodable for compatibility with external representations such as JSON. Encoding and Decoding Custom Types | Apple Developer Documentation Make your data types encodable and decodable for compatibility with external representations such as JSON. developer.apple.com 📌 Decodable 프로토콜 Decodable 프로토콜과 CodingKeys 열거형을 사용하면, JSON과 같은 외부 데이터 소스로부터 데이터.. 더보기
[iOS] URLSession URLSession: An object that coordinates a group of related, network data transfer tasks. 즉, 네트워크 데이터를 가져오거나 보내는 작업을 coordinate 합니다.class URLSession : NSObject  URLSession | Apple Developer DocumentationAn object that coordinates a group of related, network data transfer tasks.developer.apple.com URLSession 주요 특징 1. 비동기적 네트워킹 (Asynchronous Networking) : 네트워크 요청을 비동기적으로 처리하여 백그라운드에서 작업이 수행되어 앱 성능을 .. 더보기
[iOS] Core Data stack 2024년 4월 12일 금요일 Core Data stack Manage and persist your app’s model layer. (들어가보면 엄청나게 많지만 꼭 알아야 하는 핵심적인 아래의 몇 가지만 살펴봅니다.) 1. Persistent container ( NSPersistentContainer ) Container가 지정한 Model에 정의된 Entity들을 context를 활용하여 CRUD 한다. let container = NSPersistentContainer.init(name: "Animals") 생성자에 전달한 name 은 컨테이너가 관리할 모델(.xcdatamodelld) 을 지정할 때 쓰인다. 2. Model ( NSManagedModel ) .xcdatamodeld 파일(이 클.. 더보기
[iOS] Core Data (+ Modeling Data) 2024년 4월 11일 목요일 Core Data Persist or cache data on a single device, or sync data to multiple devices with CloudKit. 하나의 기기에 데이터를 영구적으로 저장하거나 캐싱 처리할 때 사용할 수 있고, Cloud Kit을 사용해 여러 기기의 데이터를 동기화 할 수 있다. 그러니까.. 모델 계층의 객체를 관리하는 Core Data에 대해 공부해 봅니다. ※ 공식문서에서 설명하는 아래의 기능들이 있기에 1) 오프라인 상태에서도 사용하도록 앱의 영구적 데이터를 저장할 때, 2) 데이터를 임시로 캐시할 때, 3) 앱에 실행 취소 기능을 추가할 때 Core Data를 사용한다. 1. Persistence : Core Data는 .. 더보기
[iOS] WishList App (feat. Network &API) 금주에 새로 전달받은 프로젝트의 요구사항을 정리해 봅니다.  랜덤한 상품을 앱에 노출시키고, 노출된 상품을 위시 리스트에 담을 수 있는 애플리케이션 만들기( 데이터 저장과 네트워크 통신이 핵심 ) 완성된 내용은 이곳에서 확인하세요! ◇  프로젝트 목표 [ ]   화면을 전환하는 여러 방식을 이해하고 코드를 작성할 수 있다. (Segue, 코드 활용)[ ]   Swift 메모리 구조에 대해 이해할 수 있다.[ ]   Swift의 ARC 개념에 대해 이해할 수 있다.[ ]   Decodable, Encodable, Codable 개념을 활용하여 데이터 모델링을 할 수 있다.[ ]   URLSession에 대해 이해하고 REST API와 통신할 수 있다.[ ]   내부저장소 개념에 대해 이해한다.[ ]   .. 더보기