Flutter State Management - Provider

Flutter에는 State가 있다. 사용자에 의해 이벤트가 발생 했을 때 state를 이용하여 UI를 업데이트 해준다. 예를 들자면, 우리가 Flutter Project를 처음 생성 했을 때 기본으로 있는 count 앱을 들 수 있다. 사용자가 Floating Button인 + 버튼을 누르면 화면 중앙에 있는 숫자가 1씩 증가한다. 아래 코드와 같이 state를 이용하여 _counter 변수를 업데이트하고 UI를 업데이틑 하는 것을 확인 할 수 있다. int _counter = 0; void _increment(){ setState( () { _counter++; }); }

2020년 1월 12일 · 1 분 · Maru

[Flutter] 토이 프로젝트 후기 - (1)

react-native가 출시 된 지 4년이 지났습니다. 모바일 애플리케이션 개발에서 크로스 플랫폼 동시 개발을 가능하게 해준 react-native는 굉장히 파워풀한 기술인 거 같습니다. 그렇게 2년이라는 시간이 지나 react-native와 마찬가지로 iOS와 Android를 동시에 개발할 수 있는 프레임워크인 flutter가 처음 등장했습니다. 구글이 만든 프레임워크고 밀어 주려고 하는 기술인 거 같아, 경험해 볼 겸 간단한 앱을 만들기로 했습니다. 이번 글에서는 flutter로 앱을 만들면서 느꼈던 점들을 공유해보겠습니다. 글은 1편과 2편으로 나누어 작성하겠습니다. 📑 간단한 기획 저는 웹에서 토이 프로젝트를 할 때 보통 블로그 형식을 구현했었습니다. 그래서 Flutter로 간단한 메모 앱을 만들어 보기로 했습니다. ...

2019년 5월 17일 · 2 분 · Maru

[Flutter] 토이 프로젝트 후기 - (2)

1편에서 이어서 2편은 프로젝트를 진행 과정을 소개하고 후기를 마무리 하겠습니다. 🗂 Flutter Widget Flutter에서 대부분의 UI들은 Widget Class에 속해 있습니다. 예를 들어, AlertDialog 문서를 보면 AlertDialog가 어디에 속해있는지 확인 할 수 있습니다. StatelessWidget & StatefulWidget React를 사용해보신 개발자 분들에게는 친숙한 개념일 수도 있습니다. Flutter의 모든 UI 즉 Widget은 상태(state)를 가집니다. Widget이 StatelessWidget을 상속 할 때는 상태가 변하지 않아도 되는 UI로 그려집니다. Widget이 StatefullWidget을 상속 할 때는 상태가 변하는 UI로 그려집니다. Flutter에서 제공하는 setState 함수를 통해서 widget의 상태를 변화 시킬 수 있습니다. (최근에 알게 되었는데 setState 말고도 widget의 상태를 관리해주는 방법들이 제공된다고 합니다. 특히 provider라는 프레임워크가 2019 Google I/O에서 언급이 되었는데, 굉장히 잘 만들었으니 꼭 사용하라고 언급 되었습니다.) ...

2019년 5월 17일 · 3 분 · Maru

[Kotlin] 범위 지정 함수

Kotlin에서 사용되는 함수 중에 범위 지정 함수라는게 있습니다. 이 함수들은 비슷한 모습을 하고 있어서, 약간의 혼란을 불러 일으키는 것 같습니다. 그러므로 이번 글에서는 이 범위 지정 함수들을 정리해보겠습니다. apply, with, let, also, run은 전달받는 인자와 작동 방식, 결과가 매우 비슷하다. 이 5개는 범위 지정 함수라고 명칭한다. 이 함수들은 공통적으로 두가지 구성 요소를 가진다. 수신 객체 수신 객체 지정 람다 함수 타입의 receiver이다. 예시 : val sum: Int.(Int) -> Int = { other -> plus(other) } ...

2019년 4월 12일 · 3 분 · Maru

블로그의 목적

이전에 개발 블로그를 만들기 위한 두 번의 시도가 있었습니다. 두 번 다 글을 성실하게 이어가지 못 했던 이유를 생각 해보니, 블로그의 목적을 정하지 않고 시작해서 실패 했다는 결론을 내렸습니다. 그래서 이번 블로그에서는 목적을 정하기로 했습니다. 목적은 글을 써야할 주제들을 선정할 때 큰 도움을 줄 것이라고 생각했습니다. 목적을 정하기에 있어 임백준님의 칼럼의 도움을 많이 받았습니다. 칼럼의 내용 중 목적 설정에 도움이 된 문장을 적어보겠습니다. 어떤 일이 일어나지 알 수 없는 미래에 대한 두려움을 해소하자. 더 많이 알수록 자기가 모르는 것이 얼마나 많은지 알게 되는 것이 개발자의 숙명이다. 많은 내용을 다 알고 있는 사람이 존재하지 않는다는 사실을 깨달으면 된다. 개발자 중에는 자기가 얼마나 모르는지 모르는 사람, 그래서 공부의 필요성조차 느끼지 못하는 사람이 80% 이상이다. 깊이 아는 사람은 넓게 알지 못하고 넓게 아는 사람은 깊이 알지 못한다. 이 원리를 초월하는 사람은 세상에 없다. 자기가 이미 하고 있는 분야, 혹은 잘 알고 있는 분야에 집중해서 우물물을 파듯 최대한 깊이 들어가라. 들어가서 물이 아니라 원리(principle)를 퍼 올려라. 그렇게 퍼 올린 원리를 조금씩 다른 분야에 적용해보라. 하수는 자잘한 구현에 집중하고 고수는 언제나 원리에 집중한다는 사실을 기억하라. 마지막 문장이 목적의 핵심이 되는 문장입니다. ...

2019년 4월 6일 · 2 분 · Maru