タグ

exceptionに関するxai1981のブックマーク (11)

  • C#のthrow eは使うな! - Qiita

    はじめに C#では、throw eで、例外を再スローすると、スタックトレースが上書きされるので、throw eは使わないほうが良いです。 サンプルで説明 using System; namespace csharp { class Program { static void Main(string[] args) { try { Method2(); } catch (Exception e) { Console.WriteLine(e); } } private static void Method2() { try { Method1(); } catch (Exception e) { throw e; } } private static void Method1() { throw new Exception("エラー発生"); } } } System.Exception: エ

    C#のthrow eは使うな! - Qiita
  • Exception.Data プロパティ (System)

    public: virtual property System::Collections::IDictionary ^ Data { System::Collections::IDictionary ^ get(); }; public virtual System.Collections.IDictionary Data { get; } member this.Data : System.Collections.IDictionary Public Overridable ReadOnly Property Data As IDictionary プロパティ値 IDictionary インターフェイスを実装し、ユーザー定義のキー/値ペアのコレクションを格納するオブジェクト。 既定値は空のコレクションです。 例 次の例では、 プロパティを使用して情報を追加および取得する方法を Data

    Exception.Data プロパティ (System)
  • Swiftのエラーハンドリングはなぜ最先端なのか - Qiita

    Swiftのエラーハンドリングは他のメジャーなプログラミング言語のどれとも異なる新しい仕様を持っています。特に、検査例外を持っているのですが、これはJavaで採用された以降はほとんどの言語で採用されていないため、現代では否定されている過去の間違いだったと広く認識されていると思います。そのため、Swiftユーザーで無い人は、検査例外という言葉をみた瞬間に興味を失ってしまうため、その詳細がなかなか世の中に伝わっていないと感じています。一方、私はこんなSwiftのエラーハンドリングをとても気に入っていて、様々な言語の進化の歴史を踏まえた産まれた最も優れた最先端の仕様だと思っています。この記事ではその考えを説明します。 Javaのエラーハンドリング Javaは検査例外を持っています。これにより、あるメソッドがエラーを送出するかどうかを関数のシグネチャとして静的に表明できます。 // 検査例外の例

    Swiftのエラーハンドリングはなぜ最先端なのか - Qiita
  • SQL Server で意図的にエラーを起こす - SQL Server 入門

    SQL Server で意図的にエラーを起こすには? 予期せぬエラーが起こった際のログ機能などとテストするために、意図的にエラーを起こしたい時や、想定と違ったデータが保存されそうになった時に、エラーを起こしてでも処理をロールバックさせたいような状況、なくはないですよね。 今回はそんな時に使える、SQL Server で意図的にエラーを起こす方法をご紹介します。 RAISERROR を使ってエラーを起こす RAISERROR を使ってシンプルにエラーを起こすクエリーは以下の通りです。 RAISERROR ([error_message], [severity], [state]); 例えば、severity 16 で、Error!!! というエラーメッセージでエラーを起こしたい場合は次のようにします。 エラーの内容については 「 SQL Server のエラーメッセージを理解する 」 をご覧

    SQL Server で意図的にエラーを起こす - SQL Server 入門
  • アプリケーションから例外を投げる派、投げない派 - Shin x Blog

    例外をどのような状況に投げるかもしくは投げないか、というのはわりと意見が分かれるところです。もちろん、プログラミング言語によっても異なりますが、同じプログラミング言語ユーザ同士でも様々です。 基の考え方 ベースとしては、Effective Java の項目 39 にある下記の方針が参考になります。 例外的な状況の時にのみ例外を使う。 Effective Java 禅問答のような定義ですが、これには異論は無いでしょう。例外を正常フローで利用したり、制御構造に用いるべきではありません。 人によって異なるのは「例外的な状況」の解釈です。 例外的な状況 この「例外的な状況」の解釈は人によって異なるようで、これまでも議論になっていました。これまで聞いた解釈を乱暴に分けると以下の 2 パターンに分かれます。 1. アプリケーションから独自の例外を投げる派 ランタイムやミドルウェア連携などプラットフォ

    アプリケーションから例外を投げる派、投げない派 - Shin x Blog
  • 間違ったコードは間違って見えるようにする - The Joel on Software Translation Project

    Joel Spolsky / 青木靖 訳 2005年5月11日 水曜 私が最初の当の仕事をはじめたのは1983年9月に遡る。それはオラニムというイスラエルの大きな製パン工場で、16台の飛行機ほどもある巨大なオーブンで、毎晩10万個のパンが作られていた。 はじめて工場に入った時、そのあまりの汚さに信じられない思いだった。オーブンの側面は黄ばんでいるし、機械は錆びていて、そこらじゅうが油だらけだった。 「いつもこんなに汚いの?」と私は聞いてみた。 「なんだって? なんの話をしてるんだ?」とマネージャが答えた。「掃除したばかりだから、今が一番きれいな状態なんだ」 なんてこった。 毎朝の工場の清掃を何ヶ月か続けて、ようやく彼らの言っていたことが理解できるようになった。パン工場では、きれいというのは機械にパン生地が付いてないことを言うのだ。きれいというのは、ゴミ箱に発酵したパン生地が入ってないこと

  • Big Sky :: golang で複数のエラーをハンドリングする方法

    golangいまどき例外ないの頭おかしいって思ってたけどようするにgoroutineと例外がうまくいかないからgoroutineのほう取って例外捨てたってことかねえ。 — Urabe, Shyouhei (@shyouhei) April 15, 2014 FAQ に書いてあります。 Why does Go not have exceptions? - Frequently Asked Questions (FAQ) - The Go Programming Language We believe that coupling exceptions to a control structure, as in the try-catch-finally idiom, results in convoluted code. It also tends to encourage programme

    Big Sky :: golang で複数のエラーをハンドリングする方法
  • 8-11. 例外2 try catch文 - マンガで分かる Java入門講座 - マンガPG

    ● try catch文 発生した例外を処理する方法は、throwsを使って呼び出し元のメソッドに処理を投げる方法と、もう1つ方法があります。それが「try catch文」を使って例外を受け取り、処理する方法です。 try catch文では、「try {処理}」で例外が起きる可能性のある処理を囲い、「catch(例外) {処理}」で、指定した例外クラスに対応した処理を行います。 この時、例外は「例外の型 変数」と書き、この変数は例外の詳細情報を得たり、出力に利用したりできます。

    8-11. 例外2 try catch文 - マンガで分かる Java入門講座 - マンガPG
  • 第12話 例外は例外だから例外じゃないの?:ソフトウェア開発に幸せな未来はあるのか:エンジニアライフ

    タイトルを見たらだいたい何のことかは察しが付くと思いますが、今回はそんな話。初めて書くエンジニアらしい話題かも。 ■例外の違和感 わたしは、前にも少し書きましたが、エンジニアとしては「ハードウェア設計→アセンブラ→PL/I→C言語→VC++Java→.NET(VC#)」……こんな感じで(途中、細かい物は端折ってますが)来ています。普通のソフトウェアエンジニアの人と違うのは、ハードウェア設計が始まりという点でしょうか。なんだかいい感じにソフトウェアの変遷の歴史みたいです。 最近は公私ともにVC#が多いです。動かす分にはかなり簡単にコーディングできますし、.NETもハードウェアの高速・大容量化に伴い非常に実用的なレベルになっています。仕事ではVC#とJavaが今は多いです。 ただ一点、どうしてもなじめない部分があります。それは、 例外処理が多くね? と感じる点です。Javaと.NETでは若干

    第12話 例外は例外だから例外じゃないの?:ソフトウェア開発に幸せな未来はあるのか:エンジニアライフ
  • PHPのオブジェクト指向入門 | オブジェクト指向PHP.NET

    例外処理 例外とは 例外処理の構文 例外処理の活用 例外とは 例外とは、正規の処理フローからは外れ、そのまま処理続行が出来ないような状況のことを言います。 例えば0除算を行っただとか、テキストファイルを読み込むのにそのテキストファイルが存在しないだとか、データベース処理においてSQL文が構文エラーだったとか。 普通、そういった事が発生する可能性を想定して処理の直前にチェックを入れ、問題のある場合の処理分岐を行うって事が考えられます。 割り算の前に割る数が0ではないかをチェックし、0ならエラーメッセージを表示して処理中断とか、テキストファイルの中身を読み込む処理の場合、テキストファイルが存在するか確認して、なければ作成、みたいな感じです。 PHPにはこういう例外発生時の処理を行う仕組みが存在します。 例外処理の構文 まずは構文です。 <?php try { throw new Excepti

  • はてなブログ | 無料ブログを作成しよう

    ビールとポップコーンと映画 ラストマイルを見た。良い映画だった。 映画館でべそべそ泣いて、鼻を啜りながら車で帰った。感想はこのブログでは書かない。みんな映画館に行って感じてみてほしい。 帰ってからツイッターで感想を漁り、うんうん、わかるわかる、そうだよね、とまた映画を思い出して…

    はてなブログ | 無料ブログを作成しよう
  • 1