タグ付けされた質問 「validation」

データの検証に関連する質問のタグ。

6
モデルがデータを検証している場合、不正な入力に対して例外をスローすべきではありませんか?
このSOの質問を読むと、ユーザー入力を検証するために例外をスローすることは不快に思われるようです。 しかし、誰がこのデータを検証する必要がありますか?私のアプリケーションでは、すべての検証はビジネスレイヤーで行われます。これは、クラス自体だけが、各プロパティの有効な値を実際に認識しているためです。プロパティを検証するためのルールをコントローラーにコピーすると、検証ルールが変更される可能性があり、変更を行う場所が2つあります。 ビジネス層で検証を行う必要があるという私の前提は間違っていますか? 私がやること したがって、私のコードは通常、次のようになります。 <?php class Person { private $name; private $age; public function setName($n) { $n = trim($n); if (mb_strlen($n) == 0) { throw new ValidationException("Name cannot be empty"); } $this->name = $n; } public function setAge($a) { if (!is_int($a)) { if (!ctype_digit(trim($a))) { throw new ValidationException("Age $a …

1
モナド関数で検証付きのエラーモナドを使用するか、バインドで直接検証付きの独自のモナドを実装する方が良いですか?
使いやすさ/保守性の観点からデザインが賢明なものは何なのか、コミュニティとの適合性に関しては何が優れているのかと思います。 データモデルを考える: type Name = String data Amount = Out | Some | Enough | Plenty deriving (Show, Eq) data Container = Container Name deriving (Show, Eq) data Category = Category Name deriving (Show, Eq) data Store = Store Name [Category] deriving (Show, Eq) data Item = Item Name Container …

2
「その他」の集合体の状態をどこで検証する必要がありますか?
シナリオ: 顧客が注文し、製品を受け取った後、注文プロセスに関するフィードバックを提供します。 次の集計ルートを想定します。 お客様 注文 フィードバック ビジネスルールは次のとおりです。 顧客は自分の注文についてのみフィードバックを提供でき、他の人のフィードバックは提供できません。 顧客は、注文に対する支払いが済んでいる場合にのみフィードバックを提供できます。 class Feedback { public function __construct($feedbackId, Customer $customer, Order $order, $content) { if ($customer->customerId() != $order->customerId()) { // Error } if (!$order->isPaid()) { // Error } $this->feedbackId = $feedbackId; $this->customerId = $customerId; $this->orderId = $orderId; $this->content = $content; } } ここで、企業が新しいルールを望んでいると想定します。 …

2
ユーザーに構成、名前=値のペアの編集を許可するときに空白を処理するためのベストプラクティスは何ですか?
たとえば、悪名高いパス変数をユーザーに定義させます。どのように解釈しapppath = C:\Program Files\Appますか? これは、プログラミング言語がホワイトスペースを無視する慣習を採用しているように見え、読みやすさのために等号の前後に残しますが、アプリケーションではホワイトスペースを含む有効な変数値である可能性があります(サフィックスであると考えてください)。 キーにも空白を含めることができますか? アプリケーションの一般的なベストプラクティスは何ですか?私が持っている場合: key-example = value-example キーの存在"key-example"または"key-example "と値を存在"value-example"またはと解釈する必要があり" value-example"ますか?

2
検証に実際のテストが含まれていないのはなぜですか?
このトピックについて多くを読んだ後--- 検証と検証、ソフトウェアテストと品質保証に関するこのSoftware Testing Fundamentalsサイトなど --- NaikとTripathyによる理論と実践 ---まだわかりません。検証では、製品を適切に構築していることを証明し、検証では、適切な製品を構築していることを証明します。しかし、検証手法として言及されているのは静的手法(コードレビュー、要件チェックなど)だけです。あなたがそれをテストしない場合、それが正しく実装されているかどうかはどのように言えますか?検証は、製品が指定された要件を満たしていることを保証すると言われています。繰り返しになりますが、機能が何らかの形で機能するように指定されている場合、テストすることによってのみ機能すると言えます。 誰か私にこれを説明してもらえますか?
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.