Informática Electrónica Interfaces para los programas de aplicación (APIs)

Save this PDF as:
 WORD  PNG  TXT  JPG

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Informática Electrónica Interfaces para los programas de aplicación (APIs)"

Transcripción

1 Informática Electrónica Interfaces para los programas de aplicación (APIs) DSI- EIE FCEIA 2015

2 Que es un API? Application Program Interface (interface para programas aplicativos) es el mecanismo mediante el cual un programa aplicativo accede a servicios de otros componentes de software Un API puede tomar distintas formas: Librerías Procedimientos Protocolos Objetos DSI EIE - FCEIA Informática Electrónica 2

3 Componentes de un API Convenciones de utilización Estructuras de datos Protocolos de invocación Mecanismos de sincronización DSI EIE - FCEIA Informática Electrónica 3

4 API: Conceptos Conceptualmente, un API expone a los programas del usuario un conjunto de funcionalidades accesibles un forma controlada Un API puede permitir el acceso a dispositivos físicos (device drivers), a servicios de plataforma tales como E/S y comunicaciones o a funcionalidades específicas de una pieza de software DSI EIE - FCEIA Informática Electrónica 4

5 API: Arquitectura Aplicación API Software/hardware DSI EIE - FCEIA Informática Electrónica 5

6 API: Arquitectura Llamada Aplicación Respuesta API DSI EIE - FCEIA Informática Electrónica 6

7 APIs Síncronas / Asíncronas En el primer caso, la respuesta se produce como consecuencia de la llamada: existe una relación causal entre ambas y un ordenamiento temporal secuencial En el caso asíncrono la respuesta se produce por la ocurrencia de un evento externo, ante el cual el aplicativo es informado por el API DSI EIE - FCEIA Informática Electrónica 7

8 APIs Síncronas Aplicativo API solicitud t 0 t 1 respuesta DSI EIE - FCEIA Informática Electrónica 8

9 APIs Asíncronas Aplicativo Registra interés en evento e API t 0 t 1 registrado t 2 t Suceso: evento e 3 Evento e t t DSI EIE - FCEIA Informática Electrónica 9

10 API: Tipos Dependiente del lenguaje: disponible para ser utilizada desde un lenguaje de programación específico. Ejemplo: API de sockets de UNIX (C) Independiente del lenguaje: diseñada de forma tal que puede utilizarse por programas escritos en distintos lenguajes de programación. Ejemplo: web services, NMEA, ELCOM DSI EIE - FCEIA Informática Electrónica 10

11 API: Ejemplos POSIX: Interface a los servicios de los sistemas operativos UNIX/POSIX WIN32: Interface a los servicios de Windows Nvidia CUDA: (Compute Unified Device Architecture) compilador y conjunto de herramientas de desarrollo que permiten a los programadores usar una variación del lenguaje C para codificar algoritmos en GPUs de nvidia NMEA: interface a instrumentos de navegación DSI EIE - FCEIA Informática Electrónica 11

12 Componentes de un API Uno o mas archivos de encabezado (*.h) Una o mas librerías (*.o, *.lib, *.dll, etc.) Un paquete de clases (Java: *.jar) Usualmente encapsuladas en un SDK (software Development Kit) Una especificación de protocolo y mensajes DSI EIE - FCEIA Informática Electrónica 12

13 Modelos Un API puede utilizar uno o mas mecanismos para comunicarse con los programas aplicativos, por ejemplo: Llamada a funciones Invocación de métodos Paso de mensajes DSI EIE - FCEIA Informática Electrónica 13

14 API Basada en Funciones Un API basada en funciones se presenta como una librería que se carga dinámica o estáticamente, y un conjunto de funciones o procedimientos que pueden invocarse desde un programa aplicativo Para utilizarla se debe compilar el aplicativo junto con los encabezados (*.h) y vincular con uno o mas archivos *.lib Si la librería es dinámica se carga sólo en el momento de ejecución, y toma la forma de DLLs (Windows) o SO (Unix/Linux) DSI EIE - FCEIA Informática Electrónica 14

15 API Basada en Funciones Es un modelo utilizado en lenguaje C Ejemplos: Placas adquisidoras de datos y conversores A/D Placas de comunicaciones Placas de captura de video DSI EIE - FCEIA Informática Electrónica 15

16 APIs basadas en Eventos Utilizadas para comunicaciones asíncronas con dispositivos de interface que producen estímulos desde el entorno, por ejemplo un sensor de nivel o un pulsador Frecuentemente la interacción se lleva a cabo mediante funciones de call-back Similar a las rutinas de atención de interrupción (ISR) DSI EIE - FCEIA Informática Electrónica 16

17 Funciones de Call-Back Cuando un programa tiene interés de conocer la ocurrencia de un evento, se registra como tal llamando una función del API e indicando como uno de sus argumentos un puntero a una función, que será invocada por el API ante la ocurrencia del evento en cuestión DSI EIE - FCEIA Informática Electrónica 17

18 Call-Back: Ejemplo El uso de señales en POSIX permite que un programa de aplicación sea notificado de la ocurrencia de un evento de su interés El programa aplicativo puede asociar un manejador de señal, que es una función que actúa en consecuencia a la notificación del evento El API de señales está incluido en <signal.h> DSI EIE - FCEIA Informática Electrónica 18

19 Callbacks: signal() La función signal() permite asociar un manejador a la ocurrencia de una señal mediante un puntero a función, utilizando el mecanismo de callback: int (*signal(int sig, void (*func)()))() DSI EIE - FCEIA Informática Electrónica 19

20 Ejemplo: señales #include <stdio.h> #include <signal.h> void sigproc(void); void quitproc(void); main(){ } signal(sigint, sigproc); signal(sigquit, quitproc); printf("ctrl c deshabilitado\n"); for(;;); void sigproc() { signal(sigint, sigproc); printf("ctrl c presionado \n"); } void quitproc() { printf("presione ctrl \\ para salir\n"); exit(0); } DSI EIE - FCEIA Informática Electrónica 20

