Placeholder Image

字幕表 動画を再生する

AI 自動生成字幕
  • ♪♪

    ♪♪

  • Dart's event loop supports most types of asynchronous operations through futures and streams, but those two alone cannot handle every scenario.

    Dartのイベントループは、フューチャーとストリームを通じてほとんどの種類の非同期操作をサポートしているが、この2つだけではすべてのシナリオを処理することはできない。

  • For advanced control of futures, reach for a completer.

    先物の高度なコントロールには、コンプリターが適している。

  • To start, import dart-async, create a new completer, and give it a type.

    開始するには、dart-asyncをインポートし、新しいcompleterを作成し、それに型を与える。

  • The point of a completer is to access its future attribute, which you can programmatically resolve using the complete method.

    completerのポイントは、そのfuture属性にアクセスすることであり、completeメソッドを使ってプログラムで解決することができる。

  • One common use case for completers is any class which must complete asynchronous setup before completing its primary task.

    コンプリターの一般的な使用例としては、主要なタスクを完了する前に非同期セットアップを完了しなければならないクラスがある。

  • To start, define a class which initializes a completer.

    手始めに、コンプリターを初期化するクラスを定義する。

  • This one uses a bool to indicate whether the initialization was successful.

    これは、初期化が成功したかどうかを示すboolを使用している。

  • Next, add a getter to expose the completer's future.

    次に、ゲッターを追加して、コンプレーヤーの未来を公開する。

  • Now, run your initialization code.

    さて、初期化コードを実行しよう。

  • Then, complete your completer and pass a value that matches your type.

    次に、コンプリターを完成させ、タイプにマッチする値を渡す。

  • Any code that uses this class can now await isReady before calling methods that depend on that setup.

    このクラスを使うコードは、セットアップに依存するメソッドを呼び出す前にisReadyを待つことができる。

  • And if an instance of my class has already completed its initialization, isReady will resolve immediately.

    また、私のクラスのインスタンスがすでに初期化を終えていれば、isReadyはすぐに解決される。

  • Another fun use case for completers is abstracting away streams.

    コンプリーターのもうひとつの楽しい使用例は、ストリームを抽象化することだ。

  • Imagine a class with an input stream and an output stream, and a method that needs to put one value into the input stream and then return the next value that is emitted from the output stream.

    入力ストリームと出力ストリームを持つクラスと、ある値を入力ストリームに入れ、出力ストリームから出力される次の値を返す必要があるメソッドを想像してほしい。

  • The only problem with streams is you don't know when that will happen.

    ストリームの唯一の問題は、それがいつ起こるかわからないということだ。

  • Set up a completer in your method and immediately return its future.

    メソッドにコンプリターを設定し、すぐにそのフューチャーを返す。

  • Then, in your listener to the output stream, complete the completer.

    次に、出力ストリームへのリスナーで、コンプレッサーを完成させる。

  • This will send that new value through the future returned by the increment method.

    これは、incrementメソッドによって返されたfutureを通して新しい値を送る。

  • Check the DartPad link in the video description for example code, or for more info on completers and all other Flutter development techniques, head to flutter.dev.

    サンプルコードについてはビデオの説明にあるDartPadのリンクをチェックしてほしい。また、コンプレッサーやその他すべてのFlutter開発テクニックについての詳細は、flutter.devにアクセスしてほしい。

  • ♪♪♪

    ♪♪♪

♪♪

♪♪

字幕と単語
AI 自動生成字幕

ワンタップで英和辞典検索 単語をクリックすると、意味が表示されます