flutter_smooth - ~60 FPSを達成、構築/レイアウトするツリーがどれほど重くても

(Achieve ~60 FPS, no matter how heavy the tree is to build/layout)

Created at: 2022-09-27 13:56:45
Language: Dart
License: MIT

flutter_smooth

ロゴ

~60 FPSを達成し、ツリーの構築/レイアウトがどれほど重くても。

🎼3秒動画

https://user-images.githubusercontent.com/5236035/196152010-09a2d829-c94c-48b4-80ed-0633430329ec.mp4

(左=スムーズなし、右=スムーズ、エンドユーザーの知覚を最大限に示すために外部カメラでキャプチャ。高解像度ビデオはこちら)

📚1分間の説明

目的

ツリーの構築/レイアウトがどれほど重くても、(大まかに)フルFPSで実行され、滑らかに感じられ、不快なジャンクはなく、オーバーヘッドはごくわずかです。(詳細なレポートはこちら)

使い

2つの可能性:

  • ドロップイン置換:一般的なシナリオでは、6文字(「スムーズ」)を追加します。

    ListView
    SmoothListView
    MaterialPageRoute
    SmoothMaterialPageRoute

  • 任意に柔軟なビルダー:複雑なケースでは、 スムーズにしたいものは何でも入れます の中に。

    SmoothBuilder(builder: ...)
    builder

🚀次のステップ

ドキュメント-https://fzyzcjy.github.io/flutter_smooth/、使用法、デモ、ベンチマーク、洞察などが含まれています。

手記質問/問題がある場合は、自由に問題を作成してください。私は通常、睡眠を除いて、数時間ではないにしても数分以内に迅速に返信します:)

貢献

すべての貢献者

これらの素晴らしい人々に感謝します(すべての貢献者の仕様に続く絵文字キー):

fzyzcjy
fzyzcjy

💻 📖 🤔
イアン・ヒクソン
イアン・ヒクソン

🤔
ダンフィールド
ダンフィールド

🤔
ジョナ・ウィリアムズ
ジョナ・ウィリアムズ

🤔
ガクラーク
ガクラーク

🤔
なゆた403
なゆた403

📖

より具体的には、これらすべての貢献に感謝します。

  • @Hixie(Flutterチーム):ゼロオーバーヘッドの原則を要求するなど、Flutterフレームワーク/エンジンに対する私のいくつかの提案の詳細を検討してください。最初の提案が脆弱になったときに具体的なケースを構築します。
  • @dnfield(Flutterチーム):プロトタイピングを支援するために、Flutterフレームワーク内に標準的なジャンキーケースを提供します。迂回を避ける同期ジェネレータの遅さを指摘します。
  • @jonahwilliams(Flutterチーム):古いジェスチャーシステムの提案の精巧な欠点(後で私ははるかに自然なものを作りました)。
  • @gaaclarke(Flutterチーム):遅さはメモリの局所性によって引き起こされるという彼のペット理論を共有し、パッケージの別の潜在的なアプリケーションを示しています。
  • @Nayuta403:リンクを修正しました。