Flutter Review Study
서론
틈틈히 다시 독스를 좀 읽으면서 기억을 되살려보자.
독스는 대부분 아는 내용이 많을 것이므로 설렁설렁 읽으려고 한다.
가로선이 되어있는건 공부의 흐름을 끊었다는 것을 의미한다.
일지
2023-10-04
공부를 시작해보자.
2023-10-12
플루터 독스는 UI 파트가 독스의 절반을 차지하고있는데, 아직 그만큼 프레임워크가 덜 발전했다는 반증이 될 수 있다.
아니, 불현듯 든 생각인데, 어쩌면 크로스플랫폼에서의 역할은 이정도라고 볼 수도 있을 것 같다.
플루터에서 블루투스 BLE를 구현하는법이 궁금한가? MethodChannel
이 독스에 나와있으므로 나머지것들을 Platform에 가서 직접 구현을 하거나 라이브러리를 찾으면 된다.
이런식으로 생각을 한다면 이해가 가는 부분이기도 하다.
2023-10-14
그만 적어도 될것같다.
Todo
A definitive guide to RenderObjects in Flutter
위는 RenderObject관련된 것들인데, 예전에 모두 봤지만 나중에 다시 봐야할 필요성을 느꼈다.
Flutter - Implement actions & shortcuts
Flutter - Manage keyboard focus
Keyboard와 관련된 Shortcut, Focus관련된 글들인데 나중에 필요하면 읽도록 하자.
Today I read…
2023-10-04
Kotlin을 쓸 때 불편했던 점 중 하나는 Generic type이 reified 키워드 없이 제대로 동작하지 않는다는 점인데, (그것도 제한이 있다.). Dart는 자동으로 reified가 되어 런타임에도 타입이 보존되어 편리하다.
Swift는 Generic에서만큼은 그 이상을 넘어선 강력함을 보인다.
Dart - Patterns Overview & Usage
굉장히 신박한 문법인데 약간 Swift의 그것과 비슷하지만 더 강력하다.
Json의 타입을 case
로 판별할 수 있다거나 여하튼 요긴하게 쓰일 것 같다.
Dart 3.0에 많은 기능이 추가가 안된 줄 알았는데, Record랑 Pattern만 해도 큰 변화 같다.
2023-10-05
언어들의 Class의 동작을 배우는 것은 특히 복잡한데, 보통 써가며(맞아가며) 배우는 것이 빠를 수 있다.
특히 생성자 쪽이 가장 험난할 수 있다.
생성자가 상속이 되는지? 어떤 phase가 있는지? 언제 this(self)
에 접근할 수 있는 권한이 주어지는지? initializer list를 지원하는 문법인지? 등이 언어마다 조금씩 달라 헷갈릴 수 있다.
Dart 3.0에 뭐가 이렇게 많이 추가되었는지 ㄷㄷ
어쩐지 독스를 다시 읽는데 처음 보는 것들이 원래 있었나? 했었는데 모두 3.0에 추가된 것들이였다.
Dart - Class modifiers for API maintainers
Dart - Effective Dart - Overview
Dart - Effective Dart - Documentation
2023-10-06
Dart - Core libraries - Overview
Dart - Creating Stream in Dart
Flutter - Flutter for SwiftUI devs
예전에 공부할 땐 Flutter for React Native devs를 읽으며 이렇게 다른 플랫폼의 개발자들까지 끌어들이려한다고? 라고 생각했는데 이걸 SwiftUI dev용으로 다시 읽게 될 줄은 몰랐다.
Flutter - Building user interfaces with flutter
Flutter - Create and use lists
Flutter - Create a horizontal list
Flutter - Create lists with different types of items
진정 이것이 방법이란 말입니까?
Flutter - Create lists with spaced items
Layout Constraints 개념을 잘 알아야 글이 읽힐 것이다.
Flutter - Work with long lists
Flutter - Use slivers to achieve fancy scrolling
2023-10-07
Flutter - BackdropFilter class
Dart 3.0뿐만 아니라 Flutter에도 여러가지가 많이 생긴 것 같다. Flow
같은건 예전에 없었던 것 같은데, 정말 Flutter가 레이아웃 적으로는 그 어떤 플랫폼보다 구현하기가 간단하다는 것을 다시금 느끼게된다.
Sliver
자체의 API를 expose하는 것도 한 몫하고, Widget 레벨에서도 여러 Layout이 커스터마이징이 잘 되어있고, 조금만 더 들어가면 다른 프레임워크들 대비 더 low level한 API를 따져보았을 때, RenderObject
라는 친구와도 어렵지않게(?) 친해질 수 있는 기회가 있다고 생각한다.
Flutter - Create a scrolling parallax effect
Creating a Flutter widget from scratch
Flutter, what are Widgets, RenderObjects and Elements?
DEMYSTIFYING WIDGETS AND RENDER_OBJECTS MYTHS.
Flutter Under the Hood: BuildContext, RenderObject, Widgets
Flutter - Adaptive and responsive and design
Flutter - Build an adaptive app
Flutter - Update app UI based on orientation
Flutter - Share styles with themes
2023-10-08
Flutter - Exports fonts from a package
Flutter - Add interactivity to your app
Flutter - Gesture Introduction
Flutter - Add Material touch ripples
Flutter - Implement swipe to dismiss
Flutter - Create and style a text field
Flutter - Retrieve the value of a text field
Flutter - Handle changes to a text field
Flutter - Manage focus in the text fields
Flutter - Build a form with a validation
Flutter - Simple app state management
2023-10-09
Flutter - Add assets and images
Flutter - Display images from the internet
Flutter - Fade in images with a placeholder
Flutter - Add tabs to your app
Flutter - Navigate to a new screen and back
Flutter - Send data to a new screen
Flutter - Return data from a screen
2023-10-11
Flutter - Add a drawer to a screen
Flutter - Introduction to animations
Flutter Animations Comprehensive Guide
2023-10-12
Flutter - Animate the properties of a container
Flutter - Fade a widget in and out
Flutter - Animate a page route transition
간만에 플루터로 이것저것 위젯을 만져봤는데 역시 플루터의 매력은 이런 점인것같다.
모든 프레임워크중 가장 신생답게 UI를 그리는데 필요한 도구들을 쉽게 사용할 수 있다. 예를들어 Gesture나 Blur, Painter등이 있다.
Flutter - Animate using a physic simulation
AnimatedController.animateWith
, SpringDescription
, SpringSimulation
만 기억하면 된다.
GestureHandler
의 veloicty
에 pixelsPerSecond
라는 재밌는 속성도 발견했다.
Flutter - Create a staggered menu animation
Flutter - Animation API overview
Semantic에 관련해서는 iOS에서도 A11Y를 재미있게 구현해봤기 때문에 저번에도 읽었지만 다시 한 번 잘 읽어보았다.
2023-10-13
Flutter - Internationalization
Flutter L10N 미친놈이냐? ARB의 변변찮은 Editor조차 없다.
그나마 flutter_intl 이란 유틸리티가 존재해서 보일러플레이트를 제공해주기 때문에 ARB파일 작성법만 잘 익히면 쓸만하다.
하지만 ARB파일의 포맷은 예전에도 느꼈지만 당혹스럽다. 키도 camelCase만 사용해야된다는 점도.
Flutter - State management Introduction
Flutter - State management options
원래 즐겨쓰던 get_it
이 get_it_mixin
이란 패키지가 따로 있어서 상태 관리를 용이하게 해줬는데 더 나은 방식으로 watch_it
이란 이름으로 변경되었다.
Flutter - Store key-value data on disk
Flutter - Network & http - Overview
Flutter - Fetch data from the internet
Flutter - Make authenticated requests
한국어 독스 ㄷㄷ
Flutter: Mastering Modularization — In Several Ways
이제 그만 적겠다.
Comments