https://proandroiddev.com/flutter-from-zero-to-comfortable-6b1d6b2d20e
제곧내 입니다만, 요 며칠 플러터를 시도해 보면서 공식 웹사이트의 개발 섹션이나, 구글 코드랩의 튜토리얼만 가지고는 조금 아리송한 부분들이 있었습니다. 이를테면 stateful과 stateless의 차이 라던가, 스캐폴드가 무엇인가, 또는 createState와 setState의 관계 등등이요.
공유한 링크가 아쉽게도 영어 블로그이지만 적절한 코드와 다이어그램을 통해 잘 설명되어 있으니, 저처럼 초반에 어려움 겪으시는 분들 께서는 한번쯤 읽어 보시면 좋겠습니다.
여담이지만, 플러터를 소개하는 글들이 마치 하나도 어렵지 않다는 듯이 소개를 하는데, 반은 맞고 반은 틀린 것 같습니다.
초보자 (약간의 프로그래밍 경험이 있는...) 에게도 다트의 초반 문법은 사실 크게 어렵지 않습니다만 (물론 future나 isolates 전에...), 플러터에 익숙해 지기 위해서는 모바일 앱 환경과 UI에 대한 이해가 없이 덤비기에는 조금 어려운 부분이 있습니다.
기존 다른 플랫폼의 개발자 분들에게는, 플러터의 접근 방식에 호불호가 갈릴 것 같습니다. 자마린/WPF 개발자분들은 XAML/C#을 분리하는데 익숙하실 것이고, 코르도바 개발자 분들은 HTML/CSS/JS를 분리하는데 익숙하실 것 입니다. 그런데 플러터는 그런 것이 없네요. 물론 XAML을 로드하지 않고 C#으로 다 바르는 분 (괴물?)들도 계시겠지만, 이 차이점이 플러터로 건너오는데 약간의 거리낌이 될 수 있을 것 같습니다.
개인적으로 싫은 부분은 build 안에 위젯 오브젝트 트리 작성하면서 괄호 닫는게 넘나 헷갈린다는 것....
golint 처럼 알아서 해주는 툴이 있으면 좋겠다는 생각이 많이 듭니다....
그럼에도 워낙에 툴링이 좋은 편이라 개발 사이클이 꽤나 빨라질 수 있다는 점은 어느쪽에나 어필할 만한 부분이라고 생각 합니다.
이 (또 다른) 블로그는 조금 더 스케일이 커질 때 어떻게 정리할 수 있을지에 대해 잘 보여 주네요.
플러터는 조금은 어지럽지 않나... 하는 느낌이 (아직은) 듭니다.
그래도 잘 정리 된 코드를 보면 싱글 파일 컴포넌트 같은 느낌으로 어떻게든 할 수 있겠다는 생각도 들구요.
괄호 뒤에는 무조건 콤마(,)를 붙이라는 얘기가 공식 문서에 나오네요 ㅋㅋㅋㅋ
https://flutter.dev/docs/development/tools/formatting
제 나름대로 이해 하기로는 return 하는 오브젝트 (대체로 build) 에는 세미콜론(; )을 붙이고, 나머지는 그냥 다 콤마를 붙이면 될 것 같습니다.