デザインモードも使用しません。 多くの人は、ビジネス コードを書いていると考え、ロジックに従ってコードを記述し、再利用のために共通メソッドを抽出します。デザイン パターンを学ぶ必要はもちろん、使用する必要もありません。 最初は私もそう思っていましたが、彼に会うまではそう思っていました。 。 。 例えば まず、一般的な注文インターセプト インターフェースを見てみましょう。 基本ロジック、パラメータセキュリティインターセプト、番号インターセプト、ルールインターセプトがすべて合格すると、注文の発注が許可されます。いずれかが失敗した場合は、対応する失敗理由が返されます。 多層ネストされた書き込みの場合 通常の多層ネストされたif記述法
例外処理ロジック あるいは例外を使ってロジックを実行すると、コードはよりシンプルになります
最初は、例外を直接使用してロジックを実行していました。しかし、その後のロジックが複雑になるにつれて、いくつかの問題が発生します。たとえば、例外は例外情報のみを返すことができ、詳細なフィールド情報を返すことはできません。 その後、Alibaba の規則では異常なロジックが禁止されていることにも気付きました。 Alibaba コード標準: [必須] プロセス制御や条件制御には例外を使用しないでください。 注: 例外設計の本来の意図は、プログラムの動作中に発生するさまざまな予期しない状況を解決することであり、例外処理の効率は条件判断に比べてはるかに低くなります。 さらに重要なのは、コードが読みにくいことです。メソッド内で例外がスローされた場合は、コード自体の例外も考慮する必要があります。 より良い方法はなく、デザインパターンを考慮するしかありません コードをもっと読みやすく、拡張可能にするにはどうすればいいでしょうか? 同僚のリマインダーのおかげで、突然デザインパターンを思い出しました! 私たちが達成したいこと
責任連鎖パターン このシナリオでは、責任連鎖モデルが非常に適しています。 (どのようなデザインパターンをどのようなシナリオで使用するのか?これには日々の積み重ねと、さまざまなデザインパターンの基本的な使い方を知ることが必要です) 名前が示すように、責任チェーンは関連するトランザクションの責任を処理するために使用される実行チェーンです。実行チェーンには複数のノードがあり、各ノードには要求トランザクションを処理する機会(条件の一致)があります。ノードが処理を完了した場合、実際のビジネス ニーズに応じて、次のノードに渡してさらに処理したり、戻して処理を完了したりできます。 まず、フィルターの抽象クラスを作成します
フィルタ実装クラス
フィルターの順序を決定するには Order アノテーションを使用します。これは、後で Spring に挿入するときに驚くべき効果をもたらします。
デザインパターンを使用する利点 Chain of Responsibilityパターンを使用した後にどのようなメリットがあるか見てみましょう。
デザインパターンを使用することのデメリット 低結合と高いスケーラビリティを実現します。しかし、それはいくつかの悪い結果ももたらしました
最後にまとめましょう デザインパターンはあらゆる場所に適しているわけではありません。ロジックが単純であるにもかかわらず、デザイン パターンの使用にこだわると、構造が複雑になるだけです。ビジネスシナリオに応じてご利用いただけます。 著者について: Nanshanshi: インターネット電子商取引システム開発で 7 年の経験を持つ理工系男性であり、知識共有の分野では初心者です。 |
<<: Hadoop、HBase、Hive、Spark の分散システム アーキテクチャを 3 分で理解する
>>: 仮想マシンのバックアップ技術の原理とネットワークの概要
現在までに、クラウド サービスは 10 年以上の開発の歴史を持っています。当初の IT サービス モ...
あらゆる規模の企業が業務の多くをクラウド プラットフォームに移行し続ける中、最も一般的で危険なクラウ...
hmbcoud Half Moon Bay の香港 VPS は、最大 100Mbps の帯域幅で B...
SEO はますます競争が激しくなっています。業界の競争が比較的少なく、コンテンツと外部リンクに頼るだ...
どのような種類のウェブサイトを運営している場合でも、ウェブサイトの粘度が高く、多くのリピーターを獲得...
導入前回の記事では、HPA(Horizontal Pod Autoscaler)の実装について紹...
Hostsolutions の社長が戻ってきました (体調不良だそうです)。プロモーション用に 50...
2018年最もホットなプロジェクト:テレマーケティングロボットがあなたの参加を待っていますご存知のと...
より高速でスケーラブルな導入とコスト削減を実現するために、データベース・アズ・ア・サービス (DBa...
近年、クラウド コンピューティングはビジネスの運営方法に革命をもたらし、比類のない柔軟性、拡張性、コ...
午前3時には、24時間営業のコンビニエンスストアが開いているだけでなく、24時間営業のバーチャルアン...
現在、SEO は、理性、魔法、謎、そして少しのユーモアに満ちた、ハリー・ポッターのような冒険物語にな...
クリスマスが近づいてきました。12月で最も賑やかなお祭りであるクリスマスに、今年は大手ブランドからど...
Weibo マーケティングについて話すとき、ほとんどの企業は Weibo の活動を最もよく知っていま...
国内外の貿易電子商取引は急速に発展しており、インターネットに依存する電子商取引企業もウェブサイトに大...