問題タブ [contracts]

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.

0 投票する
1 に答える
804 参照

wcf - WCF サービス参照の追加

サービスに複数のインターフェイス タイプを追加する方法を知りたいです。現時点では、表示できるのは 1 つだけです。サービスリストの下に表示したいインターフェースが他にもいくつかありますが、どうすればよいですか?

私は初心者なので、まだ写真を投稿できないことがわかったので、スクリーンショットを説明しようと思います.....クライアントアプリケーションで、サービス参照を追加したいと思います。私はmex エンドポイントを見つけることができ、それは私のサービスを見つけますが、* サービスに関連付けられた1 つのインターフェイス タイプしか見つけることができません。インターフェイス タイプをクリックすると、使用可能な操作が表示されますが、[サービス参照の追加] ダイアログ ボックスのサービス ウィンドウで、サービス ツリービューのサービス ブランチに複数のインターフェイス タイプを追加したいと考えています。

インターフェースコントラクトという言葉が交換可能かどうかはわかりません

ありがとう

クリス

0 投票する
1 に答える
696 参照

java - Cofoja を Wicket で (または Maven だけで) 使用する

標準のように Maven2 を使用するApache WicketアプリケーションでGoogle Cofoja を実行するために、私は最善を尽くしています。

このプロジェクトは、当初、アーキタイプ「Wicket 1.4.12、Guice 2.0、WarpPersist 2.0 (スナップショット)、Hibernate 3.5.6」が選択されたLeg Upを使用して生成されました。

私が最近試した (そして最も動作に近いように思われる) のは、maven (コントラクト クラスをビルドすることができた) を使用してビルドし、ant を使用してプロジェクトを実行して、コントラクト チェックを取得しようとすることです。起こる。最新の問題は、何をメインクラスにすればよいかわからないことです。jetty サーバーを実行するクラスにしようとしましたが、class not found 例外が発生します。

同様に、このソリューションが機能したとしても、コントラクト チェックを maven build の一部として実行するという理想的なソリューションにはほど遠いものです。

今、私が現在持っているもの:

pom.xml

build.xml

maven-build.properties

com/mycompany/myproject/adminconsole/Start.java

