본문 바로가기

개발13

[상태관리#1] GetX 말이많은 뜨거운 감자인 GetX이다. 실제로 회사에서 GetX를 써봤고 굉장히 러닝커브가 낮기때문에 손쉽게 카운터앱을 짤 수 있었다. GetX로 카운터앱을 어떻게 짜는지 방법에 대해서는 설명하지 않겠다. 그냥 코드를 올리기만 하려고 한다. 코드는 아래와 같다. import 'package:get/get.dart'; class Controller { RxInt number = 0.obs; void increase() { number++; } void decrease() { number--; } } import 'package:flutter/material.dart'; import 'package:get/get.dart'; import 'package:shw_test/components/button.dart.. 2023. 11. 22.
[상태관리#0] 상태관리 공부에 앞서.. 여태까지 사실 회사에서 주로 쓴건 bloc랑 getx를 써왔다. 그래서 이번 포스팅의 목적은 상태관리를 전부 다 한번씩 써보고, 내 나름의 장단점을 분석해보려고 한다. 그저 인터넷에서 검색했을때 getx는 나쁘네~riverpod이 좋다는등 이게 말만 들어서는 왜 그런지 정확하게 와닿지도 않을뿐더러 내가 직접 한번 써보는 것이 백번 관련문서를 읽어보는것보다 낫다고 판단해서이다. 순서는 아래와 같이 진행해보려고 한다. 1. GetX 2. Bloc 3. Provider 4. RiverPod 5. MobX 더 많은 상태관리가 존재하긴 하지만 그래도 좀 사람들이 많이 쓰는 검증된 상태관리로 추려봤고 위 5개를 진행해보려고 한다. 2023. 11. 21.
Flutter Package 첫 배포 pub.dev에서 패키지를 항상 쓰기만하다가 드디어 나도 첫 패키지를 배포해보았다 패키지를 만들게 된 이유는...한번도 안해봐서 해보고싶었던게 가장 큰 이유였고, 만들겠다고 결정하고 나서는 어떤걸 만들지에 대해 고민하게 되었다. 가장 많이 흔하게 쓰이는건 ElevatedButton인데 사실 나는 개발하면서 이걸 그대로 쓰는 경우는 거의 없다. 다 커스텀으로 Button Class를 만들어서 컴포넌트화 시켜서 그걸가지고 주로 사용하는편이다. 그리고 개인적으로 생각하는 Flutter의 단점은 깊은 nesting인데... button같은 경우도 만들게 되면 이것저것 스타일 주다보면 nesting이 제법 생기게 된다. 그래서 nesting이 최소화되어 예쁘게 보일 수 있는 custom button 패키지를 만들.. 2023. 11. 4.
flutter가 선택한 dart언어의 특징 검색하며 공부해보다보니 놀라운 사실을 알았다. dart는 사실 javascript를 대체하겠다고 나왔던 언어였다고 한다. 여튼 dart의 특징은 아래와 같다. 두 가지 컴파일 지원(JIT, AOT) Hot Reload 초당 60 프레임의 애니메이션 통합 레이아웃 여기서 JIT, AOT가 생소할 수 있는데 간략하게 설명하자면 JIT(Just In Time): 프로그램을 실행하는 동안 기계어를 생성한다. AOT(Ahead Of Time): 프로그램을 실행하기 전에 기계어를 생성한다. 즉 둘다 지원해서 개발자가 갖는 이점은 JIT방식으로 개발 및 디버깅시 실시간으로 확인이 가능하고 AOT방식의 컴파일로 인해 빠른실행시간, 좋은 성능을 얻을 수 있다.그야말로 두마리 토끼를 둘 다 잡은 것이다. (참고로 java.. 2023. 10. 29.