21 API Basada en Mensajes Establecen protocolos de diálogo en una arquitectura similar al modelo OSI Incluyen al menos una capa física, una de enlace y una de aplicación Como el intercambio está basado en mensajes, permiten independizar el lenguaje del aplicativo Ejemplos: NMEA Garmin ELCOM DSI EIE - FCEIA Informática Electrónica 21

22 APIs Basada en Objetos Utilizable cuando el lenguaje de programación soporta el modelo de objetos: Java, C++,.Net Se presenta como un paquete de clases que brindan las funcionalidades requeridas mediante la instanciación de objetos y la posterior invocación de métodos sobre estos objetos Ejemplos: Android SDK para dispositivos móviles Componentes de comunicaciones: TcpSocket, etc. DSI EIE - FCEIA Informática Electrónica 22

23 Código: Ejemplos Funcional: int nbytes = send(tx_buf, len);/* C */ Objetos: sf::tcpsocket socket; socket.connect(sf::ipaddress(address), port); // c++ DSI EIE - FCEIA Informática Electrónica 23

24 Caso de Estudio En la práctica 5 trabajaremos con un API (NMEA) y dos device drivers: el del reloj de tiempo real y un puerto serie de una PC El informe debe entregarse en formato electrónico antes del 20 de junio DSI EIE - FCEIA Informática Electrónica 24

Interfaces y Manejadores de Dispositivos

Interfaces y Manejadores de Dispositivos Informática Electrónica Unidad 6 Interfaces y Manejadores de Dispositivos Modalidad y Materiales Dos clases expositivas a cargo del docente responsable (jlsimon@fceia.unr.edu.ar) Una práctica cargo de

Más detalles

Capítulo 1 Introducción a la Computación

