AssetBundle AssetBundle의 종류에 대해서 먼저 Check! DefaultBundle > 하위 항목에 대한 기본 자신 번들을 결정하는 위젯! (명시적으로 지정하지 않은 경우 AssetImages에 사용할 변들을 결장하기 위해 Image에서 사용됌) example) DefaultAssetBundle.of를 사용하여 AssetBund...
One Day Widget > 하루에 Flutter Widget을 하나 이상을 예제를 보면서 이해하는 시간을 가지기 위해 준비한 시간 Today Widget (Semantics) // 위젯의 의미에 대한 설명으로 위젯 트리에 주석을 추가하는 위젯!! // 접근성 도구 , 검색 엔진 및 기타 의미 분석 소프트웨어에서 용응 프로그램의 의미를 결정하는...
bloc 다트 27에서 확장된 방법이 하나 추가되었다. flutter_bloc이 provider 패키지에 종속되어 상속된 위젯의 사용이 단순화됌 blocProvider, MultiBlocProvider, RepositoryProvider, MultiRepositoryProvider widgets, flutter_bloc exports the ReadC...
dart에서 쓰이는 bloc package가 아닌 flutter에서 쓰이는 flutter_bloc 패키지에 관한 것임 flutter_bloc Bloc Widget > #### BlocBuilder > bloc과 builder 기능을 사용하기 위한 flutter widget . block builder는 새 상태에 대한 응답으로 위젯 작성 처리, blo...
bloc Cubit vs Bloc 큐빗을 사용해야할 떄와 블록을 사용해야할 때 비교해보기 > cubit을 사용하는 가장 큰 장점은 simple! / 큐빗을 만들 때 상태를 변경하기 위해 노출하려는 함수와 상태를 정의하기만 하면 되옵니다. 블록 생성시 상태, 이벤트 및 이벤트핸들러 구현 정의 > 큐빗을 더 쉽게 이해할 수 있고 관련된 코드가 더 적음 ...
Bloc bloc은 이벤트에 의존하여 상태 변경을 하는 진보된 클래스! 블록은 blocbase를 extends하며, 큐빗과 비슷한 api를 가지고 있음! / bloc은 이벤트를 수신하고 들어오는 이벤트를 나가는 상태로 변환!! bloc bloc 생성 bloc을 만드는 것은 우리가 관리할 상태를 정의하는 것 외에 bloc이 처리할 수 있는 이벤트도 정...
Bloc 사용 시 비즈니스 로직에서 presentation을 분리하기 쉽게 만듬! 코드를 빠르고 쉽게 테스트할 수 있고, 재사용할 수 있음 데이터 기반 의사결정 가능 => 단일 유저 상호작용을 기록하기에!! 가능한 한 효율적으로 작업하고 어플리케이션 내에서와 다른 어플리케이션에서 구성 요소 재사용!! bloc의 3요소 simple : 이해하기 쉽고 다...
Freezed freezed에서 getter나 void 함수를 그냥 쓰려고하면 오류가 걸린다. 그래서 아래처럼 사용하면 된다. 다른 클래스로 묶어서 사용하기.. 그리고 만약 무효하여 쓰고 싶다면 null을 이용한다. 기본값 (다트는 factory 생성자 리디렉션이 기본값을 허용하는 것을 원치 않음! 방법은 예제처럼 하기 사용하지 않을려는 것은 @d...
freezed code generator 기능을 함 (data-classes / unions / pattern-matching / cloning 역할 생성자 + 속성 / Equatable / copyWith / (de/serialization handling) 기능을 해줌 설치방법 flutter pub run build_runner build을 이용...
StateNotifier / Provider 어제 스터디에서 이부분을 설명을 잘해주셨지만, 뭔가 디테일 하게 정리를 해야 할 거 같은 기분이 들어.. 정리를 해둔다 다른 예제처럼 state를 먼저 만들었다. 색상을 변경시키는 state를 만들었다면 이제 stateNotifier를 설명해보겠다 에제를 통해 하나씩 설명해보겠다. 코드에 설명을 해놨지만,...
Todo App Make Equtable Equatable 플러그인은 한 인스턴스와 다른 인스턴스가 같은 인스턴스인지 판단을 쉽게 할 수 있게 해주는 플러그인 (스터디 때 A님이 너무 설명을 잘해줘서 좋았던 거 같다..) why need? 위의 예처럼 oper
Provider addListener / removeListener addListener는 객체가 변경될 때 호출될 콜백함수를 등록해준다는 것이 공식에서 나오는 부분이다. (말이 어렵게 나온 거 같기도..) initstate에서 changenotifer를 사용하는 provider에서 addListener를 이용해서 함수를 등록한다고 생각해봅시다. 그리고...
what is extension? 기존 라이브러리에 기능을 추가하기 위해 dart 2.7에 출시! 예시들을 통해 살펴보자 프로젝트에서 다시 써보고, 소스코드로 정리를 깔끔하게 해봐야겠다.

Stack 중복이 가능한 위젯! / 위젯 리스트를 가지고 아래부터 형성 / 다른 위젯에 중첩으로 씌움 / 지정되지 않은 하위요소에 맞추고자하면 디폴트로 크기가 정해지기에 fit 속성을 사용할 수 있음 기본적으로는 topStart로 하위요소 정렬 Positioned를 사용해서 특정 하위요소의 특정 위치 지정 가능 overflow를 사용해서 경계선을 벗어나게...
Expanded / Flexible 두 위젯 모두 Column이나 Row에서만 쓰여야함 (flex의 child가 쓰이는 위젯) Expanded (FlexFit.tight) 공식 홈페이지 따르면, 변경할 수 있는 것 중에서, 크기를 조절하기 위해 쓰인다는 내용이 있다. 여러 개가 쓰일 때는 flex를 높여서 쓰인다는 내용도 있다. expanded는 ...
공식에서는 CustomScrollView와 사용하는 material Design Appbar라고 되어 있다. body에서 사용하고.. 유동적인 appBar로 생각하고 있다. 공식 홈페이지 예시를 통해 이해해보자

TabBar 위와 같은 이미지처럼 사용! class에 TickerProviderStateMixin을 믹스인 시킴! 예시를 통해 하나씩 보면 위의 에처럼 쉽게 사용해볼 수 있다. TabBarView 맨위 이미지처럼 movie, drama, animation을 클릭했을 때 하단에 나오는 View!
flutter dotenv / WidgetsFlutterBinding.ensureInitialized flutterdotenv는 다른 곳에 공유하면 안되는 apikey를 같은 것을 따로 저장한 파일을 읽어들일 수 있음! flutter_dotenv: ^5.0.2 을 pubspec.yaml에 추가한다. 사용법은 아래의 예시처럼 사용한다. Widget...