| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 |
- RiverPod
- 개발자성장
- 정처기실기
- 앱개발
- 블록체인
- 정처기실기기출
- Java
- 초보개발자
- 상태관리
- claudecode
- 정보처리기사실기기출
- 프로그래밍기초
- 플러터
- 비동기처리
- 리버팟
- Flutter
- C언어
- 포인터
- 개발기초
- flutter web
- 정보처리기사
- 자바
- UML
- 모바일앱개발
- 정처기
- 정보처리기사실기
- 멘탈관리
- 모바일 앱 개발
- DART
- 클린아키텍처
- Today
- Total
목록RiverPod (6)
Flutter & Mobile by Kay
🚀 들어가며앱 개발을 하다 보면 반드시 마주치는 상황이 있습니다.👉 “앱이 꺼져 있는 상태에서 딥링크를 눌렀을 때 어떻게 처리하지?” 이걸 바로 Deep Link Cold Start 문제라고 합니다. 이 개념을 제대로 이해하지 못하면👉 특정 화면으로 이동이 안 되거나👉 로그인 흐름이 꼬이거나👉 앱이 이상하게 동작하는 문제가 발생합니다. 오늘은 초보 개발자도 확실하게 이해할 수 있도록👉 개념 → 예시 → 문제 → 해결 전략 순서로 정리해 드리겠습니다.🧩 Deep Link + Cold Start 개념 한 방에 이해하기✔️ Deep Link란?👉 앱 내부의 특정 화면으로 바로 이동시키는 링크 예시myapp://product/123https://myapp.com/post/456👉 클릭하면 앱의 ..
앱을 만들다 보면 이런 순간이 꼭 옵니다.상세 화면을 다시 들어왔는데 또 로딩이 뜬다검색 결과가 계속 메모리에 쌓이는 느낌이다어떤 데이터는 유지해야 UX가 좋고, 어떤 건 바로 버리는 게 낫다이때 반드시 고민하게 되는 질문:👉 “autoDispose를 붙여야 할까?” 이 선택 하나로UX / 메모리 / 성능 / 데이터 신선도가 전부 달라집니다.1. 핵심 개념 다시 잡기Family의 본질Family는 한 문장으로 이겁니다: 👉 “인자별로 상태를 따로 저장하는 캐시 방”diaryDetailProvider(2026-01-15)diaryDetailProvider(2026-01-16) 👉 각각 완전히 다른 상태 즉:Family = 인자별 독립 캐시autoDispose의 본질 autoDispose는 이겁니다: ..
1️⃣ Riverpod이 하는 일 (편의점 비유)앱을 만들다 보면 반드시 마주치는 질문이 있습니다. 👉 “이 값이 바뀌면 화면도 같이 바뀌게 하려면?”이걸 해결하는 게 바로 상태 관리(State Management)입니다.그중 요즘 가장 강력한 도구가 Riverpod 3.x입니다.💡 한 줄 정의👉 “값을 보관하고, 바뀌면 자동으로 알려주는 관리자”📦 개념 이미지🏪 비유로 이해구성의미창고Riverpod물건상태 (숫자, 유저 정보 등)손님UI직원Provider 👉 값이 바뀌면 → 자동으로 UI 업데이트2️⃣ Provider 통합 – 숫자 버튼 예제🎯 목표버튼 클릭 → 숫자 증가🧠 코드@riverpodclass Counter extends _$Counter { @override int bui..
Flutter 프로젝트가 커질수록 이런 고민이 생깁니다.“기능 하나 수정했는데 파일 10개가 깨진다…”“테스트는 엄두도 안 난다…”“이 코드, 내가 짠 건데 무슨 뜻인지 모르겠다…” 이 문제를 구조적으로 해결하는 대표적인 방법이 바로 클린 아키텍처(Clean Architecture) 입니다.오늘은 카페 주문 앱 예제로 개념부터 폴더 구조, 코드 흐름까지 한 번에 이해해 보겠습니다.1. 클린 아키텍처 한 줄 정의비즈니스 규칙을 UI와 프레임워크로부터 보호하는 구조즉,Flutter가 바뀌어도Riverpod → Bloc으로 바뀌어도API 서버가 바뀌어도👉 핵심 로직은 그대로 유지되도록 만드는 구조입니다.2. 왜 필요한가? (현실적인 이유)문제일반 구조클린 아키텍처기능 추가여기저기 수정특정 계층만 수정테스트거..
플러터 개발을 시작하면 가장 먼저 마주치는 큰 산이 바로 **상태 관리(State Management)**입니다.그중에서도 요즘 가장 많이 쓰이는 **Riverpod(리버팟)**을 공부하다 보면“Provider는 뭐고, Notifier는 뭐고,불변성(Immutability)은 또 뭐야…?” 하면서 머리가 지끈거리기 쉽습니다.오늘은 복잡한 용어는 전부 걷어내고,초등학생도 이해할 수 있는 ‘일회용 박스(Disposable Box)’ 비유로Riverpod + Freezed의 핵심을 단번에 정리해봅니다.1️⃣ Riverpod: 게으른 창고 관리자Riverpod을 한 문장으로 정의하면 이렇습니다.“앱 전체에서 데이터를 관리하는 창고 관리자” 앱에서“점수 올려!”, “이름 바꿔!” 같은 요청이 들어오면이 관리자가 ..
1️⃣ 리버팟이 뭔데?리버팟(Riverpod)은👉 앱에서 쓰는 값(상태)을 안전하게 보관하고 꺼내 쓰는 창고 관리자예요.예를 들면:점수로그인 정보버튼 눌린 횟수이런 값들을 앱 곳곳에서 쓰기 쉽게 관리해줘요.2️⃣ 리버팟 2.x — “착한데 조금 복잡한 정리함”🧸 비유로 설명하면리버팟 2.x는 장난감 상자가 여러 개 있는 방이에요.자동차 상자로봇 상자인형 상자각 상자를 열 때마다 “이 상자는 어디 있었지?” 하고 한 번 더 생각해야 해요.👀 개발자 입장에서 보면final counterProvider = StateProvider((ref) => 0);StateProviderFutureProviderStateNotifierProvider👉 상자 종류가 많아서“이건 어떤 프로바이더를 써야 하지?”라는 고..