One Base Code로 멀티플랫폼 지원이라는 막강하지만 불안정한 플랫폼 논란이 계속 되는 Flutter(이하 플러터)가 구글의 지속적인 관리와 개발로 인해 지난 2022년 5월 11일, Google I/O에서 3.0.0 버전을 발표하였다.
3.0.0 업데이트에 대한 대략적인 요약을 통해 어떤 점들이 바뀌었는지 알아보자.
자세한 사항들은 아래 공식 릴리즈 노트와 블로그를 통해 보시기 바랍니다.
https://docs.flutter.dev/development/tools/sdk/release-notes/release-notes-3.0.0
https://medium.com/flutter/whats-new-in-flutter-3-8c74a5bc32d0
v3.0.0 업데이트 요약 (달라진 점)
1. 더욱더 다양해진 멀티 플랫폼 지원
3.0.0부터는 macOS와 Linux를 안정적으로 지원 하게 되었다.
이로서 플러터는 Android, iOS, Web, Windows, MacOS, Linux 총 6개의 플랫폼 앱을 개발할 수 있게 되었다.
2. Apple Silicon 프로세서(M 계열의 CPU) 지원
기존에는 Apple Silicon을 완벽하게 directly 지원해주지 못하고 Rosetta 등을 통해 지원해 주었는데, 이제는 완벽하게 지원하게 되었다.
build시 ARM 칩을 지원하는 빌드를 따로 해주고 Apple Silicon에서 기본적으로 실행되기 때문에 기존에 비해서 속도가 월등히 향상되었다.
3. Linux Application 지원
각 플랫폼마다 Design Style이 다른데, Android는 Material Design, iOS는 Cupertino를 사용한다.
3.0.0부터는 Linux에 대한 Design이 추가되었다. Linux는 yaru를 이용하여 linux만의 design style을 표현한다.
Pub.dev에서 yaru를 패키지로 제공하고 있고, 그 밖에도 linux에 필요한 플러그인(dbus, gsettings, bluetooth, desktop_notifications 등)을 지원해준다.
4. macOS 시스템 메뉴바 지원
PlatformMenuBar 위젯을 통해, macOS 메뉴 항목을 컨트롤 할수 있게 되었다.
메뉴바 위젯을 사용하여 앱 전용 메뉴를 구성할 수 있게 되었다.
5. Web 기능 향상
- Flutter framework, engine, contents 로딩을 제어할 수 있는 새로운 API가 추가되었다.
웹 상에서 headless mode로 flutter를 실행할 수 있게 해준다.
즉, 로그인 화면 혹은 진행률 바(달성률 바)를 표시하는 동안 이 API가 flutter 앱을 미리 load하게 할 수 있다.
- Image Decoding 성능이 개선됨
Google I/O에서 실행한 GIF Animation의 Stress Test에서 기존보다 더 높은 성능을 보여주었다.
6. Firebase 공식 지원
Firebase Console에서 플러터를 공식 지원하게 되었다. 그로인해서 더욱더 쉽게 연동이 가능해 졌다.
7. Meterial Design 3 지원
안드로이드 디자인의 최신 버전을 지원하게 되어 더욱더 세련된 UI 구현이 가능해 졌다.
8. Dart v2.17
Dart 버전 업이 되어 더욱더 안정적이고 더 많은 라이브러리를 사용할 수 있게 되었다.
9. Casual Games Toolkit
플러터에 공식 게임툴킷이 추가 되었다.
플러터로 게임을 개발할 수 있는 날이 오고 있지만 캐쥬얼 게임과 같은 가벼운 게임정도가 가능하다.
아래 링크는 플러터로 만든 핀볼 게임이다.
https://pinball.flutter.dev/#/
'Development Memories > FLUTTER' 카테고리의 다른 글
플러터(Flutter) v3.7.7 doctor 초기 실행시 에러 해결 (0) | 2023.03.21 |
---|