본문 바로가기

Flutter

(4)
사람이 가진, '다른' 힘은? 제목으로 하려다가 소제목으로 내렸습니다. Question lead programming. 트렌디 혹은 시장에 인기있는 프레임워크들을 익히다 보면 쉽게 마주하는 것들 - 상태관리 라이브러리. 플러터를 하는 사람으로서 그리고 대부분의 상태관리를 사용해보긴 했지만 가장 포멀하면서 대형 작업에 어울린다는 블록Bloc을, 흔히들 말하는 찍먹하려고 해봤습니다. 시작점은, 메인으로 쓰기에 결심했던 리버팟과 무엇이 다를까. 그러다가 문득 시장에서 핫한 챗지피티는 어떻게 인지하고 사용할까 싶어서 물어봤습니다. 블록 예제를 주고 리버팟 예제로, 그리고 반대로도요. 그랬더니 Sure! 하면서 그럴듯하게 바꿔줍니다. 그런데 상위 부분에는 줄줄이 리버팟용 프로바이더를 열심히 생성해 놓고는 하위 부분에는 기존의 코드를 그대로 씁..
Function expressions can't be named. Try removing the name, or moving the functi 버그가 났다고 해서 가보니 처음보는 버그. 그리고 구글링해도 별로 나오지 않는다. 자세히 살펴보자. 예) SliverChildBuilderDelegate( () {} ) 괄호 갯수를 잘 보시길 바란다.
플러터 패키지 중복 시 플러터가 ui측면으로 표기하는 방식은 통일되어 있습니다. 안드로이드 쪽이라면 머티리얼, 아이폰 쪽이라면 쿠퍼티노를 통해서 빌드타입 정하듯 가시적인 위젯을 정합니다. 비슷하다보니, 그리고 아직 체계적인 개발자 도구와 커뮤니티가 형성되어있지 않다보니 같은 이름으로 인해 패키지가 중복되는 경우가 종종 발생합니다. 주로 칼럼Column이나 열Row 등이 예라 할 수 있겠는데요, 그럴 땐 이유없이 빨간 줄이그어져서, 당황스럽습니다. 이럴 땐 임포트 하실 때에, 프론트 JS류에서 많이 쓰듯이 as nickname을 통해서 구분할 수 있습니다. 임포트 패키지 as nickname; 식으로요. 물론 본문에서도 사용하실때 nickname,그리고 . 연산자로 연결합니다. Nickname.Row() 정도가 되겠네요.
플러터, 플루터 다트Dart라는 언어가 있었습니다. 한 때, 가장 쓸모없는! 프로그래밍 언어로 꼽히기도 했죠. 그러다가 근래 들어 플러터라는 크로스 플랫폼의 메인 언어로 채택되면서 기적과 같이 부활했습니다. 크로스 플랫폼이라 함은, 보통 자마린이나 리액트 네이티브 정도를 들어보셨을텐데요, 안드로이드 진영을 기반으로 뻗어나간 또하나의 크로스 플랫폼 개발 도구라고 보시면 될 것 같습니다. 아무거나 집히는 대로 올리는데요 ㅎ 아직까지는 리액트 네이티브와 같은 유명 개발플랫폼에 비해 편의성, 커뮤니티 및 선제가 되지 않다보니 플러터 닥터라는 명령어를 통해서 개발환경 셋팅을 잡아줍니다. 물론 다 오케이 하더라도, 여러 버그가 많습니다. 그럴 때에는, 무거움을 감안하고 안드 스튜디오를 쓰시면 편..합니다. 10여일 써본 느낌으로는..