Package 2023.07.20 17:43 Flutter Riverpod Concepts(6-2) - Reading a Provider 이 가이드를 읽기 전에 먼저 Provider에 대해 읽어보시기 바랍니다. 2023.07.18 - [Flutter/Package] - Flutter Riverpod Concepts(6-1) - Providers 이 가이드에서는 Provider를 사용하는 방법을 살펴봅니다. "ref" 객체 가져오기 무엇보다도 provider를 읽기 전에 "ref" 객체를 가져와야 합니다. 이 객체를 통해 위젯이나 다른 provider와 같은 provider와 상호 작용할 수 있습니다. provider로부터 ‘ref' 받기 모든 provider는 매개변수로 "ref"를 받습니다: final valueProvider = Provider((ref) { // 다른 provider를 얻으려면 ref를 사용하세요. final repo..
Package 2023.07.18 21:01 Flutter Riverpod Concepts(6-1) - Providers Providers 이제 Riverpod를 설치했으니 " provider"에 대해 이야기해 보겠습니다. Provider는 Riverpod 애플리케이션에서 가장 중요한 부분입니다. provider는 상태의 일부를 캡슐화하고 해당 상태를 수신할 수 있도록 하는 객체입니다. 왜 Provider를 사용해야 하나요? provider안에 상태 부분을 넣습니다: 여러 위치에서 해당 상태에 쉽게 액세스할 수 있습니다. Provider는 Singleton, Service Locator, Dependency Injection 또는 InheritedWidgets와 같은 패턴을 완전히 대체합니다. 이 상태를 다른 상태와 결합하는 작업을 단순화합니다. 여러 개체를 하나로 병합하는 데 어려움을 겪은 적이 있으신가요? 이 시나리오는..
Package 2023.07.16 22:25 Flutter Riverpod All Providers (5-2) - (Async)NotifierProvider NotifierProvider는 Notifier를 수신하고 노출하는 데 사용되는 제공자입니다. AsyncNotifierProvider는 비동기 Notifier를 수신하고 노출하는 데 사용되는 provider입니다. 비동기적으로 초기화할 수 있는 Notifier입니다. (Async)NotifierProvider와 함께 Riverpod가 사용자 상호작용에 반응하여 변경될 수 있는 상태를 관리하기 위해 권장하는 솔루션은 (Async)Notifier입니다. 일반적으로 다음과 같은 용도로 사용됩니다: 사용자 정의 이벤트에 반응한 후 시간이 지남에 따라 변경될 수 있는 상태를 노출합니다. 일부 상태(일명 '비즈니스 로직')를 수정하는 로직을 한 곳에 집중시켜 시간이 지남에 따라 유지 관리성을 개선합니다. 예시로 N..
Document 2022.08.25 17:57 Flutter Web App 개발 하면서 느낀 문제점 Web App 개발하면서 느낀 점 과 실수했던 점을 기록해보려고 합니다. 해당 경험은 로박스 Web App 개발하면서 느낀 점을 토대로 작성되었습니다. Flutter Web App 문제점 1. SEO 불가 SEO(검색 엔진 최적화)는 웹사이트가 검색 결과에 더 잘 보이도록 최적화하는 과정입니다. Flutter Web App은 검색 엔진(구글, 네이버)에 노출이 되지 않습니다. Flutter 로 개발되지 않는 웹의 경우 개발자 도구를 켜서 Element Inspect 텍스트를 눌러보면 해당 텍스트가 Select 됩니다. 하지만 Flutter Web App의 경우는 Web App 전체가 Selecte 됩니다. 이는 검색 엔진이 Flutter Web App을 읽을 수가 없다는 것입니다. 공식적으로 SEO를 지..
Document 2022.05.08 03:17 Flutter Warning: Mapping new ns - gradle 업데이트 방법 빌드 중 에 gradle 버전이 낮으면 해당 경고 메시지가 나타난다. gradle 버전을 높여주면 쉽게 해결이 가능하다. Warning: Mapping new ns http://schemas.android.com/repository/android/common/02 to old ns http://schemas.android.com/repository/android/common/01 Warning: Mapping new ns http://schemas.android.com/repository/android/generic/02 to old ns http://schemas.android.com/repository/android/generic/01 Warning: Mapping new ns http://schem..
Package 2023.07.12 19:58 Flutter Riverpod 상태관리 (2) - 시작하기 시작하기 온라인에서 Rivderpod 사용하기 Riverpod을 체험해 보시려면 Dartpad에서 온라인으로 체험해 보세요. 패키지 설치하기 설치하려는 패키지가 정해지면 다음과 같이 한 줄로 앱에 종속성을 추가합니다: flutter pub add \ flutter_riverpod \ riverpod_annotation \ dev:riverpod_generator \ dev:build_runner \ dev:custom_lint \ dev:riverpod_lint 또는 pubspec.yaml 내에서 앱에 종속성을 수동으로 추가할 수 있습니다: name: my_app_name environment: sdk: ">=2.17.0 =3.0.0" dependencies: flutter: sdk: flutter f..
Package 2023.07.15 16:29 Flutter Riverpod 상태관리 (3) - Provider 유저를 위한 Riverpod Provider 유저를 위한 Riverpod 이 문서는 Provider 패키지에 익숙한 분들 중 Riverpod에 대해 배우고자 하는 분들을 위해 작성되었습니다. Riverpod과 Provider 간의 관계 Riverpod는 Provider의 뒤를 잇는 프로그램으로 설계되었습니다. 따라서 "'Riverpod"라는 이름은 "Provider"의 애너그램입니다. Riverpod는 Provider가 직면한 다양한 기술적 한계에 대한 해결책을 모색하는 과정에서 탄생했습니다. 원래 Riverpod는 이 문제를 해결하기 위한 방법으로 Provider의 주요 버전이 될 예정이었습니다. 그러나 이는 상당히 큰 변화이며, Provider는 가장 많이 사용 되는 Flutter 패키지 중 하나이기 때문에 반대하기로 결정했습니..
Widget 2021.05.22 16:42 Flutter ListTile 프로퍼티 문서 Flutter에서 ListTile은 자주 사용되는 위젯이라고 생각합니다. 하지만 프로퍼티 이름만 봐도 어떤 동작을 하는지 예상이 가능한 이름도 있지만 자주 사용하지 않고 생소한 이름의 가진 프로퍼티를 정리해보려고 합니다. 프로퍼티 종류 visualDensity : ListTile 안에 있는 위젯들 (title, subtitle, trailing... ) 사이의 padding 값 isThreeLine : subtitle 3줄 여부 default value - false isThreeLine : true - subtitle의 길이가 3줄이 안되어도 3줄 칸 확보 dense : true 일 때 적용되지 않음 dense : 위젯의 밀집 여부 horizontalTitleGap : trailing과 (title, ..