전체 글(73)
-
[Flutter / 플러터] GetX 반응형 상태관리
1. GetX 반응형 상태관리 - GetX를 통한 반응형 상태관리는 update 함수를 통해 상태를 직접 통보하지않고 내부 값의 상태 변화를 감지하고 화면에 변경된 값을 적용한다. - 상태변화 감지를 위해 변수선언을 RxInt 와 같이 선언해줍니다. // 현재 값이 5인 경우 putNumber(5)를 아무리 눌러도 다시 그려지지 않음 2. GetX LifeCycle - StatefulWidget을 사용하면 위젯의 라이프사이클 함수를 사용할 수 있습니다. 이와 마찬가지로 GetxController를 사용하면 다음과 같은 라이프사이클 함수를 사용할 수 있습니다. - 이밖에도 onClose() 함수를 사용해 꺼졌을 경우의 라이프사이클 함수를 사용할 수 있습니다.
2022.04.27 -
[ Flutter / 플러터] BuildContext 이해하기
- 개발을 하다보면 Scafford.of() called with a context that does not contain a Scaffold 에러를 만날수가 있다. 1. BuildContext - Widget Tree 에서 현재 Widget의 위치를 알 수 있는 정보 - build method 는 Scaffold Widget을 리턴하는데 Widget Tree상에서 어디에 위치하고 있는지에 대한 정보를 가지고 있는 context라는 것을 넣어서 리턴을 해준다는 의미이다. - BuildContext는 Stateless위젯이나 State 빌드 메서드에 의해서 리턴 된 위젯의 부모가 된다.
2022.04.26 -
[Flutter / 플러터] GetX 상태관리
- GetX 단순 상태관리를 파악하기 위해 Provider 상태관리와의 차이점을 살펴보면서 학습해보았다. 1. Provider - Provider의 경우 ChangeNotifier를 상속받은 이벤트 컨트롤러 생성 - ProviderController 를 Provider 위젯에 반영 - 빌더부분에 Context, snapshot, child - 버튼을 눌렀을때 ProviderController 에 있는 increase 함수를 실행한다. - Consumer가 있기 때문에 listen을 false로 한다. ( 빌드 최소한으로 하기위함 => 가운데 텍스트만 빌드되면서 수정됨) 2. GetX 상태관리 - GetX의 경우 GetxController 를 상속받은 컨트롤러 생성 - update()를 해서 이벤트를 읽도..
2022.04.26 -
[Flutter / 플러터] Get X 란? (라우터 기능)
1. GetX - Flutter 개발을 위한 매우 가볍고 강력한 라이브러리(미니 프레임워크 수준) - 3가지 기본 원칙 - 생산성 - 성능 - 조직화 - GetX 사용을 위한 셋팅 void main() { runApp(GetMaterialApp( initialRoute: '/home', getPages: [ GetPage(name: '/home', page: () => First(), binding: SampleBind()), ], )); } - 기본 페이지 라우팅 ( 기존 Navigator 와 GetX route 차이 ) - Named 라우트 방식 3. 라우팅 Argument 전달 - Argument 는 객체(Class), Map, String, Int 등 다양한 형태로 전달이 가능하다. 4. 라우팅 ..
2022.04.25 -
[Flutter / 플러터] 상태관리 - GetX, Provider, Bloc 패턴
어떤 상태관리가 좋은 관리인가? 하나의 UI를 구축하기 위해선 Build 라는 메서드를 호출하게 되고 Build 메서드 안에 어떠한 값(변수) 가 들어가게 되는데 이러한 값들을 핸들링하고 변조하고 변조한 값을 보여지는 과정을 상태관리라 한다. 1. SetState - Flutter의 Tutorial / Project Starter(첫프로젝트생성 시) 의 '그 상태관리' - 특정한 Widget 내에서 단기적으로 쓰이고 말 때 사용하면 편한 상태관리 2. BloC - Stream을 Flutter 에서 사용해야한다면 선택해야할 라이브러리. - 상태 관리 라이브러리 중 초창기에 나온 도구로, 특유의 BloC 패턴은 익혀두면 매우 큰 도움이 됨. - BloC 상태관리를 선택하는데 있어 가장 큰 고민, Cubit ..
2022.04.25 -
맥북 M1 에어 Flutter 설치하기
앱개발을 시작하기위해 맥북에어를 구매하였다. 그래도 나름 RAM은 높아야한다는 생각을 가지고 있어 16GB로 구매를 결정했다. Flutter 개발환경을 구축하기 위한 첫번째 관문을 시작하려한다. Flutter 환경을 구축하기 위해서는 몇가지가 필수적으로 필요하다. 1. Flutter SDK 2. Android Studio 3. Xcode 4. Chrome 1. FLUTTER SDK - https://docs.flutter.dev/get-started/install/macos macOS install How to install on macOS. docs.flutter.dev - Flutter 사이트에서 다운로드를 받고 압축을 푼후 환경변수 설정을한다. (환경변수를 설정하는 이유는 flutter라는 명령어를..
2022.04.21