問題を回避するためのソフトウェアの設計方法:Webフォームデータ処理

この質問に答えるとき、ソフトウェアの進化の質問をすることが常に必要です。 システムのどの部分が変更される可能性が最も高く、どの部分が一定のままになる可能性がありますか?

この問題について例を挙げて検討します。 多かれ少なかれ大規模なシステムで定期的に発生するいくつかのタスクを検討してください。 このタイプのタスクの原因は、この投稿の範囲外です。ここでは、実装について説明します。

Webフォームデータ処理


フォームは似ています:1つのフィールドを追加し、別のフィールドを削除し、可能な値を数値に切り取り、1つだけではなく複数の選択を行います 表現の観点から-小さな変更。 内部ロジックはどのように変化しますか?


単純なフォームを見るときに最初に頭に浮かぶのは、オブジェクトをフォームにマップし、フォームの各フィールドにオブジェクトの適切なフィールドを提供することです。 リクエストを受信すると、オブジェクトの対応するフィールドにフォームのすべてのフィールドを書き込み、エラーがある場合は検証し、フィールドにバインドしてユーザーにそれらを提供し、すべてがOKであれば再編集させて、さらなる処理のために送信します(処理方法-タスクによって異なります) )、処理の結果としてエラーが発生した場合、エラーをレンダリングしました(フォームと一緒に)。

アイデアを発展させます。

フォームの進化を見てみましょう。 原則として、次の傾向があります(任意の組み合わせが可能です)。

ここから、次の問題が発生する可能性があります。


結論は何ですか?


PS以下のトピックでは、レポート作成、ネットワークプロトコルの生データの分析、およびhabrasocietyの要求に応じたその他の問題について検討します。

Source: https://habr.com/ru/post/J116781/


All Articles