タグ

ブックマーク / ufcpp.net (2)

  • [雑記] 非同期制御フロー

    概要 C# 5.0のasync/awaitがなかったころ、少し複雑目な非同期制御フローをどうやって実現していたかという話。 C# 5.0を使えない状況下で非同期処理を書くことになった場合の参考としてや、async/awaitがどうやって実現されているかを知るきっかけになると思います。 サンプル コード(ZIP 形式。proj/sln 含め一式。) ポイント C# 5.0(await演算子)便利だなー await演算子が内部的にやっていることは、イテレーターに近い なので、昔はイテレーターを使って非同期処理をすることが結構あった サンプルの要件 今回の例として使うのは、Figure 1に示すような、確認ダイアログ表示のフロー。 確認ダイアログを表示する例 要は、何かを実行するにあたって、特定条件下では確認ダイアログの表示が必要で、すべてのダイアログで「OK」を押したときにだけ実行に移るという

    [雑記] 非同期制御フロー
  • [雑記] 例外の使い方(C# によるプログラミング入門)

    概要 言語構文的な意味での例外処理の方法は「例外処理」で説明しましたが、 実際のところ、どういう場合にどうやって例外を投げて、 どうやって処理すればいいのかは、 慣れるまでなかなか難しかったりします。 ということで、ここでは、例外の使い方について説明したいと思います。 例外の投げ方の基方針 例外の投げ方に関する考え方は意外とシンプルで、 「メソッドの定める結果を達成できないなら例外を投げる」という方針で OK です。 いくつか例を挙げてみましょう。 規約と例外 メソッド 規約 例外が起きる場面

    [雑記] 例外の使い方(C# によるプログラミング入門)
  • 1