Magento 2とサービス契約


9

この質問については多くのトピックがあることは承知していますが、明確に理解することはできません。

いつサービス契約を利用する必要がありましたか?

  • CRUDの代わりにModel/ によって行われ ResourceModelますか?
  • カスタムモジュールのデータテーブルを使用する各エンティティのサービスコントラクトを毎回作成する必要がありましたか?
  • 彼らは将来の発展にとって本当に興味深いのでしょうか?
  • Magento がコントローラー/ブロックのモデルからsave/ loadを使用する場合と使用しない場合があるのはなぜですか?

ありがとうございました


M2サービスの興味深い投稿はこれを
95623

こんにちはSanpuとリンクをありがとう:)。アランのビジョンは興味深いものであり、サービス契約の論理を理解するようになりました。リポジトリ、データ、管理、ビルダーのコンセプトを分けて、すべてのビジネスモデルロジックを再編成しているようです。明確には説明されていませんが、おそらく現在のモデルの使用法に取って代わるでしょう。あなたはそれについてどう思いますか ?
TaKe_Da_ShAkEr

回答:


1

基本的に、サービスコントラクトは、モジュールが標準APIを宣言するために使用できる一連のインターフェイスです。大まかに言って、APIには2つのカテゴリーがあります。CRUDメソッドを公開するデータAPIと、実際に何かを行う操作APIです。

サービス契約は、以下のようないくつかの重要な機能を果たします。

  • アップグレードプロセスの改善
  • カスタマイズプロセスの形式化
  • デカップリングモジュール

インターフェースとAPIを使用すると、API経由でのみ通信するため、Magentoのよりモジュラーなシステムのモジュールと対話する方法がより明確になります。

すべてのクラスはそれらのインターフェースを介して文書化されているため、各クラスが何を実行し、それを使用すると実装全体にどのように影響するかを正確に把握できます。

Magentoが2017年1月31日まで無料で提供しているMagento開発のMagentoコースの基礎コースを受講することを強くお勧めします。サービス契約の概要を網羅し、Framework API、Data API、Web APIに展開します


0

サービス契約はMagento2で非常に役立ちます。入力に必要なデータのフィールドを正確に定義します。Magentoは、コントローラー、プロセス、Web APIの両方が同じリポジトリとモデルを使用するように開発されているため、サービスコントラクトは、それらすべてのデータを同じにするのに役立ちます。それはあなたに非常に簡単に工場や他のものを注入する機会を与えるので、それもまた役に立ちます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.