ホームページ > ウェブフロントエンド > jsチュートリアル > 再利用可能なJavaScriptビジネスロジックをPeasy-JSで作成します

再利用可能なJavaScriptビジネスロジックをPeasy-JSで作成します

尊渡假赌尊渡假赌尊渡假赌
リリース: 2025-02-17 11:40:09
オリジナル
220 人が閲覧しました

Write Reusable JavaScript Business Logic with peasy-js

Peasy-js:再利用可能でスケーラブルで、テストしやすいビジネスロジック

Peasy-JSは、合成可能、再利用可能、拡張可能、テストが簡単なビジネスロジックを構築する中間層フレームワークであり、アプリケーションでUI、バックエンド、およびデータアクセスフレームワークを簡単に交換できるようにします。 ビジネスロジックの分離を促進し、さまざまなJavaScriptクライアント、サーバー、データアクセステクノロジー、フレームワークと互換性のあるアプリケーションアーキテクチャで使用できるようにし、任意のアプリケーションアーキテクチャで使用できます。

この記事は、Stephan Maxによって査読されました。 SetePointのすべてのピアレビューアーズに感謝します。

Write Reusable JavaScript Business Logic with peasy-js

フレーム依存性を取り除き、フレーム を放棄しません

フレームワークは、クライアントとサーバー側の両方で大きな利点を提供するため、フレームワークを放棄すべきではありません。 Peasy-JSの目標は、ビジネスロジックを抽象化した構成可能ユニットに抽象化し、ユーザーから完全に独立したコードを作成することです。 コンポーネント化されたビジネスロジックを通じて、これらのコンポーネントを簡単にテスト、交換、再配置、再利用し、象徴的なJavaScriptクライアント、サーバー、データアクセステクノロジー、フレームワークと互換性のあるアプリケーションアーキテクチャで使用できます。

ビジネスロジック分離

Peasy-JSは、複合、再利用可能、拡張可能、ビジネスロジックを簡単にテストできるように、アプリケーションでUI、バックエンド、およびデータアクセスフレームワークを簡単に置き換えることができる中間層フレームワークです。 言い換えれば、Peasy-JSは、懸念の分離の原則(SOC)に準拠するコードを書くことにより、構成可能なユニットにビジネスロジックを抽象化するように導きます。

フレームの疲労?

私はあなたが考えていることを知っています:「別のフレームワーク?」。はい、Peasy-JSは確かにミニチュアフレームワークです。ただし、ビジネスロジックをコンポーネント化することに着手した場合、おそらく自分でミニフレームワークを書くことになります。 Peasy-JSは、設計、開発、テストに多くの時間を投資し、ほとんどすべての考えられるワークフローをサポートしています。 学習は低コストであり、私はあなたが学ぶことが非常に価値があると思うと思います。

Peasy-JSがあなたのためではないことがわかった場合、自分のビジネス層を実装する方法に関するフレームワークのいくつかのパターンからいくつかの洞察を得ることができることを願っています。

コアコンセプト

Peasy-jsには4つの主要な概念が含まれています:

  • 使いやすく柔軟なビジネスおよび検証ルールエンジン
  • スケーラビリティと再利用可能性
  • (使用状況とフレームワークからのビジネスと検証ロジックの分離)
  • 簡単にテストできます
  • 以下は、これらの4つのコア概念の詳細な説明です。

businessService:
    は、エンティティ(ユーザーやプロジェクトなど)を表し、コマンドを介してビジネス機能を公開する責任があります。これらのコマンドは、CRUDおよびその他のビジネス関連の機能をカプセル化します。
  • コマンド:
  • 初期化ロジック、検証、ビジネスルール、およびその他のロジック(データプロキシコール、ワークフローロジックなど)の実行を調整する責任があり、コマンド実行パイプラインを介して実行されますそれぞれ。
  • ルール:
  • ルールを作成して、検証ルール(フィールドの長さまたは必須)またはビジネスルール(承認、価格の妥当性など)を表すことができます。ルールはコマンドによって使用され、チェーンコールを作成し、以前のルールの実行結果に従って構成できます。ルールは、実行結果に基づいてコードを実行するように構成することもできます。
  • dataproxy:
  • データストレージと検索の責任を負い、以下をカバーする(ただしこれらに限定されない)データストレージの抽象的なレイヤーとして機能します:リレーショナルデータベース、ドキュメント(noSQL)データベース、サービス、キャッシュテスト用のストレージ、キュー、ファイルシステム、およびメモリデータストレージ。
  • peasy-js例

    (注:PLNKRの簡単なブラウザの例を表示できます。これについては、このセクションで説明したすべてをカバーしています。 以下は、クライアントにAngularサービスでビジネスロジックを作成するためにPeasy-JSを使用する方法の例です。

    (写真a)

    以下は、サーバーサイドExpress.jsコントローラーで同じビジネスロジックを使用する方法の例です。

    (写真b)

    var dataProxy = new CustomerHttpDataProxy();
    var service = new CustomerService(dataProxy);
    var customer = { name:  "Frank Zappa", birthDate: new Date('12/21/1940') };
    var command = service.insertCommand(customer);
    
    command.execute(function(err, result) {
      if (result.success) {
        customer = result.value;
      } else {
        console.log(result.errors);
      }
    });
    ログイン後にコピー
    各例では、ビジネスサービスに注入された異なるデータプロキシを除いて違いはないことに注意してください。

    データプロキシは、ファイルシステムアクセス、データベース、キュー、キャッシュ、メモリ、およびHTTP通信の具体的な実装を表すことができるデータアクセス抽象化であることを忘れないでください。 この抽象化により、必要なシステムアーキテクチャと構成に基づいてデータプロキシを交換することができ、SOCを実施し、コードベース全体で再利用できるようにし、より簡単なテストを促進できます。 すぐに明らかではないのは、このアプローチがデータのソースや宛先に関係なく、常に同じビジネスロジックに従うことです。 これはすぐに表示されます。

    消費の観点から、これがすべてです。 Peasy-JSを使用して開発されたビジネスロジックの消費は、アーキテクチャとそれを使用する技術に関係なく、識別可能なトピックを導入します。

    アーキテクチャといえば、このようにビジネスロジックを開発するときに簡単に実装できる潜在的なアーキテクチャに注意を向けましょう。
    var dataProxy = new CustomerMongoDataProxy();
    var service = new CustomerService(dataProxy);
    var customer = { name:  "Frank Zappa", birthDate: new Date('12/21/1940') };
    var command = service.insertCommand(customer);
    
    command.execute(function(err, result) {
      if (result.success) {
        customer = result.value;
      } else {
        console.log(result.errors);
      }
    });
    ログイン後にコピー

    (CustomerHttpdataproxy、Customermongodataproxy、customerserviceおよびその他のコードの例、スペースの制限により、これはここで省略されています。完全なコードは元のテキストで提供されています。

    概要

    Peasy-JSは、使用されているフレームワークから明確に分離されたビジネスロジックを書くことを奨励しています。 この利点の1つは、多くの方法でコードを簡単に展開できることです。 最後に、現在のフレームワークが時間の経過とともに老化するにつれて、新しいフレームワークに移行または採用することが非常に簡単になります。

    (スペースの制限のためにここでは省略されている質問の部分がよくあります。完全なFAQが元のテキストに提供されています。)

以上が再利用可能なJavaScriptビジネスロジックをPeasy-JSで作成しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート