タグ

2024年2月4日のブックマーク (2件)

  • FlutterでIsolateを用いた並列処理をするべきシーンとそのやり方

    操作感の良いアプリとするためには、ユーザー操作に即座に反応し、滑らかな画面更新がなされることが重要です。現在普及しているモバイル端末の多くは60fps(1秒間に60回の頻度)で画面更新をするようになっていて(iPad Proなど120fpsの端末も一部存在します)、つまりアプリケーションコードはそれに間に合うように約16ms以内に処理を実行する必要があります。これを超えると、操作に対する反応がワンテンポ遅れてもっさり感がでたり、画面がカクついたぎこちないものとなって、使用感が下がってしまいます。 記事では、Flutterでアプリを作る際にこのあたりについてはどうケアしていけば良いのかを解説します。記事は少し長くなりますが、要点は以下です。 TL;DR大前提として、Dartの実行モデルはシングルスレッド・イベントループであるMain Isolateだけでは Futures・Streams

    FlutterでIsolateを用いた並列処理をするべきシーンとそのやり方
    iig742
    iig742 2024/02/04
  • [Flutter]アプリのライフサイクルについての個人的まとめ

    アプリのライフサイクルとは アプリはいつでも使っているわけじゃなく、上から設定の画面や電話画面が割り込んできたりする。また、バックに移動させて、違うアプリを開いたりするように色んな状態をもつ。 一時停止や復旧に対応した処理を準備しておくこと についての技術(UXの向上につながる) statefulWidgetが「画面」のライフサイクルなら画面の割り込み時などの状態は「アプリ」のライフサイクルだと言える ソースコードの例 ポイントは以下から引用してきた部分 didChangeAppLifecycleStateというメソッドが変更があるたびに呼び出されます。 引数のAppLifecycleStateは状態に対応する以下の4つのいずれかを返します。 AppLifecycleState.inactive:非アクティブ時 AppLifecycleState.paused:停止時 AppLifecyc

    [Flutter]アプリのライフサイクルについての個人的まとめ
    iig742
    iig742 2024/02/04