
2026.01.06 (화)
제미나이한테 오늘 머릿속에 있는 지식 다 때려박고 이게 맞아? 맞으면 이미지로 그려줘 했더니...!!

쫌 잘 그려준 듯?.. 정리가 안 됐었는데 또 그려주니까 이게 맞는 듯 (Gemini 쫌 치네)
MVVM은 각자 역할이 나눠져있고, 유지보수를 쉽게 만드는 설계 도면!1
| 구성 요소 | 하는 일 |
|---|---|
Model | 데이터의 구조와 로직을 정의함 |
View | 사용자에게 보이는 화면 (UI) |
ViewModel | View에 필요한 데이터를 전달 |
여기서 중요한 사실은,
View는 ViewModel을 바라보고 있지만 ViewModel은 View가 누군지 모른다, 몰라도 된다..! 로직에 영향을 주지 않는다고 한다
✏️ Riverpod은 ViewModel의 역할을 수행하거나 데이터를 관리하기 위해서 사용하는 라이브러리이다.
Riverpod에서 제공하는 데이터를 감시? 감지? 한다

데이터를 저장하고 제공하는 상자,
homeViewModelProvider ProviderContainer 등 나중에 어떤 상자를 담았는지 알 수 있도록 이름이 붙는다

ViewModel을 지켜보고 있다가 상태가 변경되면 상태를 달라고 요청하면서 화면 갱신해준다..!

접근 가능한 데이터 상자를 만든다. -> Provider 정의해주기
ref.watch를 사용해서 데이터 변화 감지 -> Provider 읽기
✏️ 서버를 직접 만들고 관리하지 않고 데이터베이스, 로그인, 알림 등의 기능을 사용할 수 있게 해주는 Backend as a Service
-feat. 구글 만듬
No SQL
나는 기존의 관계형 데이터 베이스 방식이 아니다. 나는 다양한 형태로 데이터를 저장하는 비관계형 데이터베이스를 뜻한다고 한다..! 난 달라
그렇다면 기존은 무엇일까?
기존은 SQL의 형식의 데이터베이스를 사용했다. 둘의 차이점은?
| - | NoSQL | SQL |
|---|---|---|
| 데이터 중복성 | 데이터 중복 O | 데이터 중복 X |
| 확장성 | 수직, 수평 확장 가능 | 대체적 확장은 가능 |
| 구조 | 스키마 없음 | 명확하게 정의된 스키마 형식 |
-> 즉, NoSQL 사용하는 이유는 기존의 정해진 형식의 데이터베이스 보다 훨씬 유연하고 언제든지 데이터 조정하고 새로운 필드를 추가 할 수 있다.
오늘은 여기까지 배웠다.. 내일 모닝스터디때 본격적 firebase 사용해볼 예정이다..!!

강의로 만들어본 책 검색 앱..!