【Flutterニュース】Chompy終了、Dart 3.0.0リリース情報、最高のriverpod解説動画、ChatGPTとGitHub Copilotの実践レビューほか【2023年4月17日】


最近見つけたいろんなFlutterのニュースを、個人的に興味あるやつからどんどん紹介していきます!

Chompyが終了

Flutterで作られてたフードデリバリーアプリのChompy終了しましたね!

ユーザーとしては、コロナ真っ只中の2020年に、クーポンでめちゃくちゃ安く注文しまくったのを覚えています。

また、Flutterアプリとしては、2020年の段階でユーザーが沢山いて、高機能で、UIUXも良かったので日本トップのFlutterアプリと言っても過言ではなかったと思います。

今はFlutterアプリが増えてきましたが、Flutter1系の時から日本のFlutter界をリードしてくれました。

私も「Flutterって結局ネイティブより動き良くないんでしょ?」って言われたらChompyアプリを見せて、そんなことないよと言い返してましたw

ありがとう。Chompy。

見つけた興味深い記事

パフォーマンス比較の記事を可茂IT塾が出していたのでシェアです。

【flutter】 Stateful,riverpod,flutter_hooksの3種類のDropdownButtonを比較する
flutterの状態管理にはStatefulWidgetを使う方法、riverpodを使う方法、flutter_hooksを使う方法の3つが主流かと思います。今回は3つの実装方法を比較し、どの実装方法が良いかを見ていきたいと思います。

StatefulWidgetとrivepodだとConsumerで再描画範囲を絞れるので後者の方がパフォーマンスが良いという結論になってます。

ツッコミどころとしては、StatefulWidgetでもうちょい再描画する範囲を狭めれば、パフォーマンスの差はもうちょい小さくなるのでは?と思いましたが、それにしても同じ状況をStatefulWidgetとStatelessWidgetの組み合わせだけで作り出すのは相当指南の技かと思いますので、まあproviderとかriverpodの方がパフォーマンス良くしやすいというふうには思います。

注意なのは、riverpodもFlutterの仕組みの上で作られた状態管理packageなので、厳密にはriverpod使わなくても同じ状況を作ることができるという点です。ただ、それはめんどくさいのでフレームワーク化してくれてるのがriverpodということですね。

ルビーDogニキのriverpod動画がわかりやすい

動画第三弾まで出てて、あと1つ待ちです。

Flutter大学のriverpod苦手勢たちが、全裸待機中でございます。

↑めちゃくちゃ分かりやすいです。

僕にはないセンスを感じて嫉妬します笑

テックフォードアカデミーのFlutter講師、交代

2022年10月から2023年3月の半年間だけ私kboyがバンタンテックフォードアカデミーのFlutter講師を担当してたのですが、2023年4月からはMasakiさんに交代しました!

MasakiさんはFlutter大学も有効活用してFlutterエンジニアになった人の1人で、現在はフリーランスエンジニアとしてFlutterエンジニアをしています。この講師経験も活かしてさらなる成長をしてくれると思います!

もちろん、彼の教え子も成長するでしょう!

Dart 3.0.0のリリースが近い

Dart3のchangelogが更新されました

まだFlutterのstableに入ってないけど、GoogleIOで発表されるかも?

個人的に最近得た知見、NavigationRails

NavigationRails初めて使いました。

Flutter大学のFlutterWebに実装してます。

NavigationRail class - material library - Dart API
API docs for the NavigationRail class from the material library, for the Dart programming language.

Flutter Web、CanvasKitのパフォーマンスが改善されたらしい

webのパフォーマンスが改善されたみたいです。

Skiaなので、htmlレンダラーでbuildしてるFlutter大学webには影響なさそう。

CanvasKit(Skia)にすると、Firebase storageにある画像が出ない問題がまだあるので、まだ個人的にはHTMLレンダラーかなーと思います。

関連記事

Flutter 2で使えるWebAssemblyレンダラー CanvasKit は本当に高速なのか? - GMOインターネットグループ グループ研究開発本部
こんにちは。F.S. です。 2021年3月3日に開催されたFlutter EngageでFlutter 2が
FlutterがSkiaをやめる!? - NIFTY engineering
初めに こんにちは!Flutterエンジニア(自称)の柴田です。 Flutterは、UIレンダリングエンジンと
Impeller rendering engine
What is Impeller and how to enable it?

ハッカソンに参加したよ

Flutter大学の主催でFlutterハッカソンを開催しました。

僕も1チームとして文鳥ボーイという名前で参加させてもらいました。最高でしたね。

ハッカソン in flutter別荘 (2023/04/15 13:30〜)
滋賀の古民家で1泊2日、Flutterアプリを開発するハッカソンを開催します。 ## テーマ 開発のテーマはFlutterを用いていれば自由です。なんでもあり! はじめにチームで今回のハッカソンで取り組むことを発表していただき、最後に成果発表を行っていただきます。 ## 参加条件 2人〜4人のチームを組んでFl...

今週の雑感、ChatGPTとGithub Copilot

ここ1、2週間で、ChatGPT(GPT4)とGitHub Copilotを積極的に使ってみました。

それぞれメリットデメリットを挙げてみます。

ChatGPT

メリット
  • stripeのドキュメントは見るページが多くて、全体を理解するのに時間がかかるのだが、GPTに聞くと、具体的な自分のユースケースとドキュメントの架け橋をしてくれるイメージがあったのがよかった。
  • 大量のコードを同じパターンで書き直す時に役立った(enumの命名規則を全部変える時など)
デメリット
  • まだ信用できない。信用はできないが、プロンプトが適切だと意外に合ってる。
デメリットへの対策
  • 「正確度(accuracy)を出すように」というプロンプトを毎回つけるようにして、信用できるかどうかを判断するための材料にする

GitHub Copilot

メリット
  • ごくたまに、今頭の中に浮かべていたそれだよそれ!ってコードを出すことがある。適切な変数名をつけて、その後改行したときに、その変数名と周りのコードから、「このロジックだろ?」みたいな提案が出てきた時は感動した。
デメリット
  • Flutter Dart本来のコード補完よりもGithub Copilotの補完が先に出てきて、それっぽいが存在しないメソッドとか提案してくる時はウザい
  • 日本語のコメントを補完してくる時は、だいたい間違っているのでウザい
  • 完全に信用できるクオリティになってしまったら、頭使わなくなって、自分の頭が悪くなりそうw
デメリットへの対策
  • ウザイのが出てきたらescキー押す。
  • ウザいけど使ってみないと良さがわからないので、一旦許容してる

まとめ

今週のFlutterニュースでは、フードデリバリーアプリChompyの終了、パフォーマンス比較記事、リバーポッド動画の紹介、Dart 3.0.0リリースが近いこと、そしてChatGPTとGitHub Copilotの使用感を語りました。Flutter技術者たちにとって役立つ情報が満載です。

↑P.S GPT-4がこのまとめを書きました

タイトルとURLをコピーしました