タグ

exceptionに関するcoppieeeのブックマーク (3)

  • デザインパターンとしての例外ハンドラ - オブジェクト指向と型システムの狭間で例外を考える その4 - プログラマーの脳みそ

    例外考察シリーズ。 オブジェクト指向と型システムの狭間で例外を考える - プログラマーの脳みそ 契約書に捨印を押す - オブジェクト指向と型システムの狭間で例外を考える その2 - プログラマーの脳みそ try-catch方式・ハンドラ方式 - オブジェクト指向と型システムの狭間で例外を考える その3 - プログラマーの脳みそ 前回はプログラム言語の例外処理機構としてtry-catch方式の他に、ハンドラによる例外処理方式を考えることができる、という話をした。「考えることができる」がこの2010年現在にそういった例外処理機構をもった言語があるかというと僕は寡聞にして知らない。ああ、僕は当に寡聞なのでただの無知の可能性のほうが高い。メジャーどころではなさそうなんだけどどうだろう。 プログラム言語の機能として、という話だと、プログラム言語を作ろうという人とか、あるいは将来にハンドラ式の例外処

    デザインパターンとしての例外ハンドラ - オブジェクト指向と型システムの狭間で例外を考える その4 - プログラマーの脳みそ
    coppieee
    coppieee 2010/01/26
    こういうの何パターンと呼ぶべき?
  • 例外の本質は何か - SiroKuro Page

    例外関係の話題が冷め切らないうちに、例外の質に付いて考えてみます。 検査例外と非検査例外の質は何か java 以前のプログラムにおいては、例えばセグメンテーション違反を起こした場合にはアプリケーションが異常終了します。 同様に java においても、NullPointerException は catch せず、そのままアプリケーションを終了させることが望ましいと考えられています。これは例外的事象の発生時にアプリケーションを暴走させずに終了状態へと遷移させることで、その後に予期せぬ挙動を起こすことを防ぐためです。 NullPointer は「セグメンテーション違反」と同様の使い方が想定される 一方、IOException のような入出力関連の例外に目を向けると、C では「ファイルハンドラが NON-NULL か否か」について条件分岐を行い、NULL 時にはエラー処理を行うことが望まれま

    例外の本質は何か - SiroKuro Page
  • try-catch方式・ハンドラ方式 - オブジェクト指向と型システムの狭間で例外を考える その3 - プログラマーの脳みそ

    例外考察シリーズ。 オブジェクト指向と型システムの狭間で例外を考える - プログラマーの脳みそ 契約書に捨印を押す - オブジェクト指向と型システムの狭間で例外を考える その2 - プログラマーの脳みそ try-catch方式のおさらい 例外のthrowというのは、コンパイラあるいはランタイムのレベルで、メソッドの戻り値を拡張することで表現できる。 処理中になんらかの異常事態が発生して、文字列表現じゃない何かを返さざるをえない状況ってのに直面したとする。するとString型の戻り値じゃそんなの表現出来ないから困る。 さてここで、原始的に解決する場合のコードを考えてみよう。 public static class Result { /** 戻り値 */ public Object value; /** 成否フラグ */ public boolean success; } といった型をつくり、

    try-catch方式・ハンドラ方式 - オブジェクト指向と型システムの狭間で例外を考える その3 - プログラマーの脳みそ
    coppieee
    coppieee 2010/01/22
    わぉ。同じこと考えてた。AS3ではファイルのエラー処理はイベントハンドラでしてる。AS3のそれは、静的な検査が存在しないので微妙だけど。
  • 1