ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 플러터 2.8 릴리즈 간략 정리
    개발일지/flutter 2021. 12. 18. 11:42

    안녕하세요 개발하는남자 개남입니다. 

    오늘의 포스팅 내용을 플러터 새로운 마이너 버전 업데이트 소식입니다. 

    구글에서 아무래도 플러터 사용량이 늘어남에 따라 더욱더 플러터 사용하는 개발자들의 불편함을 개선하기 위해 열심히 개발하고 있는 것 같습니다 :) 아주 좋은 소식이지요 (한편으로는 기존 소스를 최신 버전으로 migration을 해야 하는지 고민과 새로운 기능에 대해 학습해야 하는 상황이 발생하게 되지만 말이죠 ㅎㅎ) 


    가장 첫 내용으로 어떤것을 정리할까 하다가 플러터가 올해 얼마나 성장했는지 한번 살펴보면 좋을 것 같아 서 가장 첫 내용으로 다뤄봅니다. 

    올해 Google I/O에서 발표했을 때 플러터로 개발된 앱이 20만 개가 넘는다고 발표했었는데 불과 6개월 만에 거의 2배가 될 정도로 급상승되었다고 합니다. 그만큼 많은 개발자들이 크로스 플랫폼을 선택할 때 플러터를 많이 고려하고 있다고 생각할 수 있을 것 같네요 릴리즈가 되면 될수록 더욱더 그 수치는 늘어나게 되겠지요  ^^ (아주 긍정적인 발표입니다)

    또한 제가 처음 플러터로 개발할때의 레퍼런스보다  많은 정보를 쉽게 찾을 수 있다는 점에서 점점 플러터 개발환경이 좋아지고 있다고 생각합니다. 

    새로운 기능 성능 향상 

    플러터 개발팀에서 항상 업데이트에 주된 목적으로 앱의 퀄리티 향상에 힘들 솟는다고 합니다. 

    크로스 플렛폼으로써 다양한 기기 및 장치에서 원활하고 안정성 있게 실행되기 위해 많은 시간과 노력을 다하고 있다고 전하고 있습니다. 실제로 메모리 성능 향상이 있다고 하는데요 안드로이드에서 최대 40MB의 메모리를 절약할 수 있다고 합니다. 

    새로운 기능으로는 카메라 기능과 웹뷰 및 웹 플러그인이 강화 되었다고 합니다. 그리고 개발자들에게 개발 생산성을 높이는 기능으로 파이어 베이스 인증을 제어하는 UI(Widget)을 제공한다고 합니다. 이것을 사용하면 이중 인증 등 복잡한 flow에 대해 전혀 고려하지 않아도 해결해줄 수 있다고 하는데요. 이 부분은 직접 사용해보고 따로 포스팅을 남겨보도록 하겠습니다. 

     


     

    Flutter DevTools

    이번 업데이트로 DevTools의 기능중 "Enhance Tracing" (추적 향상) 기능이 추가되었다고 합니다. 이 기능을 활용하여 비용이 많이 발생하는 UI 다시 말해 버벅거리는 UI를 발견하고 진단해주는 기능이라고 합니다. 

    위 이미지 처럼 활성화시키게 되면 타임라인에 위젯 빌드, 렌더링 개체 등을 시각적으로 확인할 수 있고 어떤 위젯이 느린지를 확인하여 해당 부분의 성능을 개선할 수 있도록 도와줄 수 있을 것 같습니다. 

     


    Web Platform views

    이번릴리즈로 플러터 웹용 view의 성능도 향상되었다고 합니다. 사실, webview 가 아닌 웹용 view를 사용해본 적이 없어서 잘 모르겠지만 안드로이드 화면이나 ios 화면을 native level의 화면을 플러터 화면으로 보여주기 위해서 AndroidView 나 UiKitView를 사용해본 경험은 있는데 web의 화면을 보여주기 위한 view 가 있는 줄도 몰랐습니다. 

    HtmlElementView라는 위젯을 통해 구현이 가능하며 성능또한 좋아졌다고 합니다. 

    이것을 활용하여 플러터 웹 앱 내부에서  html의 요소들을 호스팅 할 수 있다고 합니다. 

     

     


     

    GA of Flutter Ads

    11월에 Flutter 용 Google 모바일 SDK가 출시되었다고 합니다.

    이번 릴리즈로 5가지의 구글 광고 포멧을 지원한다고 합니다. 

    사실 제가 앱 개발을하면서 광고를 달 일이 없어서 새로운 소식인지 잘 모르겠지만... (기존에도 있던 기능이 아닌가... )

    새로 나왔다고 합니다. 기존의 방식보다 쉽게 세팅이 되는 그런 것인지.. ^^ 혹시 이부분에 대해서 좀 더 아시는 분이 있다면 아래 댓글로 알려주시면 감사하겠습니다 ~!


    향상된 DartPad 와 Firebase 사용 가능해진 DartPad

    다들 DartPad 를 사용하고 계신가요? 사용하지 않았다면 혹은 DartPad가 뭔지 모르신다고 한다면 이 내용은 skip 하셔도 될 것 같습니다. DartPad는 웹에서 Dart 언어로 간단하게 혹은 테스트성으로 돌려볼 수 있는 용도로 사용하고 있는 서비스가 있습니다. 저도 간단하게 Dart 문법을 확인하기 위한 목적으로 사용한 경험이 있는데요. 이번 릴리즈에서 DartPad 서비스 역시 업그레이드가 되었다고 합니다. 23개의 package 들을 import 해서 사용할 수 있다고 합니다. 

    또한 DartPad에서 Firebase를 연동해서 테스트 해볼 수 있게 되었습니다. ( 사실 DartPad에서 파이어 베이스를 연결할 일이... 있을까? 싶기도 합니다... )

     


    파이어 베이스 Object/Document Mapping (ODM)

    Firebase ODM의 경우는 알파 버전으로 아직 정식 릴리즈 단계는 아닌 것 같습니다. 하지만 릴리즈 노트에 언급이 되어있기 때문에 정리해보자면,  Firebase ODM은 플러터 개발자들의 생산성을 높일 목적으로 안전하고 구조화된 객체 및 메서드를 통해  Firebase  사용을 단순화할 수 있다고 합니다. 

    @JsonSerializable()
    class Person {
      Person({required this.name, required this.age});
    
      final String name;
      final int age;
    }
    
    @Collection<Person>(‘/persons’)
    final personsRef = PersonCollectionReference();
    
    personsRef.whereName(isEqualTo: 'Bob');
    personsRef.whereAge(isGreaterThan: 42);

    위에서 사용한 것 처럼 기존의 방식보다 적은 코드양으로 쉽게 firebase 데이터를 접근할 수 있어 보입니다. 

    더 자세한 내용을 확인하기 위해서는 아래 링크를 통해 확인하실 수 있습니다.

     

    Cloud Firestore ODM | FlutterFire

    The Cloud Firestore ODM is currently in alpha. Expect breaking changes, API changes and more. The documentation is still a work in progress.

    firebase.flutter.dev

     


    DeskTop

     

    또한 제가 아주 기대하고 있는 부분은 플러터 DeskTop 입니다. 아직은 어려가지 많은 기능을 작업 중인 상태로 보입니다만 조만간 모바일 , 웹 못지않게 데스크톱으로도 좋은 서비스를 만들 날이 오지 않을까 싶습니다. 대표적으로 FlutterFire Desktop을 보면 예상되겠지만 firebase 연동이 데스크톱으로 가능하다는 소식입니다 물론 아직 베타 버전으로 알고 있습니다. 하루빨리 정식 버전으로 나오길 기대해봅니다 ^^

     


    여기까지 이번 플러터 2.8 릴리즈 소식을 정리 해보았습니다 위에서 언급한 내용 외에도 몇 가지가 더 있지만 개인적인 생각으로 그렇게 큰 부분은 아니라고 생각되어 생략하였습니다 ^^

    full 내용을 확인하고 싶으시다면? 아래 링크를 통해 확인이 가능 합니다 ~! 

     

    What’s New in Flutter 2.8

    Performance improvements, new Firebase features, desktop status, tooling updates and more!

    medium.com

     

    이 내용이 조금이라도 도움이 되셨다면? ?  공감 한 번씩 눌러주세요 ^ ^ 

    그리고 플러터 개발에 대한 개발 영상을 보고 싶으시다면? 

    유튜브의 개발하는남자를 찾아주세요 ㅎㅎ

    댓글

Designed by Tistory.