あなたが私の現在のアリの問題を解決する方法を知っているなら、またはさらに良いことに、アリのハックをすべて一緒に廃棄する方法のアイデアを持っているなら、それは非常にエキサイティングです (:

更新 1

悪いので、コードから 's を削除-しました (@Martijn Dashorst に感謝)。残念ながら、これで問題は解決しませんでした。

0 投票する
2 に答える
2086 参照

c# - 事前/事後条件と不変条件を使用して、C#でStackクラスを実装するにはどうすればよいですか?

誰かがC#でStackクラスを実装する方法/最良の方法についての例やアイデアを持っていますか?すでにStackクラスがあることは理解していますが、実際にStackクラスを実装する方法を理解する必要があります。

また、C#でコントラクトを使用して、このクラスの前提条件、事後条件、および不変条件を指定する方法についてのアドバイスも必要です。ASP.NET MVCアーキテクチャでモデルを作成するときに、以前に似たようなものを使用したことがあると思いますが、それが同じものであり、同じように機能するかどうかは完全にはわかりません。(前提条件/事後条件/不変条件については、まだわからない場合は少し迷っています。ご容赦ください。)

私の主な質問-スタックなどのクラスでコントラクトを適切に使用するためのアドバイスを誰かに教えてもらえますか?

はい、私は努力を打ち出しました:

0 投票する
2 に答える
1063 参照

java - Eclipse で CodePro のコントラクトをどのように使用しますか?

CodePro のコントラクトを理解したつもりでしたが、効果がないようです。例えば:

main(String[]) メソッドを実行すると、以下が発生します。

印刷する。コンパイルの警告 (予期されていた) はなく、スローされた例外もありませんでした。また、CodePro によって生成された junit テスト メソッドは、コントラクトの影響を受けませんでした。

では、CodePro のコントラクトをどのように使用しますか?

0 投票する
4 に答える
243 参照

c# - CodeContracts Static Analyzer が警告を出さないのはなぜですか?

別のクラスのイベント ハンドラーにサブスクライブされているユーザー コントロールがいくつかあります。私は C# で CodeContracts を学んでいますが、Static Analyzer で次のようなコードを記述できるのはなぜでしょうか。

ここには、null 参照例外につながる可能性がある、安全でない可能性のあるコードがあります。静的アナライザーはおそらくチェックできないことを理解しています。実際の型は何でしょsenderう。しかし、それを証明できない場合に備えて、CodeContracts: Possibly calling a method on a null reference.

それとも、契約の考え方が間違っているのでしょうか? このようなエラーの通知を受け取るにはどうすればよいですか?

更新:

はい、Implicit Non-Null Obligation回答で提案されているように有効にしましたが、それでも静的アナライザーから警告が表示されません。また、ルールを設定してコード分析を実行しようとしましたがMicrosoft All Rules、警告もありませんでした。(ただし、if-then-throw などを使用するよりも、Code Contracts を処理し、Contract クラスを使用して追加のチェックを実行することをお勧めします)

0 投票する
4 に答える
1859 参照

c# - コード コントラクトのベスト プラクティス

コード コントラクトとその使用法に関するいくつかの質問があります。いくつかのプロパティを持つクラスがあるとしましょう (以下の例を参照):

私が達成したいことについてのいくつかの説明:

(a) property1 は必須フィールドです。property2 は、オブジェクトの通常の使用には明示的に必要ありません。

次の質問があります。

  1. property2 のコントラクトを気にする必要がありますか。property2 は必須フィールドではないため、コントラクトが必要です。property2 にコントラクトを置くことは、それが実際にオブジェクトの通常の使用に必要であることを示していますか?

  2. property2 は明示的に必須ではありませんが、それが null になる理由は考えられないため、setter で定義されたコントラクトです。property2 でコントラクトを定義すると、コードを呼び出す際の null チェックが減るのではないでしょうか? これにより、バグが減り、コードの保守性が向上するはずです。この仮定は正しいですか?

  3. それが正しい場合、property2 が決して null にならないようにコードを呼び出すにはどうすればよいですか? Contract.Invariant(property2 != null); を使用しますか? コンストラクターの Contract.Ensures(property2 != null) 、または Init() の Contract.Ensures(property2 != null) 、またはセッターの Contract.Ensures(property != null) ? (つまり、Contract.Ensures(property2 != null) を使用する場合、どこに配置されますか)?

質問が単純に見えたら申し訳ありません。この問題についての考えと、皆さんがベスト プラクティスと考えていることを探しています。

0 投票する
2 に答える
5222 参照

wcf - WCF-バージョン管理を処理する

このサービス契約を解除する必要がある場合:

これに:

そしてこの良い記事によると:WCFのバージョン管理データコントラクトが変更された場合、新しい名前空間で新しいvs ofデータコントラクトを定義し、次に新しい名前空間で新しいvs ofサービスコントラクトを定義し、その後新しいエンドポイントを定義する必要があることを理解しています追加する必要があります。

私はこれをどの程度正確に行うと思いますか。どこかに例はありますか?上記の私のサービス契約に基づいて何かを書いていただけませんか?

前もって感謝します!

0 投票する
1 に答える
1802 参照

c# - リリースビルドでのSystem.Diagnostics.Contractの使用

以前、StackOverflowでこれについて話し合ったスレッドを見ましたが、もう一度見つけることができません。

System.Diagnostics.Contractクラスを「実際のコード」、つまり本番コードのリリースビルドで使用する必要があるかどうかを知りたいのですが。名前空間の説明に基づくと、コントラクトはデバッグまたは分析を目的としているように見えるため、これをお願いします。

機能の前後の条件が重要であり、if / then / elseチェックをたくさん書く手間を省くことができる便利なライブラリのようです。その場合、コアライブラリに代替手段はありますか?

0 投票する
4 に答える
1483 参照

java - プロダクションで使用するのに適した assert クラスはありますか? Java の Groovy の PowerAssert に相当するものは?

assertJavaキーワードは、製品コードで常に有効になっているとは限らないため、好きではありません。記載されているアサーションを常に実行する、使用する優れた「ProductionAssert」クラスを探しています。

候補の 1 つはGuava の Preconditionsです。それはまともですが、少し制限されています(たとえば、いいえ、、、assertEquals())。assertNull()assertGreaterEquals()

代替手段の 1 つは、jUnit または別のテスト フレームワークを含めることですが、単純な assert クラスのためだけにテスト フレームワーク全体に依存することには消極的です。

Groovy でプログラミングする場合は、PowerAssertを使用します。

Java 用の適切な「ProductionAssert」クラスはありますか?

PS - 1 つのオプションは最終的にJava Contractsのようなものをチェックアウトすることです...しかし、私が今探しているのは、絶対に最小限で摩擦がなく、ビルドプロセスの種類のクラスを変更せずにドロップインするだけです。 .. 契約がその説明に適合するかどうかはわかりません。

0 投票する
1 に答える
242 参照

wcf - このサービスは '2' コントラクトを実装します。無効な操作例外

ローカル開発マシンで起動して実行しようとしている WCF サービス プロジェクトがあります。

Cassini で実行されている IE8 から .SVC を実行すると、問題なく動作します。

IIS で実行されている IE8 から .SVC をヒットすると、次のサーバー エラーが発生します。

このサービスは '2' コントラクトを実装します。WebScriptServiceHostFactory を使用するには、サービスごとに 1 つのコントラクトを実装する必要があります。複数のコントラクトを使用する必要がある場合は、通常の ServiceHost を使用してください。

IIS 構成に問題があるようです。私の同僚は、自分のマシンで IIS を介してプロジェクトを実行しており、Windows 7 に同じ IIS および WWW 機能がインストールされていることを確認するために、Windows 機能リストを調べて一致させました。

また、4.0 の IIS に aspnet を再登録しましたが、エラーは変わりませんでした。