問題タブ [preconditions]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
language-agnostic - 前提条件と例外
いくつかの事前条件と事後条件を持つメソッドがあるとします。達成されていない前提条件ごとに例外クラスを作成しても大丈夫ですか?例:pre1を実行しないということは、notPre1Exceptionインスタンスをスローすることを意味します。
design-by-contract - 契約による設計を行う場合、メンバー関数の不変条件に加えて、前提条件と事後条件が必要ですか?
DbCメソッドでは、関数に事前条件と事後条件がついていることがわかりました。
私が疑問に思っているのは、それがメンバー関数にも当てはまるかどうかです。
たとえば、各パブリック関数の最初と最後で不変条件を使用すると仮定すると、メンバー関数は次のようになります。
編集:(私の例をクリーンアップ)
グローバル/ジェネリック関数のみで事前条件と事後条件を使用し、クラス内で不変条件を使用しても問題ありませんか?
これはやり過ぎのように思えますが、私の例が悪いのかもしれません。
編集:
事後条件は、不変条件のサブセットをチェックしているだけではありませんか?
上記では、 http://www.digitalmars.com/ctg/contract.htmlの指示に従っています。「クラス コンストラクターが完了すると、クラス デストラクタの開始時、public の前に不変式がチェックされます。メンバーが実行され、パブリック関数が終了した後。」
ありがとう。
algorithm - 二分探索
それで、私は二分探索についてもっと理解したいのです、なぜなら私は本当に理解していないからです。二分探索には、配列がソートされるという前提条件が必要です。正解ですか?メソッドはこの前提条件をチェックし、満たされない場合は例外をスローする必要があるようです。しかし、なぜ前提条件をチェックするのは悪い考えなのでしょうか?
c# - if (xyz == null) チェックが「保護」されていないことをどのように説明しますか
If null チェックを常に入れている開発者が何人かいます
例えば:
誰かがnullのパラメーターを渡した場合、クラスを保護していると考えているため、コード内で。この場合、誰かが null を渡している場合、おそらく消費者コードの問題であり、このクラスが例外をスローして高速に失敗する代わりに、ロジックの欠陥を伝えようとしています。消費者と一気飲みし続けます。
もう 1 つの提案は、高速に失敗して例外をスローする前提条件またはガード クラスを用意することです。消費者がおそらく他の問題を抱えているという事実を無視する以外のことは何でも、私はそれを隠すのに役立ちます.
あなたのクラスはそれほど寛容であってはならないという事実を人々に理解してもらうにはどうすればよいでしょうか。誰かが良いデータを渡さなかった場合は、そのことを知らせる必要があります。
この点を理解するのに役立つ良い記事や提案はありますか?
performance - Slow Scala assert
We've been profiling our code recently and we've come across a few annoying hotspots. They're in the form
Because some of these asserts can be in code called a huge amount of times the string concat starts to add up. assert
is defined as:
why isn't it defined as:
That way it would evaluate lazily. Given that it's not defined that way is there an inline way of calling assert with a message param that is evaluated lazily?
Thanks
java - 「is null」または「was null」などの Null チェック エラー メッセージ
Java コードで null チェックを実行し、null 値に対して IllegalArgumentExceptions をスローする場合、どの種類のメッセージ テンプレートを使用しますか?
私たちはこのようなものを使う傾向があります
"is null" または "was null" のどちらが優れているか、またその理由は?
私にとっては「is null」の方が自然に感じます。
preconditions - 前提か前提か?
皆さん、fnc が正しく動作するために満たす必要がある正式な名前 PRECONDITION または PRECONDITIONS は何ですか?
matlab - Matlabの特定の範囲の対数正規乱数
範囲が[0.42,1.19]の対数正規分布を作成したいと思います。そのいくつかの要素は、として与えられD=[1.19,1.00,0.84,0.71,0.59,0.50,0.42]
ます。平均は0.84
、標準偏差をできるだけ小さくする必要があります。また、累積分布関数の90%(=粒子の90%)がの間にあることも示されています0.59 and 1.19
。
与えられた条件を組み込んだこの対数正規分布のすべての要素を知ったら、そのpdfを見つけることができます。これは私が必要としているものです。これが私が試した簡単なステップです:
java - Google Guavaの前提条件*メソッドに提供する適切なエラーメッセージは何ですか?
たとえば、Preconditions.checkArgumentを使用する場合、エラーメッセージは、問題のチェックの合格例または不合格の場合を反映していると想定されていますか?
c++ - 機能の説明
私がこのようなfncを持っている場合:
そして、このfncの前提条件と事後条件をリストすると、フォームの前提条件をリストすると思います
。SomeTypeは正しいタイプである必要がありますが、かなり馬鹿げていますね。私の大学ではこのようなものをリストしてほしいのですが、引数のタイプが正しくない場合、コードはとにかくコンパイルされないので、このフォームの前提条件を設定するのは間違っていると思います。しかし、いつものように、私は間違っています。