デザインモードも使用しません。 多くの人は、ビジネス コードを書いていると考え、ロジックに従ってコードを記述し、再利用のために共通メソッドを抽出します。デザイン パターンを学ぶ必要はもちろん、使用する必要もありません。 最初は私もそう思っていましたが、彼に会うまではそう思っていました。 。 。 例えば まず、一般的な注文インターセプト インターフェースを見てみましょう。 基本ロジック、パラメータセキュリティインターセプト、番号インターセプト、ルールインターセプトがすべて合格すると、注文の発注が許可されます。いずれかが失敗した場合は、対応する失敗理由が返されます。 多層ネストされた書き込みの場合 通常の多層ネストされたif記述法
例外処理ロジック あるいは例外を使ってロジックを実行すると、コードはよりシンプルになります
最初は、例外を直接使用してロジックを実行していました。しかし、その後のロジックが複雑になるにつれて、いくつかの問題が発生します。たとえば、例外は例外情報のみを返すことができ、詳細なフィールド情報を返すことはできません。 その後、Alibaba の規則では異常なロジックが禁止されていることにも気付きました。 Alibaba コード標準: [必須] プロセス制御や条件制御には例外を使用しないでください。 注: 例外設計の本来の意図は、プログラムの動作中に発生するさまざまな予期しない状況を解決することであり、例外処理の効率は条件判断に比べてはるかに低くなります。 さらに重要なのは、コードが読みにくいことです。メソッド内で例外がスローされた場合は、コード自体の例外も考慮する必要があります。 より良い方法はなく、デザインパターンを考慮するしかありません コードをもっと読みやすく、拡張可能にするにはどうすればいいでしょうか? 同僚のリマインダーのおかげで、突然デザインパターンを思い出しました! 私たちが達成したいこと
責任連鎖パターン このシナリオでは、責任連鎖モデルが非常に適しています。 (どのようなデザインパターンをどのようなシナリオで使用するのか?これには日々の積み重ねと、さまざまなデザインパターンの基本的な使い方を知ることが必要です) 名前が示すように、責任チェーンは関連するトランザクションの責任を処理するために使用される実行チェーンです。実行チェーンには複数のノードがあり、各ノードには要求トランザクションを処理する機会(条件の一致)があります。ノードが処理を完了した場合、実際のビジネス ニーズに応じて、次のノードに渡してさらに処理したり、戻して処理を完了したりできます。 まず、フィルターの抽象クラスを作成します
フィルタ実装クラス
フィルターの順序を決定するには Order アノテーションを使用します。これは、後で Spring に挿入するときに驚くべき効果をもたらします。
デザインパターンを使用する利点 Chain of Responsibilityパターンを使用した後にどのようなメリットがあるか見てみましょう。
デザインパターンを使用することのデメリット 低結合と高いスケーラビリティを実現します。しかし、それはいくつかの悪い結果ももたらしました
最後にまとめましょう デザインパターンはあらゆる場所に適しているわけではありません。ロジックが単純であるにもかかわらず、デザイン パターンの使用にこだわると、構造が複雑になるだけです。ビジネスシナリオに応じてご利用いただけます。 著者について: Nanshanshi: インターネット電子商取引システム開発で 7 年の経験を持つ理工系男性であり、知識共有の分野では初心者です。 |
<<: Hadoop、HBase、Hive、Spark の分散システム アーキテクチャを 3 分で理解する
>>: 仮想マシンのバックアップ技術の原理とネットワークの概要
ショートビデオ、セルフメディア、インフルエンサーのためのワンストップサービスWeiboマーケティング...
2018年最もホットなプロジェクト:テレマーケティングロボットがあなたの参加を待っています近年、スマ...
01. モバイルデバイス:モバイルデバイスのアクティブ数 アクティブデバイスの観点から見ると、And...
このタイトルを書くためにペンを手に取ったとき、突然、次の文章の書き方がわからなくなってしまいました。...
Hosteons は、米国南東部のフロリダ州ジャクソンビルに VPS サービスを展開しています。南米...
これまで常に強力であったインターネットトラフィックの考え方は、今後どこに向かうのでしょうか? 201...
hostkvm は新年の特別 VPS プロモーションを実施しました。会場のコンピューター ルームのす...
世界最高のギターのウェブサイトをデザインしている自分を想像してみてください。このサイトには、さまざま...
中国のマーケティング代理店は、創設者やチームの専門的背景や専門知識が異なるため、統一されたビジネスロ...
マスターコングの父の日マーケティングキャンペーンを例に、イベント手法を分析しながら大手メーカーのマー...
現在の国際環境はますます複雑化、深刻化しており、国防や科学技術安全保障の重要性はより顕著になっていま...
Baidu のアルゴリズムは絶えず更新されており、オンラインプロモーションには検索エンジンだけに頼る...
企業のビジネスが拡大するにつれて、データセンターはますます大きなプレッシャーに直面しています。より多...
戦争について書面で語ることは軍事戦略においては大きなタブーである。ビジネスは戦場のようなものです。自...
少ないリソースでより多くの成果を上げるというのは矛盾しているように思えるかもしれません。クラウドコス...