Herramientas de usuario

Herramientas del sitio


ada:howto:sicoferp:factory:migracionsicoferp:process:backend:organizacionproyectosourcecode

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anterior Revisión previa
Próxima revisión
Revisión previa
ada:howto:sicoferp:factory:migracionsicoferp:process:backend:organizacionproyectosourcecode [2020/05/06 18:38]
carlos.torres [Estructura de Paquetes]
ada:howto:sicoferp:factory:migracionsicoferp:process:backend:organizacionproyectosourcecode [2020/07/24 12:08] (actual)
carlos.torres
Línea 10: Línea 10:
 Debe estár compuesta por las siguientes secciones separadas por punto: Debe estár compuesta por las siguientes secciones separadas por punto:
  
-**Dominio.Organización.Producto de Sofware.Proceso.Funcionalidad**+**Dominio.Organización.Producto de Sofware.Proceso/Funcionalidad**
  
 de los cuales los dos primeros son constantes a todos los desarrollos de los cuales los dos primeros son constantes a todos los desarrollos
Línea 16: Línea 16:
 **co.ada** **co.ada**
  
-Ejemplo+Ejemplo: Paquete principal
  
-**co.ada.sicof.contabilidad.terceros.listado**+**co.ada.sicof.contabilidad.terceros**
  
 donde: donde:
Línea 26: Línea 26:
   * **contabilidad**:​ Producto de Software / Módulo   * **contabilidad**:​ Producto de Software / Módulo
   * **tercero**:​ Opcion / Proceso   * **tercero**:​ Opcion / Proceso
-  * **listado**:​ Funcionalidad 
  
 ==== Estructura de Paquetes ==== ==== Estructura de Paquetes ====
 A continuación se describe la organización de los paquetes que debe contenedor un microservicio,​ no todos son requeridos en el desarrollo ya que dependen del alcance de la funcionalidad soportada, sin embargo se debe mantener la estructura como estandar y no se deben crear estructuras diferentes a menos que el microservicio lo requiera y previamente haya sido aprobado por el lider de desarrollo. Se permiten sub paquetes con el fin de organizar el proyecto. A continuación se describe la organización de los paquetes que debe contenedor un microservicio,​ no todos son requeridos en el desarrollo ya que dependen del alcance de la funcionalidad soportada, sin embargo se debe mantener la estructura como estandar y no se deben crear estructuras diferentes a menos que el microservicio lo requiera y previamente haya sido aprobado por el lider de desarrollo. Se permiten sub paquetes con el fin de organizar el proyecto.
 +
 +Todo microservicio de definir la siguiente estructura según el alance del desarrollo:
 +
 +  * **Paquete Principal**:​ Representa el paquete raíz del microservicio.
 +  * **controller**:​ Representa el paquete de los controladores y procesos del negocio.
 +  * **config**: Contiene las configuraciones asociadas a los recursos del microservicio. Ejemplo: swagger, RestConfiguration.
 +  * **dbconnect**:​ Contiene las clases de configuración de conexión a las bases de datos.
 +  * **repo** ó **dao**: Contiene las clases de acceso a datos. Ejemplo: Clases heredadas de JpaAdaRepository
 +  * **service**:​ Represente los proxys/​brokers que puedan ser creados para exponer/​modificar una operación de un microservicio.
 +  * **client**: Contiene los clientes que consumen operaciones de microservicios externos.
 +  * **event**: Contiene configuraciones especiales. Este paquete solo será necesario en aquellas configuraciones donde se deben intervenir eventos de APIs.
 +  * **business**:​ Contiene el desarrollo de la lógica del negocio del microservicio
  
 Con los siguientes ejemplos se pretende explicar la estructura estandar de un microservicio:​ Con los siguientes ejemplos se pretende explicar la estructura estandar de un microservicio:​
  
-  * **co.ada.sicof.contabilidad.tercero**: Representa el paquete raíz del microservicio. +  * **co.ada.sicof.contabilidad.tercero** 
-  * **co.ada.sicof.contabilidad.tercero.controller**: Representa el paquete de los controladores y procesos del negocio. +  * **co.ada.sicof.contabilidad.tercero.controller** 
-  * **co.ada.sicof.contabilidad.tercero.config**: Contiene las configuraciones asociadas a los reursos del microservicio. Ejemplo: swagger, RestConfiguration +  * **co.ada.sicof.contabilidad.tercero.config** 
-  * **co.ada.sicof.contabilidad.tercero.dao**: Contiene las clases de acceso a datosEjemplo: CrudRepository +  * **co.ada.sicof.contabilidad.tercero.dbconnect** 
-  * **co.ada.sicof.contabilidad.tercero.service**: Represente los proxys/​brokers que puedan ser creados para exponer/​modificar una operación de un microservicio. +  * **co.ada.sicof.contabilidad.tercero.repo** 
-  * **co.ada.sicof.contabilidad.tercero.client**: Contiene los clientes que consuen operaciones de microservicios externos. +  * **co.ada.sicof.contabilidad.tercero.service** 
-  * **co.ada.sicof.contabilidad.tercero.event**: Contiene configuraciones especialesEste paquete solo será necesario en aquellas ocnfiguraciones donde se deben intervenir eventos de APIs.+  * **co.ada.sicof.contabilidad.tercero.client** 
 +  * **co.ada.sicof.contabilidad.tercero.event** 
 +  * **co.ada.sicof.contabilidad.tercero.business**
  
 ==== Consideraciones ==== ==== Consideraciones ====
 Es posible que algun desarrollo requiera una estructura con mas secciones de las definidas en la Estructura General o con algunas diferencias,​ esto será posible teniendo presente las siguientes condiciones Es posible que algun desarrollo requiera una estructura con mas secciones de las definidas en la Estructura General o con algunas diferencias,​ esto será posible teniendo presente las siguientes condiciones
  
-  - Se respeta la estructura general: **Dominio.Organización.Producto.Proceso.Funcionalidad.(nuevas secciones)**+  - Se respeta la estructura general: **Dominio.Organización.Producto.Proceso.(nuevas secciones)**
   - No se pueden cambiar las 2 primeras secciones: **co.ada**   - No se pueden cambiar las 2 primeras secciones: **co.ada**
   - El nuevo producto no hace parte del ERP   - El nuevo producto no hace parte del ERP
 +  - Evite que le nombre del paquete principal inicie con **co.ada.models** (Genera un bug de referencias en la actual versión de Springboot)
  
 ==== Observaciones ==== ==== Observaciones ====
ada/howto/sicoferp/factory/migracionsicoferp/process/backend/organizacionproyectosourcecode.1588790326.txt.gz · Última modificación: 2020/05/06 18:38 por carlos.torres