Magento 2 y contratos de servicios

9

Sé que hay muchos temas sobre esta pregunta, pero no estoy seguro de entenderlo claramente.

¿Cuándo necesitamos usar el contrato de servicio?

  • ¿Están reemplazando el CRUD hecho por Model/ ResourceModel?
  • ¿Necesitábamos crear cada vez un contrato de servicio para cada entidad que utilizará una tabla de datos en el módulo personalizado?
  • ¿Son realmente interesantes para el desarrollo futuro?
  • ¿Por qué Magento a veces usa save/ loaddel Modelo en Controlador / Bloque, y otras veces no?

Gracias

TaKe_Da_ShAkEr
fuente
Una publicación interesante del servicio M2 contrae esto
95623
Hola Sanpu y gracias por el enlace :). La visión de Alan es interesante y ahora empiezo a comprender la lógica del contrato de servicio. Parece reorganizar toda la lógica del modelo de negocio por separado con los conceptos de Repositorio / Datos / Gestión y Generador. No se explica claramente, pero probablemente reemplazará el uso actual del modelo. Qué piensa usted al respecto ?
TaKe_Da_ShAkEr

Respuestas:

1

Básicamente, los contratos de servicio son un conjunto de interfaces que están disponibles para que los módulos declaren API estándar. En términos generales, hay dos categorías de API, la API de datos que expone los métodos CRUD y la API operativa que realmente hace algo.

Los contratos de servicio cumplen una serie de funciones importantes, como:

  • Mejorando el proceso de actualización
  • Formalizar el proceso de personalización.
  • Módulos de desacoplamiento

Ahora, con el uso de interfaces y API, es mucho más claro cómo interactuar con los módulos en el sistema más modular de Magento, ya que solo se comunican a través de API

Todas las clases se documentan a través de sus interfaces, para que sepa exactamente qué hace cada una y cómo su uso afectará toda su implementación.

Recomiendo encarecidamente que tome el curso Magento Fundamentals of magento Development que Magento ofrece gratuitamente hasta el 31/1/2017. Cubre exhaustivamente la descripción general del contrato de servicio y se transfiere a API marco, API de datos y API web

Moses N. Njenga
fuente
0

Los contratos de servicio son muy útiles en Magento2. Definen exactamente qué campos de datos necesita para una entrada. Dado que Magento se desarrolla de manera que tanto los controladores como los procesos y las API web consumen los mismos repositorios y modelos, el contrato de servicio ayuda a que los datos sean iguales en todos ellos. También es útil porque le da la oportunidad de inyectar fábricas y otras cosas con bastante facilidad.

awavi
fuente