タグ

例外に関するotakumesiのブックマーク (5)

  • 残念な新卒のための生存手引書(実践編応用1 くそヤバイ時の乗り切り方) - 発達障害就労日誌

    ガン詰めが発生しました。 始まりましたね。番です。あなたはやらかしてしまった。あるいは、多少のやらかしが積みあがってついに発火点に達してしまった。個室に呼び出されるパターンか、あるいは自席でモリモリ詰められるパターンかはわかりませんが、とにかく「詰め」という概念があなたにふりかかって来てしまった。 叱責のために上司、あるいは先輩が時間を取るというのは結構ヤバい事態です。この場合、想定されるパターンは二つしかありません。一つが「時間をかけて言って聞かせよう」という時間をとってくれているパターンか、「一回こいつを徹底的にシバかなければ収まりがつかん」というお気持ちが発生しているかです。そして、人間というのは残念なので自分が現在このどちらの気持ちなのかを判別することは通常出来ません。 逆に言えばあなたがこれから取る態度次第で「こいつをとにかくシバキ殺す」になるか、あるいは「じっくり話して聞かせ

    残念な新卒のための生存手引書(実践編応用1 くそヤバイ時の乗り切り方) - 発達障害就労日誌
  • アプリケーションから例外を投げる派、投げない派 - Shin x Blog

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

    アプリケーションから例外を投げる派、投げない派 - Shin x Blog
    otakumesi
    otakumesi 2016/12/27
    例外はそうせざるを得なくなるまで積極的には書きたくないなぁ
  • Ruby の Timeout の仕組み - tmtms のメモ

    Ruby で長い時間掛かるかも知れない処理のタイムアウトを行うにはこんな感じにします。 require 'timeout' begin Timeout.timeout(3) do # 3秒でタイムアウト hoge # 何かの処理 end rescue Timeout::Error puts 'なげーよ' # タイムアウト発生時の処理 end Timeout.timeout はブロック開始時にスレッドを作成し、そのスレッドで指定された秒数だけ sleep して、sleep から復帰してもまだブロックが終わってなければ作成元のスレッドに対して Timeout::Error 例外を発生させます。 指定時間以内に処理が終わる場合: timeout(X) │ スレッド作成 ─┐ │ │ ブロック実行 sleep X │ │ スレッドkill→ 🕱 │ timeout復帰 指定時間以内に処理が終わら

    Ruby の Timeout の仕組み - tmtms のメモ
  • Railsアプリケーションにおけるエラー処理(例外処理)の考え方 - Qiita

    はじめに Railsアプリケーションを格的に作り込んでいくと、「エラー」とは無縁ではいられません。 しょうもないバグでエラーが発生することもありますし、ほとんど不可抗力ともいえるような大規模なネットワーク障害でエラーが発生することもあります。 エラーの種類がなんであれ、エラーが起きた場合は「原因を素早く特定し、速やかに復旧させること」と「あるエラーが引き金になって、さらに大きなエラーに引き起こさないようにすること」が重要です。 エラー処理を適切に実装していれば、原因の特定や復旧もすばやくできますし、さらに大きなエラーを引き起こす可能性も少ないです。 また、ソースコードも比較的シンプルに保てます。 逆にエラー処理が不適切だと原因の特定に時間がかかったり、異常なデータがどんどん増えてさらに大きなエラーを引き起こしたりします。 ソースコードにも無駄に複雑な処理フローや条件分岐がたくさん出てきて

    Railsアプリケーションにおけるエラー処理(例外処理)の考え方 - Qiita
  • 1