Capítulo 1 Introducción a la Computación Capítulo 1 Introducción a la Computación 1 MEMORIA PRINCIPAL (RAM) DISPOSITIVOS DE ENTRADA (Teclado, Ratón, etc) C P U DISPOSITIVOS DE SALIDA (Monitor, Impresora, etc.) ALMACENAMIENTO (Memoria Secundaria:

Más detalles

SERVICE ORIENTED ARCHITECTURE (SOA) CONTENIDO

SERVICE ORIENTED ARCHITECTURE (SOA) CONTENIDO SERVICE ORIENTED ARCHITECTURE (SOA) CONTENIDO Introducción:...1 Service Oriented Architecture...2 Elementos de una Service Oriented Architecture...2 Application frontends...2 Servicios...2 Contrato:...3

Más detalles

INTRODUCCIÓN A JAVA. Índice

INTRODUCCIÓN A JAVA. Índice INTRODUCCIÓN A JAVA Índice Qué es Java? La plataforma Java 2 La Máquina Virtual de Java Características principales Qué ventajas tengo como desarrollador? Bibliografía 2 1 Qué es Java? La tecnología Java

Más detalles

Enseñanza de programación multihilo y controladores de dispositivo en entornos Windows para alumnos de electrónica

Enseñanza de programación multihilo y controladores de dispositivo en entornos Windows para alumnos de electrónica Enseñanza de programación multihilo y controladores de dispositivo en entornos Windows para alumnos de electrónica A. Da Silva, V. Hernández y J.F. Martínez Departamento de Ingeniería y Arquitecturas Telemáticas.

Más detalles

1 GLOSARIO. Actor: Es un consumidor (usa) del servicio (persona, sistema o servicio).

1 GLOSARIO. Actor: Es un consumidor (usa) del servicio (persona, sistema o servicio). 1 GLOSARIO A continuación se definen, en orden alfabético, los conceptos básicos que se han abordado a lo largo del desarrollo de la metodología para la gestión de requisitos bajo la Arquitectura Orientada

Más detalles

Introducción a los Servicios Web. Ing. José Luis Bugarin ILUMINATIC SAC jbugarin@consultorjava.com

Introducción a los Servicios Web. Ing. José Luis Bugarin ILUMINATIC SAC jbugarin@consultorjava.com Introducción a los Servicios Web Ing. José Luis Bugarin ILUMINATIC SAC jbugarin@consultorjava.com Servicios Web y Soa En un contexto SOA y los servicios web son una oportunidad de negocios en la actualidad.

Más detalles

Seminario de Java. Contenido

Seminario de Java. Contenido Seminario de Java Programación Orientada a Objetos Curso 2006/2007 Contenido 1. Introducción 2. Primeros pasos con Java. El entorno Eclipse 3. La sintaxis del lenguaje Java 4. Clases y objetos 5. Cadenas

Más detalles

Desarrollo de apps para móviles Android. Introducción a Android

Desarrollo de apps para móviles Android. Introducción a Android Desarrollo de apps para móviles Android Introducción a Android Qué es Android? I Es una plataforma de desarrollo libre y de código abierto. Ofrece gran cantidad de servicios: bases de datos, servicios

Más detalles

Estilos de Arquitectura y. Patrones de Diseño Arquitectónico. Patrones de Arquitectura

Estilos de Arquitectura y. Patrones de Diseño Arquitectónico. Patrones de Arquitectura Estilos de Arquitectura y Patrones de Diseño Arquitectónico Gastón Mousqués - AR 1 Patrones de Arquitectura Gastón Mousqués - AR 2 Principales Categorías de Patrones (Software) Patrones de Análisis Expresan

Más detalles

JAVA ENTERPRISE EDITION (J2EE) ARQUITECTURA TECNOLOGÍAS (1/2) (L1)

JAVA ENTERPRISE EDITION (J2EE) ARQUITECTURA TECNOLOGÍAS (1/2) (L1) TECNOLOGÍAS (1/2) (L1) EJB ( Enterprise Java Beans ) JSP ( Java Server Pages ) JNDI ( Java Naming and Directory Interface ) JDBC ( Java Data Base Connectivity ) Java Mail JSF ( Java Server Faces ) TECNOLOGÍAS

Más detalles

Tema 2: Implementación del núcleo de un Sistema Operativo

Tema 2: Implementación del núcleo de un Sistema Operativo Tema 2: Implementación del núcleo de un Sistema Operativo 1. Sistema Operativo Unix 2. Sistema Operativo Windows (a partir de NT) Dpto. Lenguajes y Sistemas Informáticos. Universidad de Granada 1 1. Sistema

Más detalles

Historia de revisiones

Historia de revisiones Herbert Game Descripción de la Arquitectura Versión 1.8 Historia de revisiones Fecha Versión Descripción Autor 29/08/2011 1.0 Creación del documento Juan Pablo Balarini Máximo Mussini 30/08/2011 1.1 Actualización

Más detalles

ARC 101 Architecture Overview Diagram

ARC 101 Architecture Overview Diagram ARC 101 Architecture Overview Diagram Estudio de Arquitectura para la evolución tecnológica de los aplicativos de ATyR Banco de Previsión Social ATYR Evolución Tecnológica Pág 1 of 10 Tabla de Contenidos

Más detalles

La obra se proporciona bajo los términos de esta licencia pública de Sisoft de México

La obra se proporciona bajo los términos de esta licencia pública de Sisoft de México Licencia La obra se proporciona bajo los términos de esta licencia pública de Sisoft de México S. A de C.V., Está protegida por derechos de autor y / u otras leyes aplicables. Cualquier uso diferente a

Más detalles

APLICACIÓN PARA DISPOSITIVOS MÓVILES DESTINADA A USUARIOS DEL PARQUE NATURAL DE LA SIERRA DE COLLSEROLA

APLICACIÓN PARA DISPOSITIVOS MÓVILES DESTINADA A USUARIOS DEL PARQUE NATURAL DE LA SIERRA DE COLLSEROLA APLICACIÓN PARA DISPOSITIVOS MÓVILES DESTINADA A USUARIOS DEL PARQUE NATURAL DE LA SIERRA DE COLLSEROLA 1. Introducción 2. Funciones de la aplicación Los objetivos requeridos se cumplieron y ampliaron

Más detalles

Arquitecturas GPU v. 2013

Arquitecturas GPU v. 2013 v. 2013 Stream Processing Similar al concepto de SIMD. Data stream procesado por kernel functions (pipelined) (no control) (local memory, no cache OJO). Data-centric model: adecuado para DSP o GPU (image,

Más detalles

U2. Introducción al desarrollo de aplicaciones móviles Smartphone y Android Desarrollo de Aplicaciones III TIC-UTSV Enero 2015 I.S.C.

U2. Introducción al desarrollo de aplicaciones móviles Smartphone y Android Desarrollo de Aplicaciones III TIC-UTSV Enero 2015 I.S.C. U2. Introducción al desarrollo de aplicaciones móviles Smartphone y Android Desarrollo de Aplicaciones III TIC-UTSV Enero 2015 I.S.C. Rogelio Vázquez Hernández Smartphone Termino utilizado para referirse

Más detalles

TEMARIO DE PROFESORES TÉCNICOS DE F.P. SISTEMAS Y APLICACIONES INFORMÁTICAS

TEMARIO DE PROFESORES TÉCNICOS DE F.P. SISTEMAS Y APLICACIONES INFORMÁTICAS TEMARIO DE PROFESORES TÉCNICOS DE F.P. SISTEMAS Y APLICACIONES INFORMÁTICAS "Publicado en el B.O.E. de 13 de febrero de 1.996" OCTUBRE 1997 SISTEMAS Y APLICACIONES INFORMÁTICAS 1. Representación y comunicación

Más detalles

Tema 1. Introducción a JAVA

Tema 1. Introducción a JAVA Tema 1. Introducción a JAVA Historia Características Plataforma Java Entorno de desarrollo Ejemplo: Hola mundo Estructura general de un programa Java 1 Historia de Java (i) Surge en 1991: Sun Microsystems

Más detalles

Especificación de la secuencia de mensajes que se han de intercambiar. Especificación del formato de los datos en los mensajes.

Especificación de la secuencia de mensajes que se han de intercambiar. Especificación del formato de los datos en los mensajes. SISTEMAS DISTRIBUIDOS DE REDES 2.- MODELOS ORIENTADOS A OBJETOS DISTRIBUIDOS 2.1. Tecnologías de sistemas distribuidos Para la implementación de sistemas distribuidos se requiere de tener bien identificados

Más detalles

Aplicaciones Distribuidas. Informática III

Aplicaciones Distribuidas. Informática III Aplicaciones Distribuidas Informática III Temario Elementos arquitecturales Arquitecturas tradicionales Arquitecturas Cliente/Servidor Arquitecturas distribuidas Elementos Arquitecturales Componentes de

Más detalles

Unidad I. Introducción a la programación de Dispositivos Móviles

Unidad I. Introducción a la programación de Dispositivos Móviles Clase:002 1 Unidad I Introducción a la programación de Dispositivos Móviles Tomado de : Programación Multimedia y Dispositivos Móviles 2012 Paredes Velasco, Maximiliano / Santacruz Valencia, Liliana 2

Más detalles

Sumario... 5 Prólogo... 7. Unidad didáctica 1. Introducción a la computación distribuida... 11. Objetivos de la Unidad... 12

Sumario... 5 Prólogo... 7. Unidad didáctica 1. Introducción a la computación distribuida... 11. Objetivos de la Unidad... 12 ÍNDICE SISTEMÁTICO PÁGINA Sumario... 5 Prólogo... 7 Unidad didáctica 1. Introducción a la computación distribuida... 11 Objetivos de la Unidad... 12 1. Conceptos básicos... 13 2. Computación monolítica,

Más detalles

Extensión K2B proyectos para Smart Devices

Extensión K2B proyectos para Smart Devices Extensión K2B proyectos para Smart Devices Descripción de la Arquitectura Versión 2.0 15/10/2012 Historia de revisiones Fecha Versión Descripción Autor 28/08/2012 1.0 Creación del documento Diego Cardozo

Más detalles

Cátedra de Sistemas Distribuidos Escuela de Ingeniería Electrónica Departamento de Sistemas e Informática

Cátedra de Sistemas Distribuidos Escuela de Ingeniería Electrónica Departamento de Sistemas e Informática Cátedra de Sistemas Distribuidos Escuela de Ingeniería Electrónica Departamento de Sistemas e Informática Trabajo Práctico nro. 2: Comunicación Entre Procesos Tiempo Distribuido Objetivos del Práctico

Más detalles

MIDDLEWARE: Arquitectura para Aplicaciones Distribuidas Dr. Víctor J. Sosa Sosa vjsosa@tamps.cinvestav.mx

MIDDLEWARE: Arquitectura para Aplicaciones Distribuidas Dr. Víctor J. Sosa Sosa vjsosa@tamps.cinvestav.mx MIDDLEWARE: Arquitectura para Aplicaciones Distribuidas Dr. Víctor J. Sosa Sosa vjsosa@tamps.cinvestav.mx Contenido Middleware: Introducción Definición Genealogía Aplicaciones actuales: Servicios Web Computación

Más detalles

Capítulo 1. Componentes de CORBA.

Capítulo 1. Componentes de CORBA. Capítulo 1. Componentes de CORBA. La OMA (Object Management Architecture) define en alto nivel de abstracción las reglas necesarias para la distribución de la computación orientada a objetos (OO) en entornos

Más detalles

Contenido. Sistemas de Entrada/Salida. Categorias de los Dispositivos de Entrada/Salida. Categorias de los Dispositivos de Entrada/Salida

Contenido. Sistemas de Entrada/Salida. Categorias de los Dispositivos de Entrada/Salida. Categorias de los Dispositivos de Entrada/Salida Contenido Sistemas de Categorias de los Dispositivos de En qué se diferencian los dispositivos de? Técnicas para realizar la E/S Interrupciones Interfaces involucradas en E/S Buffering Categorias de los

Más detalles

Modelo de aplicaciones CUDA

Modelo de aplicaciones CUDA Modelo de aplicaciones CUDA Utilización de GPGPUs: las placas gráficas se utilizan en el contexto de una CPU: host (CPU) + uno o varios device o GPUs Procesadores masivamente paralelos equipados con muchas

Más detalles

Programación de Sistemas

Programación de Sistemas Programación s Unidad 2 s Operativos y Programación Software Base Contenido Introducción a los s Operativos (SO) Definición y conceptos SO Visualización un sistema cómputo s distintos puntos vista Capas

Más detalles

Sistemas Operativos INTRODUCCIÓN A LAS TECNOLOGÍAS INFORMÁTICAS

Sistemas Operativos INTRODUCCIÓN A LAS TECNOLOGÍAS INFORMÁTICAS Sistemas Operativos INTRODUCCIÓN A LAS TECNOLOGÍAS INFORMÁTICAS Contenido 1. Repaso: software y tipos de software 2. Sistemas Operativos: conceptos generales 3. Sistemas Operativos: Windows, Unix, Mac

Más detalles

Tema 2: La Tecnología Java

Tema 2: La Tecnología Java Tema 2: La Tecnología Java 0 La Tecnología de Java Es : Un lenguaje de programación Similar a C/C++ sin los problemas de manejo de memoria. Un ambiente de desarrollo Compilador, intérprete, generados de

Más detalles

J2ME ENTORNO DE EJECUCIÓN. Un entorno de ejecución determinado de J2ME se compone entonces de una selección de:

J2ME ENTORNO DE EJECUCIÓN. Un entorno de ejecución determinado de J2ME se compone entonces de una selección de: J2ME Esta versión de Java está enfocada a la aplicación de la tecnología Java en dispositivos electrónicos con capacidades computacionales y gráficas muy reducidas, tales como teléfonos móviles, PDAs o

Más detalles

EXPERTO EN DESARROLLO DE APLICACIONES PARA DISPOSITIVOS MÓVILES

EXPERTO EN DESARROLLO DE APLICACIONES PARA DISPOSITIVOS MÓVILES Instituto de Formación Profesional CBTech Estudie desde su hogar y obtenga un certificado universitario Formación a distancia de EXPERTO EN DESARROLLO DE APLICACIONES PARA DISPOSITIVOS MÓVILES 1 Introducción

Más detalles

5.1 Introducción a Servicios Web

5.1 Introducción a Servicios Web 5.1 Introducción a Servicios Web Introducción Continuando con el ejemplo de intercambio de información de películas... => Actualmente ya no es necesario implementar la solución sugerida a mano Se han estandarizado

Más detalles

Patrones de Alto nivel: Patrones de Arquitectura Patrones de nivel medio: Patrones de Diseño Patrones de bajo nivel: Idioms

Patrones de Alto nivel: Patrones de Arquitectura Patrones de nivel medio: Patrones de Diseño Patrones de bajo nivel: Idioms Patrones Patrones Es una solución reusable de problemas comunes. Los patrones solucionan problemas que existen en muchos niveles de abstracción. desde el análisis hasta el diseño y desde la arquitectura

Más detalles

Desarrollo de Aplicaciones Web Por César Bustamante Gutiérrez. Módulo I: Conceptos Básicos Tema 1: Concepto iniciales. www.librosdigitales.

Desarrollo de Aplicaciones Web Por César Bustamante Gutiérrez. Módulo I: Conceptos Básicos Tema 1: Concepto iniciales. www.librosdigitales. 1 Arquitectura de una Aplicación Android Para empezar con el desarrollo de aplicaciones en Android es importante conocer cómo está estructurado este sistema operativo. A esto le llamamos arquitectura y

Más detalles

Guía de Instalación de la JDK y del Eclipse

Guía de Instalación de la JDK y del Eclipse Guía de Instalación de la JDK y del Eclipse En esta guía tenemos por objetivo llevar a cabo la instalación de nuestro entorno de programación Java. En primer lugar, vamos a instalar el kit de desarrollo

Más detalles

TEMA 1. Introducción

TEMA 1. Introducción TEMA 1 Introducción LO QUE ABORDAREMOS Qué es Android? Qué lo hace interesante? Arquitectura del sistema Entorno de desarrollo 2 QUÉ ES ANDROID? Sistema operativo para móviles Desarrollado inicialmente

Más detalles

Boletín 5- Señales. Departamento de Lenguajes y Sistemas Informáticos

Boletín 5- Señales. Departamento de Lenguajes y Sistemas Informáticos Boletín 5- Señales Departamento de Lenguajes y Sistemas Informáticos Indice 1. Introducción 2. Envío de señales desde la shell: kill 3. Llamadas al Sistema kill: envío de señal a un proceso raise: autoenvío

Más detalles

Qué es Java? Introducción a Java. Lenguajes Orientados a Objetos. Qué es Java? Historia de Java. Objetivos de Java

Qué es Java? Introducción a Java. Lenguajes Orientados a Objetos. Qué es Java? Historia de Java. Objetivos de Java Qué es? Introducción a es Un lenguaje de programación Un entorno de desarrollo Un entorno de ejecución de aplicaciones Un entorno de despliegue de aplicaciones Utilizado para desarrollar, tanto applets

Más detalles

Web Services en Java. Taller de Programación. Instituto de Computación Facultad de Ingeniería Universidad de la República

Web Services en Java. Taller de Programación. Instituto de Computación Facultad de Ingeniería Universidad de la República Web Services en Java Taller de Programación Instituto de Computación Facultad de Ingeniería Universidad de la República Contenido Motivación y Conceptos Funcionamiento Annotations Desarrollando una aplicación

Más detalles

RFID RFID. MIDDLEWARE RFID software de conectividad

RFID RFID. MIDDLEWARE RFID software de conectividad MIDDLEWARE software de conectividad Qué es? El middleware es una forma rápida y efectiva de implementar Tecnología en cualquier ámbito de aplicación. En pocos pasos usted podrá conectar diversos dispositivos

Más detalles

Acoplamiento e interoperabilidad

Acoplamiento e interoperabilidad Máster Universitario en Ingeniería Informá3ca Acoplamiento e interoperabilidad Sistemas de Información Orientados a Servicios RODRIGO SANTAMARÍA 2 Acoplamiento débil Tipos de acoplamiento Cabalgando el

Más detalles

NOMBRE DEL EXPERIMENTO AUTOR CATEGORÍA PALABRAS CLAVE QUÉ SE PRETENDE MOSTRAR? DIRIGIDO A. Construye y Controla tu Robot en un día.

NOMBRE DEL EXPERIMENTO AUTOR CATEGORÍA PALABRAS CLAVE QUÉ SE PRETENDE MOSTRAR? DIRIGIDO A. Construye y Controla tu Robot en un día. NOMBRE DEL EXPERIMENTO Construye y Controla tu Robot en un día. AUTOR Juan Antonio Holgado Terriza Marcelino Cabrera Cuevas Jesús Luis Muros Cobos Sandra Rodríguez Valenzuela CATEGORÍA Tecnología PALABRAS

Más detalles

Hardware: componentes físicos (UCP, discos, impresora, circuitos de E/S,...) Software: componentes lógicos (lo que no es hardware)

Hardware: componentes físicos (UCP, discos, impresora, circuitos de E/S,...) Software: componentes lógicos (lo que no es hardware) 1. Niveles de organización de computadoras Hardware y software Enfoque de máquina multinivel Clasificación de computadoras Hardware y Software Hardware: componentes físicos (UCP, discos, impresora, circuitos

Más detalles

Tema 2: Introducción a Android

Tema 2: Introducción a Android Tema 2: Introducción a Android Android Android es un sistema operativo basado en el Kernel de Linux diseñado principalmente para dispositivos móviles con pantalla táctil. Android Fue desarrollado originalmente

Más detalles

servicios. El API es definido al nivel de código fuente y proporciona el nivel de

servicios. El API es definido al nivel de código fuente y proporciona el nivel de GLOSARIO API Application Program -ming- Interface Es la interfaz por la cual una aplicación accede al sistema operativo u a otros servicios. El API es definido al nivel de código fuente y proporciona el

Más detalles

FORMACIÓN PARA LA CERTIFICACIÓN OFICIAL MICROSOFT. Windows 8 Developer: MCSD Windows Store Apps Using C#

FORMACIÓN PARA LA CERTIFICACIÓN OFICIAL MICROSOFT. Windows 8 Developer: MCSD Windows Store Apps Using C# FORMACIÓN PARA LA CERTIFICACIÓN OFICIAL MICROSOFT Windows 8 Developer: MCSD Windows Store Apps Using C# DETALLE DE LA ACCION FORMATIVA Mediante la siguiente acción formativa se formará a las personas asistentes

Más detalles

Plan 95 Adecuado ASIGNATURA: DESARROLLO EN ANDROID HORAS / AÑO: 64 HS.

Plan 95 Adecuado ASIGNATURA: DESARROLLO EN ANDROID HORAS / AÑO: 64 HS. Plan 95 Adecuado ASIGNATURA: DESARROLLO EN ANDROID DEPARTAMENTO: ELECTRÓNICA ÁREA: TÉCNICAS DIGITALES CODIGO: CLASE: ELECTIVA DE ESPECIALIDAD HORAS SEM.: 4 HS. HORAS / AÑO: 64 HS. Fundamentación: En los

Más detalles

Unidad 1: Conceptos generales de Sistemas Operativos.

Unidad 1: Conceptos generales de Sistemas Operativos. Unidad 1: Conceptos generales de Sistemas Operativos. Tema 3: Estructura del sistema operativo. 3.1 Componentes del sistema. 3.2 Servicios del sistema operativo. 3.3 Llamadas al sistema. 3.4 Programas

Más detalles

Ingeniería del Software. Diseño. Diseño en el PUD. Diseño de software. Patrones arquitectónicos. Diseño Orientado a Objetos en UML

Ingeniería del Software. Diseño. Diseño en el PUD. Diseño de software. Patrones arquitectónicos. Diseño Orientado a Objetos en UML Diseño Diseño en el PUD Diseño de software Patrones arquitectónicos Diseño Orientado a Objetos en UML 1 Iteración en PUD Planificación de la Iteración Captura de requisitos: Modelo de casos de uso, Modelo

Más detalles

Permite compartir recursos en forma coordinada y controlada para resolver problemas en organizaciones multiinstitucionales

Permite compartir recursos en forma coordinada y controlada para resolver problemas en organizaciones multiinstitucionales The Anatomy of the Grid Enabling Scalable Virtual Organization Autores : Ian Foster, Carl Kesselman y Steven Tuecke. 2001 GRIDS y Organizaciones Virtuales Permite compartir recursos en forma coordinada

Más detalles

Programa de la materia. Programación de Sistemas. Organización del curso. Evaluación. Acerca de los trabajos. Acerca de las responsabilidades

Programa de la materia. Programación de Sistemas. Organización del curso. Evaluación. Acerca de los trabajos. Acerca de las responsabilidades Programa de la materia Programación de Sistemas Disponible desde el sitio web http://www.uv.mx/rrojano/programacion_sist/ Mtro. en IA José Rafael Rojano Cáceres rrojano@gmail.com http://www.uv.mx/rrojano

Más detalles

DIRECCIÓN REGIONAL DE EDUCACIÓN PUNO INSTITUTO DE EDUCACIÓN SUPERIOR TECNOLÓGICO PÚBLICO MACUSANI

DIRECCIÓN REGIONAL DE EDUCACIÓN PUNO INSTITUTO DE EDUCACIÓN SUPERIOR TECNOLÓGICO PÚBLICO MACUSANI DIRECCIÓN REGIONAL DE EDUCACIÓN PUNO INSTITUTO DE EDUCACIÓN SUPERIOR TECNOLÓGICO PÚBLICO MACUSANI RM. N 102-90-ED de Creación y Funcionamiento, RD Nº 0086-2006-ED de Revalidación Web Site: www.tecnomacusani.edu.pe

Más detalles

Capitulo 1: Plataforma Android

Capitulo 1: Plataforma Android Capitulo 1: Plataforma Android Elaborado por: Gary Briceño http://gary.pe http://gary.pe 1 Temario 1. Android 2. Evolución 3. Arquitectura Android 4. Paquetes de Trabajo 5. Android y Java http://gary.pe

Más detalles

MS_10978 Introduction to Azure for Developers

MS_10978 Introduction to Azure for Developers Gold Learning Gold Business Intelligence Silver Data Plataform Introduction to Azure for Developers www.ked.com.mx Por favor no imprimas este documento si no es necesario. Introducción. Este curso ofrece

Más detalles

Programación para sistemas en red IV. Conceptos básicos II

Programación para sistemas en red IV. Conceptos básicos II Conceptos básicos II Maquina virtual de java (JVM): Una Máquina virtual Java (en inglés Java Virtual Machine, JVM) es un programa nativo, es decir, ejecutable en una plataforma específica, capaz de interpretar

Más detalles

DESARROLLO DE COMPONENTES PARA LA INTEGRACIÓN DEL PORTAL CORPORATIVO DEL CITI CON LA BPMS BIZAGI

DESARROLLO DE COMPONENTES PARA LA INTEGRACIÓN DEL PORTAL CORPORATIVO DEL CITI CON LA BPMS BIZAGI DESARROLLO DE COMPONENTES PARA LA INTEGRACIÓN DEL PORTAL CORPORATIVO DEL CITI CON LA BPMS BIZAGI Informe de Práctica Profesional de 4to Año, Ingeniería Informática Autor: Manuel Alejandro Aguilar Díaz

Más detalles

Arquitectura y Diseño de la Solución

Arquitectura y Diseño de la Solución Arquitectura y Diseño de la Solución Recuento de Conceptos importantes Modelamiente / Versionamiento de trámites Vista Conceptual Subsistemas Funcionales Principales Detalle de los subsistemas Vista de

Más detalles

Clases y Objetos. Informática II Ingeniería Electrónica

Clases y Objetos. Informática II Ingeniería Electrónica Clases y Objetos Informática II Ingeniería Electrónica Los Tipos de Datos Hasta ahora, en un programa podemos usar para representar variables a: Tipos fundamentales : enteros (int), caracteres (char),

Más detalles

Curso Tecnologías Móviles

Curso Tecnologías Móviles INSTALACION DEL SDK DE ANDROID. INTRODUCCION AL ENTORNO DE DESARROLLO DE ANDROID. (ECLIPSE) Donde descargar el sdk de android. http://developer.android.com/sdk/index.html Como saber si tenemos correctamente

Más detalles

JAVA EE 5. Arquitectura, conceptos y ejemplos.

JAVA EE 5. Arquitectura, conceptos y ejemplos. JAVA EE 5. Arquitectura, conceptos y ejemplos. INTRODUCCIÓN. MODELO DE LA APLICACIÓN JEE5. El modelo de aplicación Java EE define una arquitectura para implementar servicios como lo hacen las aplicaciones

Más detalles

Capítulo 2. Planteamiento del problema. Capítulo 2 Planteamiento del problema

Capítulo 2. Planteamiento del problema. Capítulo 2 Planteamiento del problema Capítulo2 Planteamientodelproblema 38 2.1Antecedentesycontextodelproyecto En lo que respecta a los antecedentes del proyecto, se describe inicialmente el contexto donde se utiliza el producto de software.

Más detalles

E-Government con Web Services

E-Government con Web Services E-Government con Web Services Fernando Leibowich Beker * Uno de los grandes avances que produjeron las Nuevas Tecnologías de la Información y la Comunicación es la posibilidad de generar redes de computadoras

Más detalles

Módulo 2 Comunicación

Módulo 2 Comunicación Sistemas Distribuidos Módulo 2 Comunicación Facultad de Ingeniería Departamento de Informática Universidad Nacional de la Patagonia San Juan Bosco Comunicación en Sistemas Distribuidos Modelos de Comunicaciones

Más detalles

3.1 Introducción a Wireshark

3.1 Introducción a Wireshark 3.1 Introducción a Wireshark Una herramienta básica para observar los mensajes intercambiados entre aplicaciones es un analizador de protocolos (packet sniffer). Un analizador de protocolos es un elemento

Más detalles

OMG UML 2.0 Marcando un hito en el desarrollo de software Resumen Keywords Historia del Surgimiento

OMG UML 2.0 Marcando un hito en el desarrollo de software Resumen Keywords Historia del Surgimiento OMG UML 2.0 Marcando un hito en el desarrollo de software Resumen A través de este artículo se ofrece un panorama amplio y de alto nivel sobre la especificación y los diferentes diagramas del Lenguaje

Más detalles

JAVA NATIVE INTERFACE (JNI) INVOCANDO C/C++ DESDE JAVA

JAVA NATIVE INTERFACE (JNI) INVOCANDO C/C++ DESDE JAVA JAVA NATIVE INTERFACE (JNI) INVOCANDO C/C++ DESDE JAVA Java proporciona un marco denominado Java Native Interface (JNI), con la que es posible escribir métodos nativos. Un método nativo es un método que

Más detalles

INF 473 Desarrollo de Aplicaciones en

INF 473 Desarrollo de Aplicaciones en INF 473 Desarrollo de Aplicaciones en Java Unidad II El Lenguaje de Programación Java Prof. José Miguel Rubio jose.rubio.l@ucv.cl jrubio@inf.ucv.cl PUCV Marzo 2008 1 Orígenes del Lenguaje Java 1991. James

Más detalles

4 ARQUITECTURA DE COMUNICACIONES

4 ARQUITECTURA DE COMUNICACIONES 4 ARQUITECTURA DE COMUNICACIONES Las redes de computadoras son típicamente heterogéneas. Por ejemplo, la red interna de una universidad puede estar hecha de múltiples plataformas. Puede haber un servidor

Más detalles

Programación Concurrente

Programación Concurrente Master en Computación Programación Concurrente Bloque II: Programación concurrente en POSIX Tema 1. Introducción al estándar POSIX Tema 3. Gestión de Threads Tema 4. Gestión del Tiempo Tema 5. Planificación

Más detalles

Software de sistema: Programas genéricos que permiten gestionar los recursos del ordenador.

Software de sistema: Programas genéricos que permiten gestionar los recursos del ordenador. PRINCIPALES TIPOS DE SOFTWARE Software de sistema: Programas genéricos que permiten gestionar los recursos del ordenador. Software de aplicación: Son programas escritos para realizar funciones específicas

Más detalles

Taller de Programación de Dispositivos Móviles. José Miguel Rubio L. Oficina 3-20 http://www.inf.ucv.cl/~jrubio jose.rubio.l@ucv.

Taller de Programación de Dispositivos Móviles. José Miguel Rubio L. Oficina 3-20 http://www.inf.ucv.cl/~jrubio jose.rubio.l@ucv. Taller de Programación de Dispositivos Móviles José Miguel Rubio L. Oficina 3-20 http://www.inf.ucv.cl/~jrubio jose.rubio.l@ucv.cl Parte 1 1.Programación de dispositivos 2.Limitaciones de los dispositivos

Más detalles

JAVA 8 Los fundamentos del lenguaje Java (con ejercicios prácticos corregidos)

JAVA 8 Los fundamentos del lenguaje Java (con ejercicios prácticos corregidos) Presentación 1. Historia 11 1.1 Por qué Java? 11 1.2 Objetivos del diseño de Java 12 1.3 Auge de Java 13 2. Características de Java 14 2.1 El lenguaje de programación Java 14 2.1.1 Sencillo 15 2.1.2 Orientado

Más detalles

JAVA PARA PRINCIPIANTES

JAVA PARA PRINCIPIANTES UN POCO DE HISTORIA Java fue creado en 1991 por James Gosling de Sun Microsystems inicialmente llamado Oak que significa roble, esto debido a la cantidad de arboles que rodeaban el sitio donde este trabajaba.

Más detalles

http://www.droidlife.com/#47

http://www.droidlife.com/#47 Oct 2003 Fundación de Android, Inc. en Palo Alto, CA. 16 Ago, 2005 Android, Inc. es adquirida por Google. 5 Nov, 2007 Se anuncia el Open Handset Alliance (OHA), una alianza formada por 34 compañías líderes

Más detalles

Modulo I. Introducción a la Programación Web. 1.1 Servidor Web.

Modulo I. Introducción a la Programación Web. 1.1 Servidor Web. Modulo I. Introducción a la Programación Web. 1.1 Servidor Web. Antes de analizar lo que es un servidor Web y llevara a cabo su instalación, es muy importante identificar diferentes elementos involucrados

Más detalles

TECNÓLOGO EN DESARROLLO DE SOFTWARE

TECNÓLOGO EN DESARROLLO DE SOFTWARE PERFIL DE EGRESO Diseña, codifica, desarrolla e implementa software a la medida, web y móvil, de manera segura bajo los estándares internacionales; Diseña, gestiona, administra y da mantenimiento a infraestructuras

Más detalles

MODELO DE IMPLEMENTACIÓN

MODELO DE IMPLEMENTACIÓN Capítulo 4 MODELO DE IMPLEMENTACIÓN 4.1 Introducción El Modelo de implementación utiliza el resultado del Modelo de diseño para generar el código final en el lenguaje de programación elegido [10]. Aunque

Más detalles

Software Libre / Código Abierto Programa de contenidos

Software Libre / Código Abierto Programa de contenidos Software Libre / Código Abierto Programa de contenidos Resumen Se presenta a continuación la organización de un curso de cincuenta horas cuyo fin es dar a conocer la base ideológica que sostiene a los

Más detalles

Tecnología de objetos distribuidos y arquitectura de componentes. Índice. Bibliografía. Introducción. Tema V

Tecnología de objetos distribuidos y arquitectura de componentes. Índice. Bibliografía. Introducción. Tema V Bibliografía Tema V Tecnología de objetos distribuidos y arquitectura de componentes. Szyperski, C. 1998. Component Software. Addison-Wesley. Ruiz Cortés, 1998. A. CORBA: Una visión general. http://www.lsi.us.es/~aruiz

Más detalles

Interacción y manejo de documentos XML.

Interacción y manejo de documentos XML. Interacción y manejo de documentos XML. Como último miembro de la familia XML, nos planteamos la tecnología por la cual una aplicación externa, escrita en no importa que lenguaje de programación, puede

Más detalles

ARC 108 Component Model

ARC 108 Component Model ARC 108 Component Model Evolución Tecnológica de RNOM Banco de Previsión Social Tabla de Contenidos ARC 108 Component Model 1. INTRODUCCIÓN 3 2. OBJETIVO 4 3. NOTACIÓN 5 4. ARQUITECTURA GLOBAL 6 4.1. DIAGRAMA

Más detalles

DEPARTAMENTO DE INFORMÁTICA CICLO FORMATIVO DE GRADO SUPERIOR ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS MÓDULO: REDES DE ÁREA LOCAL CURSO: 2006-2007

DEPARTAMENTO DE INFORMÁTICA CICLO FORMATIVO DE GRADO SUPERIOR ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS MÓDULO: REDES DE ÁREA LOCAL CURSO: 2006-2007 DEPARTAMENTO DE INFORMÁTICA CICLO FORMATIVO DE GRADO SUPERIOR ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS MÓDULO: REDES DE ÁREA LOCAL CURSO: 2006-2007 Módulo Profesional: REDES DE ÁREA LOCAL Página 1 de 12

Más detalles

Capitulo 2 Android SDK

Capitulo 2 Android SDK Capitulo 2 Android SDK Elaborado por: Gary Briceño http://gary.pe http://gary.pe 1 ESTRUCTURA DE ANDROID SDK http://gary.pe 2 http://gary.pe 3 Android SDK Proporciona los API y herramientas de desarrollo

Más detalles

Dispositivos de Entrada/Salida

Dispositivos de Entrada/Salida Dispositivos E/S. CPU Memoria Central Tarjeta de Red Red BUS Controlador de Discos Dispositivos E/S Dispositivos E/S. Los dispositivos de Entrada/Salida sirven al ordenador para obtener información del

Más detalles

Cuerpo Administrativo, Especialidad Operador de Informática

Cuerpo Administrativo, Especialidad Operador de Informática Cuerpo Administrativo, Especialidad Operador de Informática TEMARIO ESPECÍFICO: Tema 1. Concepto de informática y evolución histórica. Contenidos: Definición. Esquema general de un ordenador. Componentes

Más detalles

Components & Connectors Viewtype. Estilos

Components & Connectors Viewtype. Estilos Components & Connectors Viewtype Estilos 1 Estilos Especializan el C&C viewtype introduciendo tipos de componente y conector a los cuales pertenecerán las instancias del modelo Especifican patrones de

Más detalles

Introduccion al Lenguaje C. Omar Andrés Zapata Mesa Grupo de Fenomenología de Interacciones Fundamentales, (Gfif) Universidad de Antioquia

Introduccion al Lenguaje C. Omar Andrés Zapata Mesa Grupo de Fenomenología de Interacciones Fundamentales, (Gfif) Universidad de Antioquia Introduccion al Lenguaje C Omar Andrés Zapata Mesa Grupo de Fenomenología de Interacciones Fundamentales, (Gfif) Universidad de Antioquia Introducción C es un lenguaje de programación creado en 1972 por

Más detalles

Técnico Superior en Programación con Java SE Standard Edition

Técnico Superior en Programación con Java SE Standard Edition Código: M087_04 Técnico Superior en Programación con Java SE Standard Edition Modalidad: Distancia Duración: 120 horas Objetivos: Este pack de materiales formativos proporcionará al alumnado la base que

Más detalles

CURSO DE PROGRAMACIÓN EN JAVA J2EE 7 ÍNDICE

CURSO DE PROGRAMACIÓN EN JAVA J2EE 7 ÍNDICE CURSO DE PROGRAMACIÓN EN JAVA J2EE 7 ÍNDICE PRÓLOGO... 13 APECTOS BÁSICOS DE JAVA... 15 1.1. LA MÁQUINA VIRTUAL JAVA... 15 1.2. EDICIONES JAVA... 16 1.3. ESTRUCTURA DE UN PROGRAMA JAVA... 16 1.4. EL MÉTODO

Más detalles

online Master Programación Java SE y Java EE

online Master Programación Java SE y Java EE online Master Programación Java SE y Java EE Objetivos Mejorar las competencias en todo lo relacionado con Visual studio.net y su framework para trabajar con componentes Windows y Web, crear aplicaciones

Más detalles

BOLETÍN OFICIAL DEL ESTADO

BOLETÍN OFICIAL DEL ESTADO Núm. 138 Viernes 10 de junio de 2011 Sec. I. Pág. 59296 el suficiente para un mínimo de 15 alumnos y deberá incrementarse, en su caso, para atender a número superior. En el caso de que la formación se

Más detalles

Curso: Programación con JAVA SE Estándar Edition.

Curso: Programación con JAVA SE Estándar Edition. Curso: Programación con JAVA SE Estándar Edition. Código: 1062 Familia Profesional: Programación. Acreditación: Formación reconocida a través de vías no formales Modalidad: Distancia Duración: 150 horas

Más detalles

Contenidos. Sistemas operativos Tema 3: Estructura del sistema operativo. Componentes típicos de un SO. Gestión de procesos.

Contenidos. Sistemas operativos Tema 3: Estructura del sistema operativo. Componentes típicos de un SO. Gestión de procesos. Contenidos Sistemas operativos Tema 3: Estructura del sistema operativo Componentes típicos del SO Servicios del SO Llamadas al sistema Programas del sistema El núcleo o kernel Modelos de diseño del SO

Más detalles

GLOSARIO DE TÉRMINOS

GLOSARIO DE TÉRMINOS MINISTERIO DE EDUCACIÓN, CULTURA Y DEPORTE SECRETARÍA DE ESTADO DE EDUCACIÓN, FORMACIÓN PROFESIONAL Y UNIVERSIDADES DIRECCIÓN GENERAL DE FORMACIÓN PROFESIONAL INSTITUTO NACIONAL DE LAS CUALIFICACIONES

Más detalles

Microsoft Office 2010 Illustrated. Tipos de Software

Microsoft Office 2010 Illustrated. Tipos de Software Microsoft Office 2010 Illustrated Tipos de Software SOFTWARE Conjunto de instrucciones que le indican a la computadora que hacer. Existen tres tipos de software: Sofware de Aplicacion Sofware de Programacion

Más detalles

Sistemas Operativos Práctica 3

Sistemas Operativos Práctica 3 Sistemas Operativos Práctica 3 Ing. Andrés Bustamante afbustamanteg@unal.edu.co Ingeniería de Sistemas Facultad de Ingeniería Universidad de la Amazonia 2009 1. Objetivo El objetivo de la práctica es que

Más detalles