Cuando el lenguaje si importa
|
|
- César del Río Soto
- hace 7 años
- Vistas:
Transcripción
1 Cuando el lenguaje si importa de software financiero J. Daniel Garcia Grupo ARCOS Universidad Carlos III de Madrid 11 de mayo de 2016 cbed J. Daniel Garcia 1/27
2 Aviso c b e d Esta obra está bajo una Licencia Creative Commons Atribución-NoComercial-SinDerivar 4.0 Internacional. Debes dar crédito en la obra en la forma especificada por el autor o licenciante. El licenciante permite copiar, distribuir y comunicar públicamente la obra. A cambio, esta obra no puede ser utilizada con fines comerciales a menos que se obtenga el permiso expreso del licenciante. El licenciante permite copiar, distribuir, transmitir y comunicar públicamente solamente copias inalteradas de la obra no obras derivadas basadas en ella. cbed J. Daniel Garcia ARCOS@UC3M (josedaniel.garcia@uc3m.es) 2/27
3 1 ARCOS@uc3m 2 Altas prestaciones en finanzas 3 4 Conclusiones cbed J. Daniel Garcia ARCOS@UC3M (josedaniel.garcia@uc3m.es) 3/27
4 Grupo ARCOS ARCOS: Grupo de Arquitectura de Computadores, Comunicaciones y Sistemas. Computación y Entrada/Salida de Altas Prestaciones. Big Data. Sistemas ciberfísicos. Modelos de programación para la mejora de aplicaciones. cbed J. Daniel Garcia ARCOS@UC3M (josedaniel.garcia@uc3m.es) 4/27
5 Grupo ARCOS ARCOS: Grupo de Arquitectura de Computadores, Comunicaciones y Sistemas. Computación y Entrada/Salida de Altas Prestaciones. Big Data. Sistemas ciberfísicos. Modelos de programación para la mejora de aplicaciones. Reengineering and Enabling Performance and power of Applications REfactoring Parallel Heterogeneous Resource-Aware Applications cbed J. Daniel Garcia ARCOS@UC3M (josedaniel.garcia@uc3m.es) 4/27
6 Altas prestaciones en finanzas 1 ARCOS@uc3m 2 Altas prestaciones en finanzas 3 4 Conclusiones cbed J. Daniel Garcia ARCOS@UC3M (josedaniel.garcia@uc3m.es) 5/27
7 Altas prestaciones en finanzas The free lunch is over Fuente: Herb Sutter. cbed J. Daniel Garcia 6/27
8 Altas prestaciones en finanzas Qué significa rendimiento? Computación de altas prestaciones: Reducir el tiempo de ejecución de una tarea. Ejemplos: Computación científica, simulaciones, análisis de datos... cbed J. Daniel Garcia 7/27
9 Altas prestaciones en finanzas Qué significa rendimiento? Computación de altas prestaciones: Reducir el tiempo de ejecución de una tarea. Ejemplos: Computación científica, simulaciones, análisis de datos... Computación de baja latencia: Minimizar el retraso entre entrada y salida. Ejemplos: Voz sobre IP, juegos online,... cbed J. Daniel Garcia ARCOS@UC3M (josedaniel.garcia@uc3m.es) 7/27
10 Altas prestaciones en finanzas Lenguajes en finanzas No hay un único lenguaje de programación. Lenguajes dinámicos frente a estáticos. Con y sin máquina virtual. Procedimientales, orientados a objetos, genéricos, funcionales,... cbed J. Daniel Garcia ARCOS@UC3M (josedaniel.garcia@uc3m.es) 8/27
11 Altas prestaciones en finanzas Lenguajes en finanzas No hay un único lenguaje de programación. Lenguajes dinámicos frente a estáticos. Con y sin máquina virtual. Procedimientales, orientados a objetos, genéricos, funcionales,... Lenguajes con alta demanda: Python: 6.8 candidatos/puesto. C++: 8.5 candidatos/puesto. C#: 10.7 candidatos/puesto. Java: 15.3 candidatos/puesto. SQL: 16.7 candidatos/puesto. HTML 5: 23.4 candidatos/puesto. Fuente: diciembre 2015 cbed J. Daniel Garcia ARCOS@UC3M (josedaniel.garcia@uc3m.es) 8/27
12 Altas prestaciones en finanzas Uso de C++ por sectores Fuente: julio 2015 cbed J. Daniel Garcia 9/27
13 Altas prestaciones en finanzas Finanzas cuantitativas Modelos matemáticos de mercados financieros. Areas de aplicación: Gestión de activos. Gestión de riesgos. Fijación de precios de derivados.... Necesidad: Altas prestaciones. cbed J. Daniel Garcia 10/27
14 Altas prestaciones en finanzas Negociación de alta frecuencia High Frequency Trading: Negociación de intercambio de valores financieros. Altamente cuantitativa y algorítmica. Posiciones mantenidas durante breves periodos. Posciones saldadas al final del día. Necesidad: Baja latencia. cbed J. Daniel Garcia ARCOS@UC3M (josedaniel.garcia@uc3m.es) 11/27
15 1 2 Altas prestaciones en finanzas 3 4 Conclusiones cbed J. Daniel Garcia ARCOS@UC3M (josedaniel.garcia@uc3m.es) 12/27
16 Gestión de memoria 3 Gestión de memoria Programación genérica Concurrencia y paralelismo cbed J. Daniel Garcia ARCOS@UC3M (josedaniel.garcia@uc3m.es) 13/27
17 Gestión de memoria Gestión de recursos C++ is my favorite garbage collected language because it generates so little garbage. Bjarne Stroustrup cbed J. Daniel Garcia 14/27
18 Gestión de memoria Memoria dinámica Gestión de memoria dinámica altamente personalizable. Co-existencia de mútliples allocators. cbed J. Daniel Garcia 15/27
19 Gestión de memoria Memoria dinámica Gestión de memoria dinámica altamente personalizable. Co-existencia de mútliples allocators. Semántica de movimiento. Eliminación eficiente de temporales. Reduce la necesidad de memoria dinámica. cbed J. Daniel Garcia 15/27
20 Gestión de memoria Memoria dinámica Gestión de memoria dinámica altamente personalizable. Co-existencia de mútliples allocators. Semántica de movimiento. Eliminación eficiente de temporales. Reduce la necesidad de memoria dinámica. smart pointers: Reducen problemas tradicionales con el uso de punteros. cbed J. Daniel Garcia 15/27
21 Programación genérica 3 Gestión de memoria Programación genérica Concurrencia y paralelismo cbed J. Daniel Garcia ARCOS@UC3M (josedaniel.garcia@uc3m.es) 16/27
22 Programación genérica Clases de polimorfismo Hay dos tipos de polimorfismo: estático y dinámico. cbed J. Daniel Garcia ARCOS@UC3M (josedaniel.garcia@uc3m.es) 17/27
23 Programación genérica Clases de polimorfismo Hay dos tipos de polimorfismo: estático y dinámico. Polimorfismo dinámico: Selección de implementación en tiempo de ejecución. Sobrecoste en tiempo de ejecución. Mecanismo: Herencia y enlace dinámico de funciones. cbed J. Daniel Garcia ARCOS@UC3M (josedaniel.garcia@uc3m.es) 17/27
24 Programación genérica Clases de polimorfismo Hay dos tipos de polimorfismo: estático y dinámico. Polimorfismo dinámico: Selección de implementación en tiempo de ejecución. Sobrecoste en tiempo de ejecución. Mecanismo: Herencia y enlace dinámico de funciones. Polimorfismo estático: Selección de implementación en tiempo de ejecución. En muchísimos casos ofrece flexibilidad suficiente sin sobrecoste. Mecanismo: Programación genérica. cbed J. Daniel Garcia ARCOS@UC3M (josedaniel.garcia@uc3m.es) 17/27
25 Programación genérica Programación genérica Permite expresar tipos y funciones de forma genérica. Abre la puerta a nuevas optimizaciones (std::sort() más rápido que qsort()). cbed J. Daniel Garcia ARCOS@UC3M (josedaniel.garcia@uc3m.es) 18/27
26 Programación genérica Programación genérica Permite expresar tipos y funciones de forma genérica. Abre la puerta a nuevas optimizaciones (std::sort() más rápido que qsort()). Permite una forma mínima de programación funcional. Simplifica funciones de orden superior (que toman funciones). Uso de expresiones lambda. cbed J. Daniel Garcia ARCOS@UC3M (josedaniel.garcia@uc3m.es) 18/27
27 STL Programación genérica Parte de la bilbioteca estándar del lenguaje. Contenedors, iteradores y algoritmos. cbed J. Daniel Garcia ARCOS@UC3M (josedaniel.garcia@uc3m.es) 19/27
28 STL Programación genérica Parte de la bilbioteca estándar del lenguaje. Contenedors, iteradores y algoritmos. Contenedores: Estructuras de datos. Iteradores: Definen secuencias de valores y permiten recorrerlas. Algoritmos: Expresados en términos de iteradores. cbed J. Daniel Garcia ARCOS@UC3M (josedaniel.garcia@uc3m.es) 19/27
29 Concurrencia y paralelismo 3 Gestión de memoria Programación genérica Concurrencia y paralelismo cbed J. Daniel Garcia ARCOS@UC3M (josedaniel.garcia@uc3m.es) 20/27
30 Concurrencia y paralelismo Concurrencia Modelo de programación multi-hilo portable. Abstracciones clásicas: thread, mutex, condition_variable. Eliminación de ruido sintáctico (ya no necesito casts). Definición de un modelo de memoria abstracto. cbed J. Daniel Garcia ARCOS@UC3M (josedaniel.garcia@uc3m.es) 21/27
31 Concurrencia y paralelismo Concurrencia Modelo de programación multi-hilo portable. Abstracciones clásicas: thread, mutex, condition_variable. Eliminación de ruido sintáctico (ya no necesito casts). Definición de un modelo de memoria abstracto. Mecanismo simplificado de transferencia entre hilos Tanto de valores como de excepciones. cbed J. Daniel Garcia ARCOS@UC3M (josedaniel.garcia@uc3m.es) 21/27
32 Concurrencia y paralelismo Concurrencia Modelo de programación multi-hilo portable. Abstracciones clásicas: thread, mutex, condition_variable. Eliminación de ruido sintáctico (ya no necesito casts). Definición de un modelo de memoria abstracto. Mecanismo simplificado de transferencia entre hilos Tanto de valores como de excepciones. Modelos de consistencia relajada de memoria. cbed J. Daniel Garcia ARCOS@UC3M (josedaniel.garcia@uc3m.es) 21/27
33 Concurrencia y paralelismo Paralelismo Mejor aprovechamiento de los recursos hardware. cbed J. Daniel Garcia ARCOS@UC3M (josedaniel.garcia@uc3m.es) 22/27
34 Concurrencia y paralelismo Paralelismo Mejor aprovechamiento de los recursos hardware. A diversos niveles. Paralelismo de datos dentro de CPU. Uso de GPU como acelerador (ej. Thrust). Paralelismo entre nodos de un clúster. cbed J. Daniel Garcia ARCOS@UC3M (josedaniel.garcia@uc3m.es) 22/27
35 Concurrencia y paralelismo Baja latencia Limitación de construcciones que afecta a la latencia. Memoria dinámica: Uso de preasignación, memory pools,... Impacto de excepciones: alternativas. cbed J. Daniel Garcia ARCOS@UC3M (josedaniel.garcia@uc3m.es) 23/27
36 Concurrencia y paralelismo Baja latencia Limitación de construcciones que afecta a la latencia. Memoria dinámica: Uso de preasignación, memory pools,... Impacto de excepciones: alternativas. Estructuras de datos libres de cerrojos. Acceso concurrente sin necesidad de sincronización bloqueante. Basadas en modelos de consistencia no secuencial. cbed J. Daniel Garcia ARCOS@UC3M (josedaniel.garcia@uc3m.es) 23/27
37 Cuando el lenguaje si importa Concurrencia y paralelismo Evolución cb e d J. Daniel Garcia ARCOS@UC3M (josedaniel.garcia@uc3m.es) 24/27
38 Cuando el lenguaje si importa Concurrencia y paralelismo Evolución cb e d J. Daniel Garcia ARCOS@UC3M (josedaniel.garcia@uc3m.es) 24/27
39 Conclusiones 1 ARCOS@uc3m 2 Altas prestaciones en finanzas 3 4 Conclusiones cbed J. Daniel Garcia ARCOS@UC3M (josedaniel.garcia@uc3m.es) 25/27
40 Conclusiones Conclusiones The free lunch is over. Mi lenguaje no puede ignorarlo. cbed J. Daniel Garcia 26/27
41 Conclusiones Conclusiones The free lunch is over. Mi lenguaje no puede ignorarlo. : Computación de altas prestaciones: Finanzas cuantitativas. Computación de baja latencia: Negociación de alta frecuencia. cbed J. Daniel Garcia ARCOS@UC3M (josedaniel.garcia@uc3m.es) 26/27
42 Conclusiones Conclusiones The free lunch is over. Mi lenguaje no puede ignorarlo. : Computación de altas prestaciones: Finanzas cuantitativas. Computación de baja latencia: Negociación de alta frecuencia. C++ altamente usado en altas prestaciones y/o baja latencia. cbed J. Daniel Garcia ARCOS@UC3M (josedaniel.garcia@uc3m.es) 26/27
43 Conclusiones Conclusiones The free lunch is over. Mi lenguaje no puede ignorarlo. : Computación de altas prestaciones: Finanzas cuantitativas. Computación de baja latencia: Negociación de alta frecuencia. C++ altamente usado en altas prestaciones y/o baja latencia. Finanzas y banca los sectores en los que más se usa C++. cbed J. Daniel Garcia ARCOS@UC3M (josedaniel.garcia@uc3m.es) 26/27
44 Conclusiones Conclusiones The free lunch is over. Mi lenguaje no puede ignorarlo. : Computación de altas prestaciones: Finanzas cuantitativas. Computación de baja latencia: Negociación de alta frecuencia. C++ altamente usado en altas prestaciones y/o baja latencia. Finanzas y banca los sectores en los que más se usa C++. Mútliples características enfocadas a mejora de prestaciones. cbed J. Daniel Garcia ARCOS@UC3M (josedaniel.garcia@uc3m.es) 26/27
45 Conclusiones Cuando el lenguaje si importa de software financiero J. Daniel Garcia Grupo ARCOS Universidad Carlos III de Madrid 11 de mayo de 2016 cbed J. Daniel Garcia 27/27
C++17. El lenguaje que sustituirá a C++11/14. J. Daniel Garcia. 24 de noviembre de Grupo ARCOS Universidad Carlos III de Madrid C++17
C++17 El lenguaje que sustituirá a C++11/14 J. Daniel Garcia Grupo ARCOS Universidad Carlos III de Madrid 24 de noviembre de 2016 cbed J. Daniel Garcia ARCOS@UC3M (josedaniel.garcia@uc3m.es) Twitter: @jdgarciauc3m
Más detallesConcurrencia en C++ moderno
Concurrencia en C++ moderno codemotion 2014 J. Daniel Garcia Grupo ARCOS Universidad Carlos III de Madrid 21 de noviembre de 2014 cbed J. Daniel Garcia ARCOS@UC3M (josedaniel.garcia@uc3m.es @usingstdcpp
Más detallesQué podría ser C++17?
Qué podría ser C++17? using std::cpp 2015 J. Daniel Garcia josedaniel.garcia@uc3m.es Grupo ARCOS Universidad Carlos III de Madrid 18 de noviembre de 2015 cbed J. Daniel Garcia ARCOS@UC3M (josedaniel.garcia@uc3m.es
Más detallesProgramación basada en contratos para C++17?
Programación basada en contratos para C++17? using std::cpp 2015 J. Daniel Garcia josedaniel.garcia@uc3m.es Grupo ARCOS Universidad Carlos III de Madrid 18 de noviembre de 2015 cbed J. Daniel Garcia ARCOS@UC3M
Más detallesContenido. Prefacio Orígenes de la programación orientada a objetos... 1
Prefacio... xv 1. Orígenes de la programación orientada a objetos... 1 1.1 La crisis del software... 1 1.2 Evolución del software... 3 1.3 Introducción a la programación orientada a procedimientos... 4
Más detallesCuerpo de Profesores Técnicos de Formación Profesional
Tabla de equivalencias entre los temarios de Sistemas y Aplicaciones Informáticas de Profesores Técnicos de Formación Profesional e Informática del Cuerpo de Profesores de Enseñanza Secundaria Cuerpo de
Más detallesPROGRAMACION ORIENTADA A OBJETOS PROPÓSITO DEL CURSO
UNIVERSIDAD AUTÓNOMA DE CHIHUAHUA Clave: 08MSU0017H Clave:08USU4053W FACULTAD DE INGENIERÍA DES: Ingeniería Programa(s) Educativo(s): Ingeniería en Ciencias de la Computación Tipo de materia: Obligatoria
Más detallesPROGRAMACION ORIENTADA A OBJETOS PROPÓSITO DEL CURSO
UNIVERSIDAD AUTÓNOMA DE CHIHUAHUA Clave: 08MSU0017H Clave:08USU4053W FACULTAD DE INGENIERÍA DES: Ingeniería Programa(s) Educativo(s): Ingeniería en Ciencias de la Computación Tipo de materia: Obligatoria
Más detallesContenidos. Para el usuario. Para el programador. Para el desarrollador del sistema operativo.
Sistemas operativos Jorge Juan Chico , Julián Viejo Cortés 2011, 2014 Departamento de Tecnología Electrónica Universidad de Sevilla Usted es libre de copiar, distribuir
Más detallesAulas Pruebas de Evaluación Grados Ingeniería Informática, Ingeniería Informática + ADE y Matemáticas e Informática
Miércoles 27 de junio de 2018 105000013 Programación I 1º 9:00 167 105000352 Programación I 1º 9:00 3203 5 105000105 Programación I 1º 9:00 Bloque 3 aula 3202 24 105000141 Geometría Fractal 8º 9:00 0 105000048
Más detallesBiblioteca de recursos. Descargado desde
Biblioteca de recursos Descargado desde www.rededuca.net Informática 1. Representación y comunicación de la información. 2. Elementos funcionales de un ordenador digital. 3. Componentes, estructura y funcionamiento
Más detallesESCUELA DE INGENIERIA Informática Y Sistemas
ESCUELA DE INGENIERIA Informática Y Sistemas ASIGNATURA SISTEMAS OPERATIVOS CODIGO ST0257 SEMESTRE 2013-2 INTENSIDAD HORARIA 64 horas semestral CARACTERÍSTICAS Suficientable CRÉDITOS 4 1. JUSTIFICACIÓN
Más detallesCurso Programación Java JSE 8 desde Cero Descripción Programación Java JSE 8 desde cero Curso Programación Java JSE 8
Curso Programación Java JSE 8 desde Cero Descripción: Nuestro curso Programación Java JSE 8 desde cero ofrece el curso de este nivel más completo, sin duda, en donde aprenderás la versión actual de Java,
Más detallesEntornos de programación paralela basados en modelos/paradigmas
Program. paralela/distribuida Entornos de programación paralela basados en modelos/paradigmas Sobre la programación paralela 1 Índice Reflexiones sobre la programación paralela MapReduce Propuesta original
Más detallesIntroducción a la programación
Introducción a la programación PROGRAMACION I Grado en Matematicas Informática Programación I - 2015/2016 Introducción 1 Introducción a la programación Computador: aparato electrónico capaz de interpretar
Más detallesManual de uso. 3. Área de contenidos. Donde aparecerá el contenido correspondiente al enlace elegido.
Manual de uso La página principal del blog (http://eaddfsi.wordpress.com) se divide en tres áreas claramente diferenciadas, que se muestran en la siguiente imagen: 1 2 3 1. Cabecera. En la que aparece
Más detallesSistemas Distribuidos. Prog. Distribuida bajo Internet
Sistemas Distribuidos Prog. Distribuida bajo Internet Definición Hay muchas definiciones Básicamente, varios computadores o nodos de computación en lazados mediante una red y que comparten datos, procesamiento,
Más detallesÁREA DE FORMACIÓN BÁSICA COMÚN OBLIGATORIA Horas Teoría. Matemáticas discretas CT Programación I CT
Áreas de Formación % Área de Formación Básica Común Obligatoria 126 38 Área de Formación Básica Particular Obligatoria 135 41 Área de Formación Especializante Obligatoria 36 11 Área de Formación Especializante
Más detallesLenguajes de programación Última modificación 2008/10
Lenguajes de programación Última modificación 2008/10 La Torre de Babel (1563) - Pieter Brueghel el Viejo 2008 Güimi (http://guimi.net) Esta obra está bajo una licencia "Reconocimiento-Compartir bajo la
Más detallesMáster en Tecnologías de la Información
Máster en Tecnologías de la Información Asignaturas x concentración CONCENTRACIÓN (Módulo) Informática en la Empresa - Grupo I 33 Effective Communication in Professional Environments 4 Estrategias para
Más detallesGranularidad y latencia
Niveles de paralelismo y latencias de comunicación Niveles de paralelismo. Granularidad o tamaño de grano. Latencia de comunicación. Particionado de los programas. Empaquetado de granos. Planificación
Más detallesPLANIFICACIÓN DE LA DOCENCIA UNIVERSITARIA GUÍA DOCENTE. Introducción a la concurrencia
CENTRO UNIVERSITARIO DE TECNOLOGÍA Y ARTE DIGITAL PLANIFICACIÓN DE LA DOCENCIA UNIVERSITARIA GUÍA DOCENTE Introducción a la concurrencia 1. DATOS DE IDENTIFICACIÓN DE LA ASIGNATURA. Título: Facultad: Departamento/Instituto:
Más detallesTecnología de software para sistemas de tiempo real
1 dit UPM Tecnología de software para sistemas de tiempo real Juan Antonio de la Puente DIT/UPM Motivación Las herramientas y la tecnología de software que se usan para construir otros tipos de sistemas
Más detallesUNIVERSIDAD DE GUADALAJARA
UNIVERSIDAD DE GUADALAJARA CENTRO UNIVERSITARIO DE LOS ALTOS DIVISIÓN DE ESTUDIOS EN FORMACIONES SOCIALES LICENCIATURA: INGENIERÍA EN COMPUTACIÓN UNIDAD DE APRENDIZAJE POR OBJETIVOS PROGRAMACIÓN CONCURRENTE
Más detallesUNIVERSIDAD DE GUADALAJARA
UNIVERSIDAD DE GUADALAJARA CENTRO UNIVERSITARIO DE LOS ALTOS DIVISIÓN DE ESTUDIOS EN FORMACIONES SOCIALES LICENCIATURA: INGENIERÍA EN COMPUTACIÓN UNIDAD DE APRENDIZAJE POR OBJETIVOS ARQUITECTURA DE COMPUTADORAS
Más detallesDURACIÓN Y UBICACIÓN TEMPORAL DENTRO DEL PLAN DE ESTUDIOS
5.3.2.7 FICHA DE LA MATERIA PROGRAMACIÓN DENOMINACIÓN DE LA MATERIA PROGRAMACIÓN MÓDULO AL QUE PERTENECE CRÉDITOS ECTS 30 CARÁCTER Obligatoria DURACIÓN Y UBICACIÓN TEMPORAL DENTRO DEL PLAN DE ESTUDIOS
Más detallesDepto. Sistemas I.O. y Computación. informáticos y Computación Univ. La Laguna
Sobre el papel de la programación paralela en los nuevos planes de estudios de informática Francisco Almeida Domingo Giménez José M. Mantas Antonio M. Vidal Depto. Estadística, Depto. Informática y Depto.
Más detallesIFCD0111 Programación en Lenguajes Estructurados de Aplicaciones de Gestión
IFCD0111 Programación en Lenguajes Estructurados de Aplicaciones de Gestión 1. MÓDULO 1. MF0223_3 SISTEMAS OPERATIVOS Y APLICACIONES INFORMÁTICAS UNIDAD FORMATIVA 1. UF1465 COMPUTADORES PARA BASES DE DATOS
Más detallesPLANIFICACIÓN DE LA DOCENCIA UNIVERSITARIA GUÍA DOCENTE. Herramientas y técnicas de profiling
CENTRO UNIVERSITARIO DE TECNOLOGÍA Y ARTE DIGITAL PLANIFICACIÓN DE LA DOCENCIA UNIVERSITARIA GUÍA DOCENTE Herramientas y técnicas de profiling 1. DATOS DE IDENTIFICACIÓN DE LA ASIGNATURA. Título: Facultad:
Más detallesTEMA 2: PROGRAMACIÓN PARALELA (I)
Grupo de Arquitectura de Computadores, Comunicaciones y Sistemas ARQUITECTURA DE COMPUTADORES II AUTORES: David Expósito Singh Florin Isaila Daniel Higuero Alonso-Mardones Javier García Blas Borja Bergua
Más detallesBiblioteca de recursos. Descargado desde
Biblioteca de recursos Descargado desde www.rededuca.net Sistemas y aplicaciones informáticas 1. Representación y comunicación de la información. 2. Elementos funcionales de un ordenador digital. Arquitectura.
Más detallesPROGRAMA DE CURSO. Metodologías de Diseño y Programación. Nombre en Inglés. Design and Programming Methodologies.
Código CC3002 Nombre Nombre en Inglés PROGRAMA DE CURSO Metodologías de Diseño y Programación Design and Programming Methodologies SCT es Docentes Horas de Cátedra Horas Docencia Auxiliar Horas de Trabajo
Más detallesProgramación Orientada a Objetos GUÍA DOCENTE Curso
Programación Orientada a Objetos GUÍA DOCENTE Curso 2010-2011 Titulación: Grado en Matemáticas 701G Asignatura: Programación Orientada a Objetos 701206012 Materia: Módulo: M2 Informática Carácter: Obligatorio
Más detallesLenguajes de Cuarta Generación
Lenguajes de Cuarta Generación Diana Marcela SánchezS http://www.csi.map.es/csi/metrica3/index.html www.csi.map.es/csi/metrica3/ /metrica3/index.htmlindex.html Que es un programa? La unión de una secuencia
Más detallesUn importante problema para sistemas de la nueva generación
Un importante problema para sistemas de la nueva generación J. A. Stankovic, Misconceptions about Real-Time Computing: A Serious Problem for Next Generation Systems, IEEE Computer, October 1988. Manifestar
Más detallesESTRUCTURA DE COMPUTADORES GUÍA DOCENTE
ESTRUCTURA DE COMPUTADORES GUÍA DOCENTE OBJETIVOS Y COMPETENCIAS Con la y los ejercicios del documento relativo a esta asignatura se pretenden adquirir las competencias básicas relacionadas con la informática,
Más detallesGUÍA DEL CURSO ACADÉMICO ESCUELA UNIVERSITARIA DE INFORMÁTICA UNIVERSIDAD POLITÉCNICA DE MADRID
GUÍA DEL CURSO ACADÉMICO 2010 2011 ESCUELA UNIVERSITARIA DE INFORMÁTICA 1. Plan de estudios en Ingeniería de Computadores página 1 2. Plan de estudios en Ingeniería del Software página 3 1. PLAN DE ESTUDIOS
Más detallesGrado en Ingeniería Informática
Grado en Ingeniería Informática CENTRO RESPONSABLE: FACULTAD DE CIENCIAS RAMA: Ingeniería y Arquitectura CRÉDITOS: 240,00 DISTRIBUCIÓN DE CRÉDITOS DE LA TITULACIÓN FORMACIÓN BÁSICA: 72,00 OBLIGATORIOS:
Más detallesUNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS (Universidad del Perú, DECANA DE AMÉRICA)
UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS (Universidad del Perú, DECANA DE AMÉRICA) FACULTAD DE INGENIERIA DE SISTEMAS E INFORMATICA ESCUELA PROFESIONAL DE INGENIERÍA DE SOFTWARE 1. INFORMACIÓN GENERAL
Más detallesMención Ingeniería del Software Marcelino Cabrera Dpto. Lenguajes y Sistemas Informáticos
Mención Ingeniería del Software Marcelino Cabrera Dpto. Lenguajes y Sistemas Informáticos Desarrollar Software no es sólo programar egovernment ecommerce Faltan profesionales Actualizados Polivalentes
Más detallesTema 2.- Caracterización de la informática La informática como disciplina científica Sub-áreas de la disciplina.
Tema 2.- Caracterización de la informática 2.1. La informática como disciplina científica. 2.2. Sub-áreas de la disciplina. 2.1. La informática como disciplina científica. 2.1.1 Una definición de Informática.
Más detallesPROGRAMA DE LA ASIGNATURA. Curso académico: 2011/2012
PROGRAMA DE LA ASIGNATURA Curso académico: 2011/2012 Identificación y características de la asignatura Código Créditos ECTS 6 Fundamentos Científicos del Currículum de Informática en Enseñanza Denominación
Más detallesI - Oferta Académica Materia Carrera Plan Año Período DISEÑO Y PARADIGMAS DE LENGUAJES ING. EN COMPUT. 28/ cuatrimestre
Ministerio de Cultura y Educación Universidad Nacional de San Luis Facultad de Ciencias Físico Matemáticas y Naturales Departamento: Informatica Area: Area V: Automatas y Lenguajes (Programa del año 2015)
Más detallesProgramación en Lenguajes Estructurados de Aplicaciones de Gestión. Certificados de profesionalidad
Programación en Lenguajes Estructurados de Aplicaciones de Gestión Certificados de profesionalidad Ficha Técnica Categoría Informática y Programación Referencia 33002-1404 Precio 170.36 Euros Sinopsis
Más detallesSistemas Distribuidos. Soporte de Sistemas Operativos
Soporte de Sistemas Operativos Soporte de Sistemas Operativos Soporte de Sistemas Operativos Soporte de Sistemas Operativos Tareas principales de un SO: Administrar recursos Proveer abstracciones de los
Más detallesTEMA 6: INTRODUCCIÓN A UML
TEMA 6: INTRODUCCIÓN A UML Por qué modelamos? El modelado es una parte central de todas las actividades que conducen a la producción de un software de calidad. Como tal la ingeniería software debe basarse
Más detallesUnidad I Introducción a la programación de Sistemas. M.C. Juan Carlos Olivares Rojas
Unidad I Introducción a la programación de Sistemas M.C. Juan Carlos Olivares Rojas Agenda 1.1 Qué es y que estudia la programación de sistemas? 1.2 Herramientas desarrolladas con la teoría de programación
Más detallesHPC: Aplicaciones y Software
HPC: Aplicaciones y Software Heredado HPC: Aplicaciones y Software Fernando G. Tinetti III-LIDI, Fac. de Informática, UNLP Comisión de Inv. Científicas, Bs. As. fernando@info.unlp.edu.ar Aplicaciones y
Más detallesANEXO XVII DE LA RESOLUCION N
Hoja 1 de 7 UNIVERSIDAD NACIONAL DE CÓRDOBA Facultad de Ciencias Exactas Físicas y Naturales República Argentina Programa de: Código: Informática Carrera: Materia común Res. Nº Plan: Puntos:3.5 Escuela:
Más detallesTEMARIO DE PROFESORES TÉCNICOS DE F.P. : SISTEMAS Y APLICACIONES INFORMÁTICAS. Octubre 1997 (Publicado en el B.O.E. de 13 de Febrero de 1.
TEMARIO DE PROFESORES TÉCNICOS DE F.P. : SISTEMAS Y APLICACIONES INFORMÁTICAS. Octubre 1997 (Publicado en el B.O.E. de 13 de Febrero de 1.996) SISTEMAS Y APLICACIONES INFORMÁTICAS 1. Representación y comunicación
Más detallesConsistencia de memoria en C++
Consistencia de memoria en C++ Arquitectura de Computadores J. Daniel García Sánchez (coordinador) David Expósito Singh Javier García Blas Óscar Pérez Alonso J. Manuel Pérez Lobato Grupo ARCOS Departamento
Más detallesProgramación en C++ PROFESOR/A COORDINADOR/A: Ana María Ferreiro Ferreiro
Programación en C++ CRÉDITOS: 3 ECTS PROFESOR/A COORDINADOR/A: Ana María Ferreiro Ferreiro (ana.fferreiro@udc.es) UNIVERSIDAD DESDE LA QUE IMPARTE EL PROFESOR/A COORDINADOR/A: UDC HA DADO O VA A DAR AUTORIZACIÓN
Más detallesPLANIFICACIÓN DE LA DOCENCIA UNIVERSITARIA GUÍA DOCENTE. Programación Concurrente
CENTRO UNIVERSITARIO DE TECNOLOGÍA Y ARTE DIGITAL PLANIFICACIÓN DE LA DOCENCIA UNIVERSITARIA GUÍA DOCENTE Programación Concurrente 1. DATOS DE IDENTIFICACIÓN DE LA ASIGNATURA. Título: Facultad: Máster
Más detallesAugusta Ada Byron Mayor conocida como Ada Lovelace. A Ada se le atribuyó el papel de asistente/transcriptora de Babbage; sin embargo, hoy en día, es c
Augusta Ada Byron Mayor conocida como Ada Lovelace. A Ada se le atribuyó el papel de asistente/transcriptora de Babbage; sin embargo, hoy en día, es considerada como la madre de la programación. Ella diseñó
Más detallesPresentación del Curso Presencial. Programación Web con Java J2EE
Presentación del Curso Presencial Programación Web con Java J2EE Tabla de contenido Presentación del curso... 3 Objetivos de aprendizaje... 4 Contenidos del curso... 5 Competencias previas... 6 Recursos...
Más detallesUNIDAD II. Software del Computador. Ing. Yesika Medina Ing. Yesika Medina
UNIDAD II Software del Computador SOFTWARE Se denomina software a todos los componentes intangibles de una computadora, formados por el conjunto de programas y procedimientos necesarios para hacer posible
Más detallesPROGRAMA DE CURSO. Horas de Trabajo Personal Horas de Cátedra
PROGRAMA DE CURSO Código Nombre CC3002 Metodologías de Diseño y Programación Nombre en Inglés Design and programming methodologies SCT Unidades Docentes Horas de Cátedra Horas Docencia Auxiliar Horas de
Más detallesPLANIFICACIÓN DE LA DOCENCIA UNIVERSITARIA GUÍA DOCENTE. Técnicas avanzadas de programación
CENTRO UNIVERSITARIO DE TECNOLOGÍA Y ARTE DIGITAL PLANIFICACIÓN DE LA DOCENCIA UNIVERSITARIA GUÍA DOCENTE Técnicas avanzadas de programación 1. DATOS DE IDENTIFICACIÓN DE LA ASIGNATURA. Título: Facultad:
Más detallesProgramación de Multitareas utilizando Hilos
Programación de Multitareas utilizando Hilos Enero/2012 Programación de Multitareas utilizando Hilos Origen de los hilos como elementos necesarios en la programación de multitareas Multihilos en un solo
Más detallesIntroducción a los Sistemas de Tiempo Real Í d n i dice
Introducción a los Sistemas de Tiempo Real Sistemas de Tiempo Real http://www.vision.uji.es/~pla/ii75 i / /ii75 Índice Introducción. Ejemplos de Sistemas Empotrados. Características de un Sistema de Tiempo
Más detallesUNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS (Universidad del Perú, DECANA DE AMÉRICA)
UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS (Universidad del Perú, DECANA DE AMÉRICA) FACULTAD DE INGENIERIA DE SISTEMAS E INFORMATICA ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS 1. INFORMACIÓN GENERAL
Más detallesUNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS (Universidad del Perú, DECANA DE AMÉRICA)
UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS (Universidad del Perú, DECANA DE AMÉRICA) FACULTAD DE INGENIERIA DE SISTEMAS E INFORMATICA ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS 1. INFORMACIÓN GENERAL
Más detallesINTRODUCCION A LA PROGRAMACIÓN ORIENTADA A OBJETOS
INTRODUCCION A LA PROGRAMACIÓN ORIENTADA A OBJETOS Introducción La programación orientada a objetos es un enfoque de programación de los más populares y viene teniendo gran aceptación en el desarrollo
Más detallesUniversidad de Cantabria
Bases de Datos Pedro Corcuera Dpto. Matemática Aplicada y Ciencias de la Computación Universidad de Cantabria corcuerp@unican.es Objetivos Presentar los conceptos básicos y terminología de las bases de
Más detallesRESUMEN DE LAS MODIFICACIONES REALIZADAS EN EL APARTADO. 0 Descripción general. (Campo obligatorio, breve resumen de todos los cambios).
RESUMEN DE LAS MODIFICACIONES REALIZADAS EN EL APARTADO. 0 Descripción general. (Campo obligatorio, breve resumen de todos los cambios). Añadir la mención al título correspondiente a cada itinerario. Cambio
Más detallesLenguajes de Programación
Lenguajes de Programación Paradigmas Ma. Laura Cobo Departamento de Ciencias e Ingeniería de la Computación 2016 Prof. Ma. Laura Cobo Página 1 Lenguajes y Paradigmas Metodología de diseño esunconjuntodemétodosypautasqueguíanelproceso
Más detallesUniversidad Centroccidental Lisandro Alvarado. Decanato de Ciencias y Tecnología Departamento de Sistemas
Universidad Centroccidental Lisandro Alvarado Decanato de Ciencias y Tecnología Departamento de Sistemas PROGRAMA INSTRUCCIONAL PROGRAMA: ANALISIS DE SISTEMAS DEPARTAMENTO: SISTEMAS ASIGNATURA: INTRODUCCIÓN
Más detallesAC2 - Arquitectura de Computadores II
Unidad responsable: 270 - FIB - Facultad de Informática de Barcelona Unidad que imparte: 701 - AC - Departamento de Arquitectura de Computadores Curso: Titulación: 2016 GRADO EN INGENIERÍA INFORMÁTICA
Más detallesEntendiendo expresiones lambda en C# con Mono
Entendiendo expresiones lambda en C# con Mono Martín O. Márquez Introducción La programación imperativa es uno de los paradigmas de computación más ampliamente utilizados por la mayoría
Más detallesProcesos y Threads Procesos y Threads. Rendimiento Rendimiento (paralelismo) (paralelismo) Productividad Productividad
Procesos y Threads Procesos y Threads Procesos Procesos Threads Threads Concurrencia Concurrencia Ventajas Ventajas Modelos Modelos Información Información adicional (PCB) adicional (PCB) Preparado Preparado
Más detallesProgramación estructurada (Lenguajes de programación)
Programación estructurada (Lenguajes de programación) M. en C. Sergio Luis Pérez Pérez UAM CUAJIMALPA, MÉXICO, D. F. Trimestre 15-I. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de programación estructurada
Más detallesPARADIGMA y LENGUAJES DE PROGRAMACIÓN
CATEDRA CARRERA: PARADIGMA y LENGUAJES DE PROGRAMACIÓN LICENCIATURA EN SISTEMAS DE INFORMACION FACULTAD DE CIENCIAS EXACTAS QUIMICAS Y NATURALES UNIVERSIDAD NACIONAL DE MISIONES Año 2017 2do Cuatrimestre
Más detallesUNIVERSIDAD NACIONAL AUTONOMA DE MÉXICO INGENIERÍA EN COMPUTACIÓN
ASIGNATURA: Sistemas Operativos CARÁCTER: Obligatoria TIPO MODALIDAD: UNIVERSIDAD NACIONAL AUTONOMA DE MÉXICO FACULTAD DE ESTUDIOS SUPERIORES ARAGÓN INGENIERÍA EN COMPUTACIÓN SEXTO SEMESTRE Teórica Curso
Más detallesCARRERA DE CIECNIAS DE LA COMPUTACIÓN PROGRAMA DE ESTUDIO. Teóricos: 2 Práctico: 1 Total 3
ARQUITECTURA DE COMPUTADORES CÓDIGO Y CCO301 Total 3 Las matemática aplicada a la computación es el modelado, simulación y optimización de procesos o fenómenos, para procesos complejos, costosos, riesgosos,
Más detallesSISTEMAS EN TIEMPO REAL
SISTEMAS EN TIEMPO REAL Año académico: 2006/07 Centro: Escuela Politécnica Superior Estudios: Ingeniero Técnico en Informática de Sistemas Asignatura: Sistemas en Tiempo real Ciclo: 1º Curso: 3º Cuatrimestre:
Más detallesIntroducción a la Programación en C
Christopher Expósito-Izquierdo cexposit@ull.edu.es Airam Expósito-Márquez aexposim@ull.edu.es Israel López-Plata ilopezpl@ull.edu.es Belén Melián-Batista mbmelian@ull.edu.es José Marcos Moreno-Vega jmmoreno@ull.edu.es
Más detallesImplementación de Componentes
Implementación de Componentes Concepto Un componente es una parte no trivial, casi independiente, y reemplazable de un sistema que llena claramente una funcionalidad dentro de un contexto en una arquitectura
Más detallesCurso Programación Java JSE 7
Curso Programación Java JSE 7 Descripción: Nuestro curso Programación Java JSE 7 ofrece el curso de este nivel más completo, sin duda, en donde aprenderás la versión actual de Java, JSE 7, desde cero.
Más detallesAlgoritmos y Programación I. Curso Prof. Arturo Servetto
75.40 95.14 Algoritmos y Programación I Curso Prof. Arturo Servetto Propósitos del Curso Presentar al alumno un panorama general de la Informática a partir del concepto de algoritmo, que le sirva como
Más detallesComputadores y Comunicaciones. Tema 5: Software y sistemas operativos
Computadores y Comunicaciones Tema 5: Software y sistemas operativos Febrero, 2011 Jorge Juan Chico , Julián Viejo Cortés Departamento de Tecnología Electrónica Universidad
Más detallesCOMPUTACIÓN EN LA NUBE CON JAVA
COMPUTACIÓN EN LA NUBE CON JAVA 1. Objetivos del curso El participante adquirirá capacidades para analizar y definir los requerimientos del cliente, planificar, diseñar, implementar y mantener aplicaciones
Más detallesAfinación y Rendimiento de Bases de Datos
DIPLOMADO Afinación y Rendimiento de Bases de Datos TEMARIO DURACIÓN: 250 hrs. 1. Introducción a los Sistemas de Información y RDBMS (30 hrs.) 1. Sistemas de Información y RDBMS (30 hrs.) 1.1 Introducción
Más detallesMateria compuesta por 6 asignaturas programadas entre el 3º y el 6º semestre, tal y como se recoge a continuación en la tabla de asignaturas
5.3.2.9 FICHA DE LA MATERIA DESARROLLO DE SOFTWARE DENOMINACIÓN DE LA MATERIA DESARROLLO DE SOFTWARE MÓDULO AL QUE PERTENECE CRÉDITOS ECTS 24 DURACIÓN Y UBICACIÓN TEMPORAL DENTRO DEL PLAN DE ESTUDIOS CARÁCTER
Más detallesModelo de Aplicación de Sesión Multimedia p.1/27
Modelo de Aplicación de Sesión Multimedia Federico Montesino Pouzols Tutores: Diego R. López y Manuel Valencia Proyecto Fin de Carrera Ingeniería Informática Escuela Técnica Superior de Ingeniería Informática
Más detallesGUÍA DEL CURSO ACADÉMICO ESCUELA UNIVERSITARIA DE INFORMÁTICA UNIVERSIDAD POLITÉCNICA DE MADRID
GUÍA DEL CURSO ACADÉMICO 2011 2012 ESCUELA UNIVERSITARIA DE INFORMÁTICA 1. Plan de estudios en Ingeniería de Computadores página 1 2. Plan de estudios en Ingeniería del Software página 3 1. PLAN DE ESTUDIOS
Más detallesProgramación concurrente
23 de Marzo de 2017 Condiciones generales Docente: Hernán Melgrati (hmelgra@...) Horario: Teóricas: Jueves de 14 a 17 Prácticas: Martes de 14 a 17 Evaluaciones: Un parcial (mediados de mayo) Un trabajo
Más detallesUNIVERSIDAD DE GUADALAJARA
UNIVERSIDAD DE GUADALAJARA CENTRO UNIVERSITARIO DE LOS ALTOS DIVISIÓN DE ESTUDIOS EN FORMACIONES SOCIALES LICENCIATURA: INGENIERÍA EN COMPUTACIÓN UNIDAD DE APRENDIZAJE POR OBJETIVOS SIMULACIÓN DE SISTEMAS
Más detalles1. Computadores y programación
1. Computadores y programación Informática y computadora (RAE) Informática (Ciencia de la computación) Conjunto de conocimientos científicos y técnicos que hacen posible el tratamiento automático de la
Más detallesPresentación del Curso Presencial. Programación en Java Nivel Básico
Presentación del Curso Presencial Programación en Java Nivel Básico Tabla de contenido Presentación del curso... 3 Objetivos de aprendizaje... 6 Contenidos del curso... 7 Competencias previas... 9 Recursos...
Más detallesAnálisis arquitectural y funcional de la maquina virtual en la plataforma J2ME ÍNDICE
ÍNDICE 1. OBJETIVOS.... ERROR! MARCADOR NO 2. INTRODUCCIÓN... ERROR! MARCADOR NO 2.1. ESTRUCTURACIÓN DEL PROYECTO... ERROR! MARCADOR NO 3. INTRODUCCIÓN A LA TECNOLOGÍA JAVA: LA MAQUINA VIRTUAL... ERROR!
Más detallesIntroducción a los Sistemas Operativos
Introducción a los Sistemas Operativos Pedro Corcuera Dpto. Matemática Aplicada y Ciencias de la Computación Universidad de Cantabria corcuerp@unican.es 1 Índice General Conceptos sobre ordenadores Concepto
Más detallesTÉCNICO SUPERIOR UNIVERSITARIO EN TECNOLOGÍAS DE LA INFORMACIÓN ÁREA DESARROLLO DE SOFTWARE MULTIPLATAFORMA EN COMPETENCIAS PROFESIONALES
TÉCNICO SUPERIOR UNIVERSITARIO EN TECNOLOGÍAS DE LA INFORMACIÓN ÁREA DESARROLLO DE SOFTWARE MULTIPLATAFORMA EN COMPETENCIAS PROFESIONALES ASIGNATURA DE PROGRAMACIÓN ORIENTADA A OBJETOS 1. Competencias
Más detalles