デザインモードも使用しません。 多くの人は、ビジネス コードを書いていると考え、ロジックに従ってコードを記述し、再利用のために共通メソッドを抽出します。デザイン パターンを学ぶ必要はもちろん、使用する必要もありません。 最初は私もそう思っていましたが、彼に会うまではそう思っていました。 。 。 例えば まず、一般的な注文インターセプト インターフェースを見てみましょう。 基本ロジック、パラメータセキュリティインターセプト、番号インターセプト、ルールインターセプトがすべて合格すると、注文の発注が許可されます。いずれかが失敗した場合は、対応する失敗理由が返されます。 多層ネストされた書き込みの場合 通常の多層ネストされたif記述法
例外処理ロジック あるいは例外を使ってロジックを実行すると、コードはよりシンプルになります
最初は、例外を直接使用してロジックを実行していました。しかし、その後のロジックが複雑になるにつれて、いくつかの問題が発生します。たとえば、例外は例外情報のみを返すことができ、詳細なフィールド情報を返すことはできません。 その後、Alibaba の規則では異常なロジックが禁止されていることにも気付きました。 Alibaba コード標準: [必須] プロセス制御や条件制御には例外を使用しないでください。 注: 例外設計の本来の意図は、プログラムの動作中に発生するさまざまな予期しない状況を解決することであり、例外処理の効率は条件判断に比べてはるかに低くなります。 さらに重要なのは、コードが読みにくいことです。メソッド内で例外がスローされた場合は、コード自体の例外も考慮する必要があります。 より良い方法はなく、デザインパターンを考慮するしかありません コードをもっと読みやすく、拡張可能にするにはどうすればいいでしょうか? 同僚のリマインダーのおかげで、突然デザインパターンを思い出しました! 私たちが達成したいこと
責任連鎖パターン このシナリオでは、責任連鎖モデルが非常に適しています。 (どのようなデザインパターンをどのようなシナリオで使用するのか?これには日々の積み重ねと、さまざまなデザインパターンの基本的な使い方を知ることが必要です) 名前が示すように、責任チェーンは関連するトランザクションの責任を処理するために使用される実行チェーンです。実行チェーンには複数のノードがあり、各ノードには要求トランザクションを処理する機会(条件の一致)があります。ノードが処理を完了した場合、実際のビジネス ニーズに応じて、次のノードに渡してさらに処理したり、戻して処理を完了したりできます。 まず、フィルターの抽象クラスを作成します
フィルタ実装クラス
フィルターの順序を決定するには Order アノテーションを使用します。これは、後で Spring に挿入するときに驚くべき効果をもたらします。
デザインパターンを使用する利点 Chain of Responsibilityパターンを使用した後にどのようなメリットがあるか見てみましょう。
デザインパターンを使用することのデメリット 低結合と高いスケーラビリティを実現します。しかし、それはいくつかの悪い結果ももたらしました
最後にまとめましょう デザインパターンはあらゆる場所に適しているわけではありません。ロジックが単純であるにもかかわらず、デザイン パターンの使用にこだわると、構造が複雑になるだけです。ビジネスシナリオに応じてご利用いただけます。 著者について: Nanshanshi: インターネット電子商取引システム開発で 7 年の経験を持つ理工系男性であり、知識共有の分野では初心者です。 |
<<: Hadoop、HBase、Hive、Spark の分散システム アーキテクチャを 3 分で理解する
>>: 仮想マシンのバックアップ技術の原理とネットワークの概要
2018年最もホットなプロジェクト:テレマーケティングロボットがあなたの参加を待っています多くの人が...
こんにちは、インターネット上の友人の皆さん。珠海のテクノロジー企業に異動してから、皆さんにはあまり会...
個人ブログは、個人の表示プラットフォームです。ポイントツーポイント インターネットの発展に伴い、独自...
xethost は 2006 年に設立され、ハンガリーで仮想ホスティング、VPS、専用サーバー、SM...
Maxthon Hosting は、Shy Brother、チームリーダーらによって 2010 年に...
近年、インターネットの発展は飛躍的に進んでいると言えます。TaobaoとAlimamaの継続的な成長...
クラウドコンピューティングの開発と実装のスピードは人々の想像を超え、クラウドサービスとクラウドアプリ...
メモリアルデー(米国戦没者追悼記念日)に、racknerd は米国ロサンゼルスの DC-02 データ...
一部のウェブマスターは、最近はタオバオで収益を上げることがますます難しくなり、プロモーション チャネ...
デジタルトランスフォーメーションとクラウドコンピューティングが発展するにつれ、企業もインフラストラク...
米国デラウェア州に登録されているホスティング会社であるformohostは、世界36か所以上のデータ...
最も速度が速い海外の VPS はどれですか? 2019 年に最も速い海外 VPS は何ですか?多くの...
昨日、いつものように宋兄のブログに行って、おすすめの記事を読みました。その中の1つは、呂さんの3年間...
Amazon DynamoDB は、高速で予測可能なパフォーマンスとシームレスなスケーラビリティを実...
第7回中国インターネットウェブマスター年次会議が4月7日に北京国際会議センターで成功裏に開催されまし...