Beruflich Dokumente
Kultur Dokumente
com
Qu es un patrn de diseo?
Definicin: Una solucin bien establecida para un problema comn Plantilla o arquitectura basada en LabVIEW Altamente conocida y aceptada Fcil de reconocer
mexico.ni.com
mexico.ni.com
Los desarrolladores puede entender fcilmente un cdigo No es necesario reinventar la rueda Proveen soluciones definidas para problemas comunes
Confiabilidad
Muchas de ellas han sido utilizadas por aos son estn probadas Comparte o utiliza un cdigo creado en la comunidad de desarrolladores y ahorra tiempo y esfuerzo.
mexico.ni.com
Procesos que requieren disociacin Cdigo limpio y fcil de leer Componentes de funciones criticas
mexico.ni.com
Mquina de Estados
Necesito ejecutar una secuencia de eventos, pero el orden esta determinado de manera interactiva.
mexico.ni.com
Cmo funciona
Estructura Case contiene un caso para cada estado Cdigo de transicin determina el siguiente estado en base a los resultados de la ejecucin del paso
mexico.ni.com
WAITING INITIALIZING
deposited < .50 cents
ACCEPTING CHANGE
EXITING
WAITING INITIALIZING
deposited < .50 cents
ACCEPTING CHANGE
EXITING
10
WAITING INITIALIZING
deposited < .50 cents
ACCEPTING CHANGE
EXITING
11
WAITING INITIALIZING
deposited < .50 cents
ACCEPTING CHANGE
EXITING
12
Step Execution
Step Execution
mexico.ni.com
13
VENDING
mexico.ni.com
14
mexico.ni.com
Cmo funciona
1.
2.
3.
4.
El SO transmite los eventos (mouse click, teclado) hacia las aplicaciones Estructura de eventos captura los eventos registrados y ejecuta el caso apropiado Estructura eventos regresa informacin del evento al caso Estructura eventos almacena en una cola los eventos que ocurran mientras esta ocupada en otro caso
mexico.ni.com
16
17
Recomendaciones
Casos de Uso UI: Conserva el uso del CPU UI: Asegura que no se perder un evento Dirigir procesos de esclavos Consideraciones Estructura de eventos elimina el determinismo Evite colocar 2 estructuras de eventos en un ciclo while Recuerde leer la terminal de control boleano en el caso configurado para ese cambio de valor (value change)
mexico.ni.com
18
Productor/Consumidor
Tengo dos procesos que necesitan ejecutarse al mismo tiempo. Necesito asegurarme que uno de ellos, no haga ms lento al otro.
mexico.ni.com
Cmo funciona
Ciclo maestro indica a uno o mas esclavos cuando pueden ejecutarse Permite ejecucin asncrona de ciclos La independencia de datos rompe el flujo de datos y permite el multithreading Desliga los procesos
Thread 1
Thread 2
Thread 3
mexico.ni.com
20
Preguntas?
<NAME> Ingeniero de Aplicaciones National Instruments
mexico.ni.com