전체 글
-
질문 방향의 전환Apple Developer Academy @ POSTECH🍍 2024. 4. 13. 23:52
낯선 바람과의 조우애플 디벨로퍼 아카데미 덕분에 처음 발을 들이민 도시, 포항 호미곶에서 마주한 바람은 '남쪽이니까 더 따뜻하지 않을 까?'라는 생각을 단박에 날려버렸다. 군청색의 파도가 밀려들어 올 때마다 피어오르는 하얀색 기포들낯선 두려움에 뭍은 작은 설렘들과 같이 터져 나왔다. 전주곡: 슬며시 열어젖힌 귀 아카데미 첫날, 학창 시절 새 학기, 친구들과 처음 얼굴을 주고받은 날과는 사뭇 다른 느낌이었다. 같은 나이, 같은 머리, 같은 교복으로 만든 필름이 묶어 주었던 색과 달리 어색한 공기가 모두를 짓 누르는 가운데에서도 새어 나온 각자의 색들은 모두 빛깔이 달랐다. 살면서 이렇게 다양한 사람들을 이렇게 많이 만난 것은 처음이었다. 관성이 짙은 나에게 조금 힘에 부치기도 했지만 정말 좋은 기회이..
-
CS50 - SearchAI🤖/CS50 2024. 3. 3. 15:58
찾다. 인간은 살아가면서 다양한 문제 상황을 마주하고 이를 해결하기 위한 방법들을 ‘찾는’ 과정들로 삶은 채워진다. 게임속 미로에서 출구를 ‘찾을’ 수도 있고 현실 세계에서 목적지까지 가는 길을 ‘찾을’ 수도 있다. Search ‘찾다’ 라는 행위를 분석해보자. 첫번째로 일단은 어떤 행동을 하고자 하는 주체가 존재해야한다. 게임속에서는 게임 캐릭터가 현실에서는 사람이 될것이다. 두번째 주체는 어떠한 목적을 가지고 있어야한다. 게임속에서는 미로를 통과하자, 현실에서는 목적지에 도착하자 라는 목적이 있을 것이다. 세번째 주체를 둘러싸고 있는 환경은 목적 달성을 방해하는 장애요소가 된다. 게임속에서는 이리저리 가로막고 있는 벽들이, 현실에서는 수많은 도로와 교통신호등이 될 것이다. 네번째 주체는 환경 속에서 ..
-
Core Data Context 이해와 활용 - 심화Apple🍎/CoreData 2024. 1. 15. 16:54
그냥 Store에 저장하지 뭐하러 Context에다가 임시로 저장을 하냐? 데이터를 저장하거나 변경할 때 Store에 바로 하지 않고 Context에 먼저 임시로 해본 뒤에 save를 호출해야 해당 내용들이 Store에 반영된다. 뭐하러 Context를 Scratch Pad로 사용을 할까? 그냥 바로 Store에다가 꽂아버리면 안되는 이유가 뭘까? Core Data는 그냥 데이터만 저장하는 게 아니다. 앱의 로직과 맞물려서 돌아가다가 의도한 로직에 맞지 않으면 해당 내용은 Store에 반영하면 안된다. 따라서 앱이 돌아가면서 데이터의 변경이 일어날 때 이것들을 Context에 임시로 저장해 놓았다가 모든 로직에 오류가 없는 것을 확인한 이후에서야 Store에 반영한다. Multiple Main Cont..
-
Core Data Context 이해와 활용 - 기본Apple🍎/CoreData 2024. 1. 11. 02:24
Context가 뭐냐? Context는 Core Data Stack에서 제일 위에 있는 레이어이다. Context는 Application Model의 코드와 persistent store, data model을 연결하는 역할을 한다. Context를 사용하여 엔티티들을 저장 및 변경한다. 객체를 엔티티로서 DB에 저장 및 변경하기 위해서는 해당 객체는 특정 Context에 속해 있어야 한다. 왜냐하면 Context는 DB로부터 객체를 fetch하는 것 뿐만아니라 자신에게 속해 있는 객체를 추적 및 변경감지 역할을 수행하기 때문이다. Context가 하는 일 새로운 엔티티 만들기 엔티티 fetch 하기 (DB로부터 가져오기) 엔티티 변경 감지하기 유효성 검사 undo / redo 동작 핸들링 persist..
-
데이터 모델 개념을 기초로 엔티티와 클래스 관계 알아보기Apple🍎/CoreData 2024. 1. 9. 00:53
Entity와 Attribute는 대응하는 Class와 Property가 생긴다. 보통 Core Data의 엔티티와 엔티티의 속성을 설정할 때는 Code Data Model Editor를 사용해왔다. 여기서 Entity를 설정하면 실제 코드로는 어떻게 구현되는 것일까? Generated Classes 데이터 모델안에서 엔티티와 속성이 어떻게 구성되는지 간단히 말하면 Editor에서 설정한 엔티티와 속성에 대응하는 클래스와 프로퍼티가 코드로 생성된다. How Is your Data Model Really Created. Core Data Editor를 사용하여 엔티티와 속성을 만들면 데이터 모델은 정적이고 (컴파일 타임에 이미 모두 정해지고) 런타임에는 더이상 건들지 못한다고 생각할 수 있지만 Core D..
-
Core Data 뜯어 보기Apple🍎/CoreData 2024. 1. 4. 15:06
Core Data가 뭔가? Core Data stack은 무엇이고 왜 stack이라고 부르는가? Core Data stack은 어떤 부분들로 구성되어있나? 어떻게 persistent container는 작업을 간단히 만들어주나? Xcode는 어떻게 CoreD Data를 위한 Stack을 만들고 이로부터 어떤걸 알 수 있는가? 그래서 Core Data가 뭔데? According to Apple Use Core Data to save your application’s permanent data for offline use, to cache temporary data, and to add undo functionality to your app on a single device. To sync data acro..
-
엔티티와 컨텍스트Apple🍎/CoreData 2024. 1. 2. 14:21
Tstory 나 Naver Blog같은 블로그 어플리케이션을 만든다 해보자.블로그의 주요 기능은블로그 운영자는 글을 작성해 ‘포스트’를 발행한다.블로그 방문자는 ‘포스트’를 읽고 해당 ‘포스트’에 ‘코멘트’를 단다.제일 중요한점은 사용주체(운영자, 방문자)의 활동결과(포스트,코멘트)가 어딘가에 저장되어야한다는 것이다. 이렇게 비즈니스(여기서는 블로그)에서 사용되는 객체들 중에서 ‘저장’ 할 필요가 있는 객체들을 엔티티라고 부른다. Entity 란?데이터베이스는 데이터를 체계화해서 저장할 수 있는 시스템으로 이곳에 저장될 때 제일 중요한점은 저장되는 데이터 간에 ‘구분’이 되어야한다는 것이다. 예를 들어 2번째 포스트를 불러와줘하고 요청을 받았는데 정작 데이터베이스가 저장되어 있는 포스트 중에 2번째 포스..