Versiones comparadas

Clave

  • Se ha a帽adido esta l铆nea.
  • Se ha eliminado esta l铆nea.
  • El formato se ha cambiado.

Subdirecci贸n de las Tecnolog铆as de la Informaci贸n y Comunicaciones

脕rea de Gobernanza y Calidad

Table Excerpt Include
nameLOGO_JUNTA
merge-tablestrue
pageRecursos
typepage

Versi贸n

Table Excerpt Include
statictrue
copytabletrue
nameVERSION_NORM_FRONT_GUIA_IMP_MODEL_MVVM
merge-tablestrue
pageNorm-front-toc
typepage

Tabla de Contenido


Tabla de contenidos
maxLevel5
indent20px
exclude.*(Versi贸n Actual|Cumplimiento Normativo|Hist贸rico de cambios|Subdirecci贸n de las Tecnolog铆as de la Informaci贸n y Comunicaciones|脕rea de Gobernanza y Calidad|Tabla de Contenido)

Cumplimiento Normativo


Advertencia

Las normas expuestas son de obligado cumplimiento. La STIC podr谩 estudiar los casos excepcionales los cuales ser谩n gestionados a trav茅s de los responsables del proyecto correspondiente y autorizados por el 脕rea de Gobernanza de la STIC. Asimismo cualquier aspecto no recogido en estas normas deber谩 regirse en primera instancia por las gu铆as t茅cnicas correspondientes al esquema nacional de seguridad y esquema nacional de interoperabilidad seg煤n correspondencia y en su defecto a los marcos normativos y de desarrollo software establecidos por la Junta de Andaluc铆a, debiendo ser puesto de manifiesto ante la STIC.

La STIC se reserva el derecho a la modificaci贸n de la norma sin previo aviso, tras lo cual, notificar谩 del cambio a los actores implicados para su adopci贸n inmediata seg煤n la planificaci贸n de cada proyecto.

En el caso de que alg煤n actor considere conveniente y/o necesario el incumplimiento de alguna de las normas y/o recomendaciones, deber谩 aportar previamente la correspondiente justificaci贸n fehaciente documentada de la soluci贸n alternativa propuesta, as铆 como toda aquella documentaci贸n que le sea requerida por la STIC para proceder a su validaci贸n t茅cnica.

Contacto Arquitectura: l-arquitectura.stic@juntadeandalucia.es

Hist贸rico de cambios


Los cambios en la normativa vendr谩n acompa帽ados de un registro de las modificaciones. De este modo se podr谩 realizar un seguimiento y consultar su evoluci贸n. Orden谩ndose de mas recientes a menos recientes, prestando especial cuidado a las cabeceras de la tablas d贸nde se indican las fechas de entrada en vigor y versi贸n.

Expandir
titleHist贸rico de cambios
Versi贸nPre-release聽Adopci贸nActivaRetiroAlcance
v01r00




  • Versi贸n inicial del documento

1. Contenido

ElementoDescripci贸nUso

Detalles en聽lit-element

vistaElemento del componente encargado de gestionar el renderizado y los estilosCuando que se dese茅 un componente visual
Bloque de c贸digo
languagejs
themeMidnight
window.customElements.define('tag-del-componente', WcSticButtonView);
vista-modeloElemento del componente encargado de gestionar las propiedades y la l贸gica visual聽Cuando el componente tenga propiedades o deba gestionar l贸gica visual
Bloque de c贸digo
languagejs
themeMidnight
titleEjemplos de ViewModel
@property({type:boolean}) visualStateProperty!:boolean;

@property({type:MyModelComponentClass}) modelComponent!:MyModelComponentClass;

__onEvent(ev:EventType){}

modelo-componente

propiedad compleja del componente. Es un agrupador de propiedades por contexto o funcionalidadCuando se quieran聽agrupar las propiedades del componente en un concepto



Bloque de c贸digo
languagexml
themeMidnight
titleInyecci贸n al tag como propiedad
<tag-del-componente .modelComponent="${myModelComponent}"/>
modelo-negocioElemento que representa un concepto de negocio

Cuando se quiera聽definir nuestro negocio (DDD) dentro de nuestra capa visual.

Normalmente se definir谩n聽estos modelos en un core que ser谩 utilizado por componente de tipo organismo, ya que estos son los responsables de gestionar el negocio

Bloque de c贸digo
languagexml
themeMidnight
titleInyecci贸n al tag como propiedad
<tag-del-componente .data="${myBussinessModel}"/>
evento-interactivoEvento generado por el componente con un significado interactivo m谩s que de negocio (click, hover, drag&drop..)聽

Cuando se quiera聽modificar el estado visual del componente como respuesta a la acci贸n de un usuario con el componente.

Este tipo de eventos no deben tener conocimiento ni sem谩ntica del negocio.

Suelen ser generados 谩tomos y consumidos por componentes mol茅culas.

Se debe evitar lo m谩ximo posible su uso dentro de las capas de negocio, haciendo esos

Hay que tener en cuenta en la generaci贸n del evento para su difusi贸n interna los valores de bubbles y cancelable.聽

S贸lo escalar谩n del componente definido cuando el componente en s铆 sea un 谩tomo o mol茅cula sin negocio.

Los nodos del DOM mas exteriores deben controlar que el evento no salga del 谩mbito del componente para garantizar su aislamiento registrandose como listeners y cancelando la difusi贸n.聽

Bloque de c贸digo
languagexml
themeMidnight
titleInyecci贸n de manejadores de eventos interactivos.
<tag-del-componente @interactiveEvent="${this.__onInteractive}"/>

<tag-del-componente @click="${this.__onClick}"/>
evento-negocioEvento generado por el componente con un significado de negocio (sort, filter, page, save, next etc)

Cuando se quiera聽modificar el estado visual del componente como respuesta a la acci贸n de negocio por parte del usuario.

Este tipo de eventos tienen conocimiento y sem谩ntica dentro del negocio de la aplicaci贸n y por norma general se utilizan para compartir informaci贸n entre componentes (padres, hermanos) siguiendo el patr贸n orquestaci贸n.

Por norma general suele escalar a las capas de componentes superiores.

Suelen ser generados Mol茅culas y consumidos por componentes Mol茅culas, Organismos

Bloque de c贸digo
languagexml
themeMidnight
titleInyecci贸n de manejadores de eventos de negocio.
<tag-del-componente @bussinessEvent="${this.__onMyBussiness}"/>




2. Categorizaci贸n y modelo de eventos de los componentes

Lucidchart
lcId71bd4d70-bb5f-45ed-a060-79e78e3b9553
rich-viewertrue
autoUpdatetrue
autofitfalse
nameAD - pCAK-1YgBI_F
width1808
convertedFromonprem
origParamseyIiOiIiLCJzaW1wbGVWaWV3ZXIiOiJ0cnVlIiwiYXV0b1VwZGF0ZSI6InRydWUiLCJhdHRhY2ht ZW50SWQiOiI3NjQzMzQyMSIsInZlcnNpb24iOiIxMCJ9
documentTokenv2_c9cc6b705c0234af064bcd6228aaaa395990c30b6b410437e1917af9e02ecf85-a=171816341&c=d1873183-daff-4cd4-a0ef-3f5bcb960f8c&d=cfd83a11-9d17-4ff5-9695-977a5bce5013&p=
idcfd83a11-9d17-4ff5-9695-977a5bce5013
alignLeft
height590