AMZI! PROLOG. Inteligencia Artificial. Componentes básicas. Componentes adicionales. Listener. Componentes y Archivos

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

Download "AMZI! PROLOG. Inteligencia Artificial. Componentes básicas. Componentes adicionales. Listener. Componentes y Archivos"

Transcripción

1 AMZI! PROLOG Inteligencia Artificial AMZI! PROLOG Proyectos de Cursado 2º cuatrimestre 2004 Amzi! Prolog + Logic Server consiste de componentes básicas para distintas plataformas junto con componentes adicionales que dependen de cada plataforma Resultado: aplicaciones Prolog independientes o embebidas Ia Componentes básicas Logic Server: máquina virtual interpreta código Prolog Logic Server Application Program Interface (API) interface para integrar Prolog y otros entornos Listener/Debugger: consola (?- ) Compilador Linker Runtime Componentes adicionales Language-specific Logic Server APIs - Wrappers sobre LSAPI para C/C++, Java, VB, Delphi. Database support Interface para base de datos externas Internet tools otras... Ia Ia Componentes y Archivos Listener Listener/Debugger *.PRO Código Fuente Compilador Linker *.PLM *.XPL Código Compilado Módulo ensamblado Runtime Ejecución *.PPJ Proyecto Ia Código fuente (ej1.pro) Listener (Consola) Para debugging y corrección de programas Item Listener Opciones para abrir, cerrar la consola, (re)consultar archivos, (des)activar herramienta de debugging 6 1

2 Ejemplo 1 Debugger member(x, [X Xs]). member(x, [Y Ys]):- member(x,ys). length([ ],0). length([x Xs], N):- length(xs, Ns), N is Ns+1. Ia Ia Debugging *.PRO VS *.PLM Predicados para debugging buginit/1 buginit/0 abre un archivo donde volcar información de debugging. bug/1 -?/1: para trazar una meta bugclose/0 cierra el archivo de debugging.... Predicados para logging Openlog/1, writelog/1, nllog/0...?- consult (ej1).?- reconsult.?- consult(ej1)....?- consult(ej1).?- load(ej2). (ej1.pro: código fuente) % OJO! (ej2.plm: código compilado) Ia Ia Interpretado VS Compilado Proyectos (1) *.pro código fuente Se interpretan (dinámicamente) Ejecución + lenta Modificación dinámica de código?- consult (archivopro) Debugger SI *.plm código compilado Código compilado es estático Ejecución + rápida Modificación dinámica de código con restricciones?- load (archivoplm) Debugger NO Los proyectos proporcionan una forma fácil de organizar el desarrollo de aplicaciones que están compuestas por varios archivos y/o librerías Ia Ia

3 Proyectos (2) Archivo XPL: módulo resultante de ensamblar todos los archivos que componen el proyecto Directorio del proyecto Archivos del proyecto: todos los archivos *.pro (o *.plm) que contienen en su conjunto todo el código del programa Archivos incluidos: lista de archivos *.plm que deben incluirse en el proyecto 13 Distribución MiProyecto.xpl amzi.dll MiProyecto.exe: una copia renombrada de arun.exe Cuando Prolog está embebido en otras aplicaciones el *.exe no es necesario Ia Módulos Un módulo es una colección nombrada de predicados. Un módulo puede importar predicados de otros módulos Un módulo puede exportar predicados para que sean usados por otros módulos. Ia Módulos (2) Módulo: User Por default todos los predicados están definidos en un módulo llamado 'user' Todos los predicados en el módulo 'user' son visibles para cualquier otro módulo Módulo: System Todos los predicados pre-definidos están en el módulo especial que es visible por todos los otros módulos Ia Módulos (3) :- module(m1). :- export( [ p/0, q/1] ). :- import( M2 ). p:- r, w. q(x):- t(x), u(x). q(x):- t(y). r:- q(x), s(x). :- end_module(m1). Ia append??- append ( [a,b,c], [1,2,3], L ). no append/3 está definido en list.plm Hay que importar el predicado o el módulo entero?- load ( list ), import( list ). yes?- append ( [a,b,c], [1,2,3], L ). L = [a, b, c, 1, 2, 3] Ia

4 Tipos de predicados Dinámicos: sus cláusulas pueden agregarse o eliminarse dinámicamente Estáticos: son los predicados compilados Pueden coexistir predicados dinámicos y estáticos, pero... Un mismo predicado no puede ser estático y dinámico a la vez Directiva dynamic?- consult(arch1) Todos los predicados definidos en arch1.pro son dinámicos?-load(arch2) Un predicado definido en un arch2.plm puede ser dinámico si se usa la directiva :- dynamic functor/aridad Ia Ia Proyectos En general serán proyectos de programación Inteligencia Artificial Proyectos del cursado 2º cuatrimestre 2004 Se evaluará en cada caso: Funcionamiento de los programas implementados Anda o no anda para casos generales, especiales Diseño, implementación, codificación Originalidad, claridad, correctitud, documentación de código... Informe Estructura, contenido, completitud, utilidad... Ia Funcionamiento de los programas Se considerará en la evaluación: -funcionamiento - las convenciones de representación y denominaciones - la facilidad de uso y testeo - el cumplimiento de los objetivos propuestos en cada proyecto Ia Diseño - Implementación Se considerará en la evaluación: - la calidad y claridad del diseño realizado (cómo se diseña la solución adoptada, ED s, etc ) - la calidad y claridad de la implementación (cómo se implementa el diseño realizado, etc ) Para que tales puntos puedan ser evaluados, deberán ser documentados en forma adecuada (ver obs. sobre informe y documentación de código) Ia

5 Informe (1) Informe (2) Puede organizarse de muchas maneras pero debe tener alguna estructura u organización interna que favorezca la lectura y el entendimiento de aquello que se quiere expresar. Algunas características de un buen informe: - Buena presentación/organización/prolijidad - Completitud / Utilidad - Buena redacción / O R T O G R A F Í A - Claridad en la expresión de conceptos Ia Algunos elementos de un informe: Título Introducción Planteo del problema Análisis / diseño / elección de soluciones Análisis/explicación de la solución implementada Convenciones adoptadas Restricciones de representación/uso Instrucciones/ejemplos de uso Conclusiones /Observaciones finales Ia Documentación del código (1) Documentación del código (2) % obtenerancenstros(+n,-la): dado N, obtiene en % LA la lista de ancestros de N obtenerancenstro(+n,-la):-... obtenerancenstro(+n,-la): El comentario NO DICE NADA que no pueda inferirse desde el nombre del predicado y sus argumentos - Ese solo comentario no alcanza. - Sin ninguna otra aclaración el comentario NO SIRVE. La documentación debe ayudar a entender el significado pretendido de cada parte del programa... entender cómo se implementa cada parte de la solución propuesta... entender el funcionamiento y a encontrar posibles causas de errores.... mantener/modificar/extender de la implementación realizada - La única forma de entender el predicado es leer/entender/adivinar/probar su implementación Ia errores y ERRORES!!! Quien corrige el proyecto... Un pequeño error puede causar que un programa no funcione Un código BIEN documentado, junto con un informe COMPLETO pueden evidenciar si el mal funcionamiento de un programa es causa de pequeños errores. En un código MAL documentado cualquier error es simplemente un error cuya causa se desconoce pero cuya consecuencia es clara: EL PROGRAMA NO FUNCIONA!!! :(lo siento) Ia no participó en su desarrollo... no tiene por qué saber todos los detalles... no puede adivinar lo que no se dice... no tiene por qué modificar el código fuente para poder probar el programa... etc. CONSEJO: ponerse en lugar de quien corrige el proyecto Ia

Inteligencia Artificial 2º cuatrimestre de 2009

Inteligencia Artificial 2º cuatrimestre de 2009 Programación en PROLOG(2) Inteligencia Artificial 2º cuatrimestre de 2009 Departamento de Ciencias e Ingeniería de la Computación Universidad Nacional del Sur Operador de corte (cut): Motivaciones Prolog

Más detalles

Operador de corte (cut): Motivaciones. Cut (!): Definición formal. Cut (!): Implicancias de la Definición. Cut (!): Ejemplo. Aplicaciones. b,!

Operador de corte (cut): Motivaciones. Cut (!): Definición formal. Cut (!): Implicancias de la Definición. Cut (!): Ejemplo. Aplicaciones. b,! Operador de corte (cut): Motivaciones Programación en PROLOG(2) Prolog es un lenguaje de programación altamente declarativo. Inteligencia Artificial 2º cuatrimestre de 2008 Departamento de Ciencias e Ingeniería

Más detalles

Operador de corte (cut): Motivaciones. Cut (!): Definición formal. Cut (!): Implicancias de la Definición. Aplicaciones. Cut (!): Ejemplo. b,!

Operador de corte (cut): Motivaciones. Cut (!): Definición formal. Cut (!): Implicancias de la Definición. Aplicaciones. Cut (!): Ejemplo. b,! Operador de corte (cut): Motivaciones Programación en PROLOG(2) Inteligencia Artificial 2º cuatrimestre de 2009 Departamento de Ciencias e Ingeniería de la Computación Universidad Nacional del Sur Prolog

Más detalles

Metodología de Programación I Tutorial de Prolog (3/3)

Metodología de Programación I Tutorial de Prolog (3/3) Metodología de Programación I Tutorial de Prolog (3/3) Dr. Alejandro Guerra-Hernández Departamento de Inteligencia Artificial Facultad de Física e Inteligencia Artificial aguerra@uv.mx http://www.uv.mx/aguerra

Más detalles

Aplicaciones Web. Aplicaciones Distribuidas

Aplicaciones Web. Aplicaciones Distribuidas Aplicaciones Web Aplicaciones Distribuidas Contenido La Web. Sitios Web vs. Aplicaciones Web. HTTP. HTML. Sesiones. Tecnologías facilitadoras. HTML Dinámico. JavaScript. 2 La Web Petición http://www.um.es/index.html

Más detalles

Universidad Nacional del Nordeste. IBM WebSphere Studio Application Developer (WSAD)

Universidad Nacional del Nordeste. IBM WebSphere Studio Application Developer (WSAD) Universidad Nacional del Nordeste IBM WebSphere Studio Application Developer (WSAD) Año o 2006 Multiplataforma Inicialmente, la Web ofrecía a una interactividad prácticamente nula (los usuarios se limitaban

Más detalles

Lenguajes de Cuarta Generación

Lenguajes 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 detalles

IFCD0111 Programación en Lenguajes Estructurados de Aplicaciones de Gestión

IFCD0111 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 detalles

Principios de Computadoras II

Principios de Computadoras II Departamento de Ingeniería Electrónica y Computadoras Ing. Ricardo Coppo Qué es una computadora? Una computadora es una máquina digital y sincrónica con capacidad de cálculo numérico y lógico controlada

Más detalles

Lenguaje de Programación

Lenguaje de Programación Introducción a C/C++() UG Introducción a C/C++() Universidad de Guanajuato Sesión 18 Introducción a C/C++() Qué es un? Un entorno de desarrollo integrado o (acrónimo en inglés de integrated development

Más detalles

Departamento de Cs. e Ingeniería de la Computación Universidad Nacional del Sur. Proyecto N 1 Cuatro en línea Primer Cuatrimestre de 2009

Departamento de Cs. e Ingeniería de la Computación Universidad Nacional del Sur. Proyecto N 1 Cuatro en línea Primer Cuatrimestre de 2009 Departamento de Cs. e Ingeniería de la Computación Universidad Nacional del Sur Introducción Lógica para Ciencias de la Computación Proyecto N 1 Cuatro en línea Primer Cuatrimestre de 2009 Cuatro en línea

Más detalles

Computación Conociendo la herramienta de cálculo. La Computadora

Computación Conociendo la herramienta de cálculo. La Computadora Computación 1-2017 - Conociendo la herramienta de cálculo La Computadora Sistemas Operativos cómo funcionan? Esquema de relaciones: aplicaciones SO hardware A1 A2 Aplicaciones del usuario An Sistema Operativo

Más detalles

Introducción a la programación en Fortran

Introducción a la programación en Fortran Introducción a la programación en Fortran Santiago de Mello Modelización numérica de la atmósfera Departamento de ciencias de la atmósfera Universidad de la República, Uruguay. Agosto de 2017 Santiago

Más detalles

LABORATORIO DE GESTIÓN DE REDES (I)

LABORATORIO DE GESTIÓN DE REDES (I) UNIVERSIDADE DA CORUÑA Departamento de Tecnoloxías da Información e as Comunicacións LABORATORIO DE GESTIÓN DE REDES (I) 1. PRESENTACIÓN El laboratorio de Gestión de Redes constará de un conjunto de prácticas

Más detalles

Lenguajes. Ciclo de desarrollo. Cód. Máquina Lenguajes alto nivel Lenguaje ensamblador 6-2. Introducción a los microprocesadores IIE FI - UDELAR

Lenguajes. Ciclo de desarrollo. Cód. Máquina Lenguajes alto nivel Lenguaje ensamblador 6-2. Introducción a los microprocesadores IIE FI - UDELAR 6-1 Lenguajes Cód. Máquina Lenguajes alto nivel Lenguaje ensamblador Ciclo de desarrollo 6-2 Nivel de abstracción bajo ceros y unos. Es lo único que entiende el procesador. Objetivo: código de máquina

Más detalles

Programació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 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 detalles

Samsung Tech Ins.tute - UPM DESARROLLO DE APLICACIONES EN ANDROID. Mayo Abraham Gu.érrez Rodríguez. Abraham Gu.

Samsung Tech Ins.tute - UPM DESARROLLO DE APLICACIONES EN ANDROID. Mayo Abraham Gu.érrez Rodríguez. Abraham Gu. Samsung Tech Ins.tute - UPM Mayo 2014 DESARROLLO DE APLICACIONES EN ANDROID Abraham Gu.érrez Rodríguez Mayo 2014 1 Abraham Gu.érrez Rodríguez Mayo 2014 UPM 2014 2 1 Android ES: Una plataforma de desarrollo

Más detalles

Guía para la Realización del Trabajo Práctico Período Lectivo 2016/2017

Guía para la Realización del Trabajo Práctico Período Lectivo 2016/2017 Universidad Tecnológica Nacional Facultad Regional La Plata Departamento de Ingeniería en Sistemas de Información Cátedra de Internetworking Período Lectivo 2016/2017 Contenidos 1. INTRODUCCIÓN... 2 2.

Más detalles

Programación en lenguajes estructurados de aplicaciones de gestión. Código: J62.13 Nivel: 3

Programación en lenguajes estructurados de aplicaciones de gestión. Código: J62.13 Nivel: 3 Denominación: Programación en lenguajes estructurados de aplicaciones de gestión Código: J62.13 Nivel: 3 Sector: Familia: Programación informática, consultoría de informática y actividades conexas Tecnología

Más detalles

Lenguajes de Programación Programación funcional

Lenguajes de Programación Programación funcional Lenguajes de Programación Programación funcional Roberto Bonvallet Departamento de Informática Universidad Técnica Federico Santa María Concepto de función En el paradigma imperativo: Una función es una

Más detalles

Congreso Latinoamericano de Educación Superior LATINOAMERICA EDUCA. 5. Razones para aprender Python como primer lenguaje de programación.

Congreso Latinoamericano de Educación Superior LATINOAMERICA EDUCA. 5. Razones para aprender Python como primer lenguaje de programación. Congreso Latinoamericano de Educación Superior LATINOAMERICA EDUCA Expositor: Ing. Cynthia Lorena Corso. Temario de Exposición.Lenguaje Python 1. Orígenes. 2. Características. 3. Ventajas. 4. Librerías

Más detalles

Tema 04: Lenguajes de programación y el lenguaje C

Tema 04: Lenguajes de programación y el lenguaje C Tema 04: Lenguajes de programación y el lenguaje C M. en C. Edgardo Adrián Franco Martínez http://www.eafranco.com edfrancom@ipn.mx @edfrancom edgardoadrianfrancom Estructuras de datos (Prof. Edgardo A.

Más detalles

Introducción a Java. Dr. (c) Noé Alejandro Castro Sánchez

Introducción a Java. Dr. (c) Noé Alejandro Castro Sánchez Introducción a Java Dr. (c) Noé Alejandro Castro Sánchez Programas Java Applets Pueden correr en navegadores Web Agregan funcionalidad a páginas Web Se llega a restringir su funcionalidad (e. g., no pueden:

Más detalles

GLOSARIO DE TÉRMINOS DE PROGRAMACIÓN

GLOSARIO DE TÉRMINOS DE PROGRAMACIÓN GLOSARIO DE TÉRMINOS DE PROGRAMACIÓN ASCII (Código): Las computadoras solamente entienden números. El código ASCII es una representación numérica de un carácter como a o @, y muchos otros. Como otros códigos

Más detalles

TEMA 3: El proceso de compilación, del código fuente al código máquina

TEMA 3: El proceso de compilación, del código fuente al código máquina TEMA 3: El proceso de compilación, del código fuente al código máquina 3.1 Fase de compilación y linkado (link, montado o enlace) Un programa escrito en un lenguaje de alto nivel, no puede ser ejecutado

Más detalles

Páginas WEB Estáticas

Páginas WEB Estáticas Páginas WEB Estáticas Páginas WEB Estáticas Páginas WEB Estáticas Limitaciones Páginas Estáticas Limitaciones Páginas Estáticas No permite personalizar página WEB Seguridad Código Abierto Limitaciones

Más detalles

Compiladores e intérpretes Introducción

Compiladores e intérpretes Introducción Introducción Profesor: Eridan Otto Introducción Perspectiva histórica Motivación Definiciones Componentes y fases de un compilador 1 Introducción Definiciónes básicas Traductor: desde un punto de vista

Más detalles

IMPLANTACIÓN DE APLICACIONES WEB

IMPLANTACIÓN DE APLICACIONES WEB Resultados de aprendizaje y criterios de evaluación: 1. Prepara el entorno de desarrollo y los servidores de aplicaciones Web instalando e integrando las funcionalidades necesarias. a) Se ha identificado

Más detalles

Lenguaje Orientado por Objetos Simple, Poderoso y Fácil de aprender Robusto Interactivo Arquitectura neutral Interpretado y de alto desempeño

Lenguaje Orientado por Objetos Simple, Poderoso y Fácil de aprender Robusto Interactivo Arquitectura neutral Interpretado y de alto desempeño Programación Orientada a Objetos Introducción a Java Angela Carrillo Ramos Java: Lenguaje de Programación Por qué surge un lenguaje? Para adaptarse a los cambios de entorno y usos: Independencia de la

Más detalles

Paradigmas de lenguajes de programación. Introducción a la programación imperativa. Lenguaje C. Programación imperativa

Paradigmas de lenguajes de programación. Introducción a la programación imperativa. Lenguaje C. Programación imperativa Paradigmas de lenguajes de programación Introducción a la programación imperativa Algoritmos y Estructuras de Datos I Paradigma: Definición del modo en el que se especifica el cómputo (que luego es implementado

Más detalles

Curso Fundamentos de Programación en Java

Curso Fundamentos de Programación en Java Curso Fundamentos de Programación en Java Ing. Giovanny Moncayo gmoncayo@fing.uce.edu.ec giovanny.moncayo@gmail.com CAPÍTULO 1 INTRODUCCIÓN 095 026 736 081 869 725 En esta presentación Computadoras Sistemas

Más detalles

Esta obra está bajo una licencia de Creative Commons. Autor: Jorge Sánchez Asenjo (año 2005)

Esta obra está bajo una licencia de Creative Commons. Autor: Jorge Sánchez Asenjo (año 2005) Esta obra está bajo una licencia de Creative Commons. Autor: Jorge Sánchez Asenjo (año 2005) http://www.jorgesanchez.net email:info@jorgesanchez.net Esta obra está bajo una licencia de Reconocimiento-NoComercial-

Más detalles

Oracle Certified Associate, Java SE 8 Programmer

Oracle Certified Associate, Java SE 8 Programmer J A V A S E 8 Información del examen: Número de examen: 1Z0-808. Certificación Asociada: Oracle Certified Associate, Java SE 8 Programmer I Versión del producto: Java SE 8 Duración: 150 minutes Número

Más detalles

El Compilador GNU para C: GCC PROGRAMACIÓN I OTOÑO DE 2018 DR. MARIO ROSSAINZ LÓPEZ

El Compilador GNU para C: GCC PROGRAMACIÓN I OTOÑO DE 2018 DR. MARIO ROSSAINZ LÓPEZ El Compilador GNU para C: GCC PROGRAMACIÓN I OTOÑO DE 2018 DR. MARIO ROSSAINZ LÓPEZ El Compilador GCC GCC es un compilador originario del proyecto GNU que se utiliza para compilar programas escritos en

Más detalles

GCC para plataforma Windows

GCC para plataforma Windows GCC para plataforma Windows LINKS para bajar las herramientas GCC para Windows, disponible en: http://sourceforge.net/projects/mingw/ Editor de texto, disponible en http://www.editpadpro.com/. Este editor

Más detalles

Módulo 1 Introducción a SAP y Conceptos Fundacionales de ABAP

Módulo 1 Introducción a SAP y Conceptos Fundacionales de ABAP Módulo 1 Introducción a SAP y Conceptos Fundacionales de ABAP Unidad 1: Introducción a SAP y al Sistema SAP R/3 Introducción. Concepto de ERP. Principales ERPs. SAP R/3. Historia. Visión General. Arquitectura

Más detalles

Universidad Carlos III de Madrid Dpto. de Ingeniería Telemática

Universidad Carlos III de Madrid Dpto. de Ingeniería Telemática ÏT Universidad Carlos III de Madrid Dpto. de Ingeniería Telemática LABORATORIO DE TELEMATICA Guia de Instalación del API NEPAL Prof. Dr. José Ignacio Moreno Novella Ingeniería de Telecomunicación. 3 er

Más detalles

Introducción a Java LSUB. 30 de enero de 2013 GSYC

Introducción a Java LSUB. 30 de enero de 2013 GSYC Introducción a Java LSUB GSYC 30 de enero de 2013 (cc) 2013 Laboratorio de Sistemas, Algunos derechos reservados. Este trabajo se entrega bajo la licencia Creative Commons Reconocimiento - NoComercial

Más detalles

FUNDAMENTOS DE PROGRAMACIÓN. Algoritmos y Programas

FUNDAMENTOS DE PROGRAMACIÓN. Algoritmos y Programas FUNDAMENTOS DE PROGRAMACIÓN Algoritmos y Programas Dato La palabra proviene del latín datum, forma del verbo dare dar, que significa Lo que es dado Representación de una información de manera adecuada

Más detalles

desarrollo de Visual El entorno de Studio Grupo 3 POOHV

desarrollo de Visual El entorno de Studio Grupo 3 POOHV El entorno de desarrollo de Visual Studio Grupo 3 POOHV Autores De La Rosa, Damian Falkensteiner, Alex Hormigo, Alberto J. Martínez, Pedro Morales, Miriam Ortiz, Carmen Rivera, Fº Javier Verd, Pablo Índice

Más detalles

Definición Es una directiva using que ayuda al compilador a localizar una clase que se usa en la aplicación.

Definición Es una directiva using que ayuda al compilador a localizar una clase que se usa en la aplicación. Capitulo 3 Introducción a las aplicaciones de C# Resumen: Item using System; espacios de nombres: Las palabras clave estilo de mayúsculas/minúsculas Pascal public class Bienvenido1 Definición Es una directiva

Más detalles

Unidad III: Introducción a la Programación

Unidad III: Introducción a la Programación Unidad III: Introducción a la Programación 3.1 Características del lenguaje de programación Un lenguaje de programación es un idioma artificial diseñado para expresar procesos que pueden ser llevadas a

Más detalles

04 Como se crea un programa ejecutable de un lenguaje compilado Compiladores - Profr. Edgardo Adrián Franco Martínez

04 Como se crea un programa ejecutable de un lenguaje compilado Compiladores - Profr. Edgardo Adrián Franco Martínez 2 Contenido Compilador Compilación Generación de código ejecutable Generación de un código ejecutable de C/C++ Preprocesado Compilador Ensamblador Enlazador Opciones útiles del compilador gcc 3 Definición

Más detalles

Plug-in de Eclipse para un Sistema Prolog de código abierto

Plug-in de Eclipse para un Sistema Prolog de código abierto Plug-in de Eclipse para un Sistema Prolog de código abierto Juan Angel Vanrell Claudio Vaucheret Departamento de Ciencias de La Computación Facultad de Economía Universidad Nacional del Comahue email:

Más detalles

Fundamentos de Informática

Fundamentos de Informática Fundamentos de Informática Grado en Información y Documentación Tema 4 Introducción a la programación 1 Contenidos Introducción: Programas e instrucciones. Representación de instrucciones. Tipos de instrucciones.

Más detalles

Programación de Ordenadores

Programación de Ordenadores Programación de Ordenadores Ingeniería Química David Pelta Depto de Ciencias de la Computación e I.A. Universidad de Granada Índice Resolución de Problemas con Ordenadores Algoritmo Metodología de la programación

Más detalles

TRABAJO PRACTICO Nº 1 Traductor ASCII / BASE64

TRABAJO PRACTICO Nº 1 Traductor ASCII / BASE64 TRABAJO PRACTICO Nº 1 Traductor ASCII / BASE64 1) Objetivo del T.P.: El objetivo del presente trabajo consiste en la realización de un aplicativo en modo consola que convierta un texto recibido por stdin

Más detalles

Computación Avanzada. Ing. Daniel Capriles M.

Computación Avanzada. Ing. Daniel Capriles M. Computación Avanzada. Ing. Daniel Capriles M. Es un modelo que engloba a ciertos lenguajes que comparten elementos estructurales o metodológicos similares. Según Robert Floyd quien habló por primera vez

Más detalles

INSTITUCIÓN EDUCATIVA SAN CRISTÓBAL

INSTITUCIÓN EDUCATIVA SAN CRISTÓBAL INSTITUCIÓN EDUCATIVA SAN CRISTÓBAL MEDIA TÉCNICA EN PROGRAMACIÓN DE SOFTWARE TEMA: LOS LENGUAJES DE PROGRAMACIÓN Profesora: Beatriz Elena Herrera Legarda Qué es una computadora? Computadora electrónica

Más detalles

Implementación de Componentes

Implementació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 detalles

Herramientas de Desarrollo en Informática (Especialización en Telemática) Ing. Grabiel Guzmán

Herramientas de Desarrollo en Informática (Especialización en Telemática) Ing. Grabiel Guzmán Ing. Grabiel Guzmán Tabla de contenidos: 1.- Que es PYTHON? 2.- Un poco de historia 3.- Principales Características 4.- Instalación (Linux) 5.- Editores para Python 6.- Entorno integrado de desarrollo

Más detalles

Modelo Dinámico del Diseño del Software y Representación en UML. UNIDAD 9 Análisis y Diseño de Sistemas de Información

Modelo Dinámico del Diseño del Software y Representación en UML. UNIDAD 9 Análisis y Diseño de Sistemas de Información Modelo Dinámico del Diseño del Software y Representación en UML UNIDAD 9 Análisis y Diseño de Sistemas de Información El Modelo Dinámico El objetivo del modelo Dinámico es presentar o describir el comportamiento

Más detalles

Es un lenguaje estructurado, tiene una abundante cantidad de operadores y tipos de datos.

Es un lenguaje estructurado, tiene una abundante cantidad de operadores y tipos de datos. Lenguaje C Un poco de historia C es un lenguaje de propósito general, es decir, se pueden desarrollar aplicaciones de diversas áreas. Dentro de sus principales características podemos mencionar que: Es

Más detalles

Tema 2 Introducción a la Programación en C.

Tema 2 Introducción a la Programación en C. Tema 2 Introducción a la Programación en C. Contenidos 1. Conceptos Básicos 1.1 Definiciones. 1.2 El Proceso de Desarrollo de Software. 2. Lenguajes de Programación. 2.1 Definición y Tipos de Lenguajes

Más detalles

Programación I.

Programación I. Programación I toni.navarrete@upf.edu jesus.ibanez@upf.edu Profesores teoría Toni Navarrete e-mail: despacho: toni.navarrete@upf.edu 371 Jesús Ibáñez e-mail: despacho: jesus.ibanez@upf.edu 381 Introducción

Más detalles

Administración Base de Datos Semana 01

Administración Base de Datos Semana 01 Administración Base de Datos Semana 01 Prof. Juan Sánchez Introducción a la Arquitectura Oracle Arquitectura de base de datos ORACLE. Instancia y base de datos Entorno de desarrollo: ISQLPlus, SQLPlus

Más detalles

Guía para la Realización del Trabajo Práctico Período Lectivo 2003/2004

Guía para la Realización del Trabajo Práctico Período Lectivo 2003/2004 Universidad Tecnológica Nacional Facultad Regional La Plata Departamento de Ingeniería en Sistemas de Información Cátedra de Internetworking Período Lectivo 2003/2004 Contenidos 1. INTRODUCCIÓN... 2 2.

Más detalles

Prácticas de Lenguajes de Programación (Java) Ingeniería Informática Curso Práctica 0 Universitat de València

Prácticas de Lenguajes de Programación (Java) Ingeniería Informática Curso Práctica 0 Universitat de València Índice 1. Introducción...1 1.1 Qué vamos a hacer durante 5 prácticas?...1 1.2 Qué vamos a utilizar?...1 1.3 Con qué información contaremos para la realización de las prácticas?...1 2. Qué vamos a ver en

Más detalles

Accelerating Information Technology Innovation

Accelerating Information Technology Innovation Accelerating Information Technology Innovation http://aiti.mit.edu Cali, Colombia Verano 2012 Lección 1 Introducción a Java Agenda Qué es lo que hace Java especial? Ventajas y Desventajas de usar Java.

Más detalles

1 Introducción a los algoritmos y a la programación de computadoras... 1

1 Introducción a los algoritmos y a la programación de computadoras... 1 Contenido - IX Contenido 1 Introducción a los algoritmos y a la programación de computadoras... 1 1.1 Introducción... 2 1.2 Concepto de algoritmo... 2 1.2.1 Definición de algoritmo y problema... 2 1.2.2

Más detalles

Concepto de Modelo de Datos. Introducción a las Bases de Datos Tema 3

Concepto de Modelo de Datos. Introducción a las Bases de Datos Tema 3 Concepto de Modelo de Datos Introducción a las Bases de Datos Tema 3 Índice 1. Modelo Vs. Esquema 2. Clasificación de los Modelos de Datos 3. Elementos de un Modelo de Datos 4. Los Modelos de Datos en

Más detalles

Cuales son los 6 lenguajes de programacion mas usados actualmente. Cuales son los 6 lenguajes de programación mas usados actualmente.

Cuales son los 6 lenguajes de programacion mas usados actualmente. Cuales son los 6 lenguajes de programación mas usados actualmente. Cuales son los 6 lenguajes de programacion mas usados actualmente Cuales son los 6 lenguajes de programación mas usados actualmente. Java Es un lenguaje de programación con el cual podemos realizar cualquier

Más detalles

Escuela Superior de Huejutla

Escuela Superior de Huejutla Escuela Superior de Huejutla Área Académica: Ciencias Computacionales Unidad I: Conceptos de Orientación a Objetos Tema: Lenguajes de Programación Orientada a Objetos Profesor: E.T.E. Elizabeth Hernández

Más detalles

Control del Documento

Control del Documento Control del Documento Proyecto [Nombre del Proyecto al que se refiere este documento] Título Arquitectura del Sistema [v1.1.1 al 1 de enero de 2007.] Generado por : [Fulanito de Tal y Menganito de Cual.]

Más detalles

Planificaciones Algoritmos y Programación I. Docente responsable: CARDOZO MARTIN MIGUEL. 1 de 7

Planificaciones Algoritmos y Programación I. Docente responsable: CARDOZO MARTIN MIGUEL. 1 de 7 Planificaciones 7502 - Algoritmos y Programación I Docente responsable: CARDOZO MARTIN MIGUEL 1 de 7 OBJETIVOS Capacitar al alumno en el diseño y programación documentados de algoritmos y en la elección

Más detalles

Para cada Instrucción del µp hay un Mnemónico. Existen casi tantos lenguajes ensamblador como µps.

Para cada Instrucción del µp hay un Mnemónico. Existen casi tantos lenguajes ensamblador como µps. 7-1 Para cada Instrucción del µp hay un Mnemónico Ej: 01 000 001 LD B, C Existen casi tantos lenguajes ensamblador como µps. Ejemplo: LD A, (OPER1) LD B, A LD A, (OPER2) ADD A, B LD (SUMA), A Qué son OPER1,

Más detalles

Convenciones de código para el lenguaje de programación JAVA 1

Convenciones de código para el lenguaje de programación JAVA 1 Convenciones de código para el lenguaje de programación JAVA 1 1. Introducción 1.1. Por qué convenciones de código Las convenciones de código son importantes para los programadores por muchas razones:

Más detalles

Tipos abstractos. Taller de Álgebra I. Segundo cuatrimestre de 2013

Tipos abstractos. Taller de Álgebra I. Segundo cuatrimestre de 2013 Tipos abstractos Taller de Álgebra I Segundo cuatrimestre de 2013 Acerca de los tipos algebraicos 1 Su forma se declara expĺıcitamente a través de los constructores. 2 Toda expresión del tipo representa

Más detalles

Presentación del Curso Presencial. Programación en Java Nivel Básico

Presentació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 detalles

RMI. Aplicaciones Distribuidas

RMI. Aplicaciones Distribuidas RMI Aplicaciones Distribuidas Contenido Objetos Distribuidos y RMI. Interface Remota. Clase Implementación. Referencias Remotas. Registro RMI. Paso de parámetros. Descarga dinámica de código. Desarrollo

Más detalles

Microsoft SQL Server 2008 Instalación y Configuración

Microsoft SQL Server 2008 Instalación y Configuración SQL001e Microsoft SQL Server 2008 Instalación y Configuración Fabricante: Microsoft Grupo: Bases de Datos Subgrupo: Microsoft SQL Server 2008 Formación: elearning Horas: 165 Introducción SQL Server 2008

Más detalles

Índice. 5. La Infraestructura Cloud de Microsoft...27 El Centro de Datos Definido por Software Plataforma Cloud de Microsoft...

Índice. 5. La Infraestructura Cloud de Microsoft...27 El Centro de Datos Definido por Software Plataforma Cloud de Microsoft... Índice 7 Índice Introducción...13 Capítulo I Novedades de Microsoft Windows Server 2016...15 1. Introducción...15 Requisitos... 16 2. Evolución desde Server 2008 a Windows Server 2016...16 3. Roles y Características

Más detalles

2.9 Práctica simulada - Crear una base de datos en blanco

2.9 Práctica simulada - Crear una base de datos en blanco Curso de Access 2007 Avanzado 1 Introducción a Microsoft Access 1.1 Qué es una base de datos 1.2 Componentes de una base de datos 1.3 Tablas, registros y campos 1.4 Entrar en Microsoft Access 1.5 Salir

Más detalles

INTRODUCCIóN A LA PROGRAMACIóN APUNTES DE JAVA APUNTES DE JAVA

INTRODUCCIóN A LA PROGRAMACIóN APUNTES DE JAVA APUNTES DE JAVA APUNTES DE JAVA FUNCIONAMIENTO DE UN PROGRAMA Assembler Ensamblador Ejecuta Programador Programa fuente BASIC Interprete Ejecuta C, C++, Pascal Compilador Compila Ejecuta Programa fuente Programa Objeto

Más detalles

Tecnologías de Desarrollo Web I N G. E N R I Q U E M A R T E L O L Ó P E Z U N I V E R S I D A D G E R A R D O B A R R I O S

Tecnologías de Desarrollo Web I N G. E N R I Q U E M A R T E L O L Ó P E Z U N I V E R S I D A D G E R A R D O B A R R I O S Tecnologías de Desarrollo Web I N G. E N R I Q U E M A R T E L O L Ó P E Z U N I V E R S I D A D G E R A R D O B A R R I O S Arquitectura Web Básica Arquitectura Web Contenido Estático Arquitectura Web

Más detalles

Programación con Java Básico

Programación con Java Básico Programa de Capacitación en Cómputo Semestre 2016-1 Programación con Java Básico Instructor: M. C. Martha Angélica Nakayama Cervantes INFORMACIÓN GENERAL En el presente curso se dará explicaciones, ejemplos,

Más detalles

Tema 1. Introducción

Tema 1. Introducción Departamento de Tecnologías de la Información Tema 1 Introducción Ciencias de la Computación e Inteligencia Artificial Índice 1.1 Conceptos 1.2 Un poco de historia 1.3 Estructura de un compilador 1.4 Teoría

Más detalles

METODOS NUMERICOS CATEDRA 0 2. Ingeniería Civil ING.CRISTIANCASTROP. Facultad de Ingeniería de Minas, Geología y Civil

METODOS NUMERICOS CATEDRA 0 2. Ingeniería Civil ING.CRISTIANCASTROP. Facultad de Ingeniería de Minas, Geología y Civil CATEDRA 0 2 Facultad de Ingeniería de Minas, Geología y Civil Departamento académico de ingeniería de minas y civil METODOS NUMERICOS Ingeniería Civil ING.CRISTIANCASTROP. Capitulo II Herramientas de Cálculo

Más detalles

APLICACIONES WEB J2EE - JSP

APLICACIONES WEB J2EE - JSP APLICACIONES WEB J2EE - JSP Objetivos Que el alumno pueda: Comprender la tecnología de los JSP Dar a conocer los principales tag de la biblioteca de JSP Brindar ejemplos concretos del uso de JSP 2 1 JAVA

Más detalles

CUP. Diseño de compiladores. Estructura del archivo CUP. Estructura del archivo CUP. Estructura del archivo CUP. Estructura del archivo CUP 20/04/2014

CUP. Diseño de compiladores. Estructura del archivo CUP. Estructura del archivo CUP. Estructura del archivo CUP. Estructura del archivo CUP 20/04/2014 CUP Diseño de compiladores CUP Cup es un generador de analizadores sintácticos LALR Recibe de entrada un archivo con la estructura de la gramática y su salida es un parser escrito en Java Manual oficial:

Más detalles

Programación de Aplicaciones de Escritorio

Programación de Aplicaciones de Escritorio ENSAMBLADOS Entorno de ejecución común de los lenguajes El proceso de ejecución de cualquier aplicación incluye los pasos siguientes: 1.- Diseñar y escribir el código fuente. 2.- Compilar el código fuente

Más detalles

Lección 2: Creando una Aplicación en Java. 1. Estructura del archivo de una clase. 3. Definiendo clases fundamentos

Lección 2: Creando una Aplicación en Java. 1. Estructura del archivo de una clase. 3. Definiendo clases fundamentos Lección 2: Creando una Aplicación en Java 1. Estructura del archivo de una clase 2. Usando una clase 3. Definiendo clases fundamentos Objetivos Conocer: La forma en la cual está se está estructurado el

Más detalles

Lógica en Ciencias de la Computación. Caso de estudio: PROLOG

Lógica en Ciencias de la Computación. Caso de estudio: PROLOG Lógica en Ciencias de la Computación. Caso de estudio: PROLOG UCAB / USB Papel de la Lógica L en Informática Formación: Menos discurso, más razonamiento Área genérica que aplica a múltiples dominios de

Más detalles

La última versión disponible cuando se redactó este manual era la 5 Beta (versión ), y sobre ella versa este manual.

La última versión disponible cuando se redactó este manual era la 5 Beta (versión ), y sobre ella versa este manual. Manual de Dev-C++ 4.9.9.2 Página 1 de 11 Introducción Dev-C++ es un IDE (entorno de desarrollo integrado) que facilita herramientas para la creación y depuración de programas en C y en C++. Además, la

Más detalles

COLEGIO DE ESTUDIOS DE POSGRADO DE LA CIUDAD DE MÉXICO

COLEGIO DE ESTUDIOS DE POSGRADO DE LA CIUDAD DE MÉXICO COLEGIO DE ESTUDIOS DE POSGRADO DE LA CIUDAD DE MÉXICO ELABORO: ALEJANDRA FUERTES FRANCISCO TEMA: LENGUAJES DE PROGRAMACIÓN INTRODUCCIÓN Un lenguaje de programación es un conjunto de instrucciones que

Más detalles

Curso Developing Microsoft SQL Server 2014 Databases (20464)

Curso Developing Microsoft SQL Server 2014 Databases (20464) Curso Developing Microsoft SQL Server 2014 Databases (20464) Programa de Estudio Curso Developing Microsoft SQL Server 2014 Databases (20464) Aprende a desarrollar bases de datos en Microsoft SQL Server

Más detalles

Tema: Programación Orientada a Objetos

Tema: Programación Orientada a Objetos Estructura de datos y Programación / Programación I Tema: Programación Orientada a Objetos Ing. Analia Méndez Ing. Raquel Zarco Año: 2012 Qué es Programación Orientada a Objetos (POO)? Es un paradigma

Más detalles

Estructuras de Datos Dinámicas: Tipo de Dato Abstracto parte I. Programación I Departamento de Informática Universidad Nacional de San Luis Argentina

Estructuras de Datos Dinámicas: Tipo de Dato Abstracto parte I. Programación I Departamento de Informática Universidad Nacional de San Luis Argentina Estructuras de Datos Dinámicas: Tipo de Dato Abstracto parte I Programación I Departamento de Informática Universidad Nacional de San Luis Argentina Progreso de la Abstracción Los diferentes niveles de

Más detalles

Experto en Diseño, Programacion y Creación Web

Experto en Diseño, Programacion y Creación Web Experto en Diseño, Programacion y Creación Web Duración: 355.00 horas Descripción El Programa de Experto en Diseño y Creación Web te ofrece un método sencillo y práctico para que puedas desarrollar tu

Más detalles

Curso de Java Introducción a la Programación I

Curso de Java Introducción a la Programación I Curso de Java Introducción a la Programación I Jaime Fernández Martín Curso INEM 02830. Programación en Java Marzo 2010 Índice 1 Sintaxis Java 2 Salida de datos 3 Entrada de datos Índice 1 Sintaxis Java

Más detalles

Curso de Java. Jaime Fernández Martín. Marzo Curso INEM Programación en Java

Curso de Java. Jaime Fernández Martín. Marzo Curso INEM Programación en Java Curso de Java Jaime Fernández Martín Curso INEM 02830. Programación en Java Marzo 2010 Índice 1 Origen y Evolución 2 Índice 1 Origen y Evolución Introducción a los computadores Orígenes Evolución Codificación,

Más detalles

Tipos Abstractos de Datos (TAD) Lección 1

Tipos Abstractos de Datos (TAD) Lección 1 Tipos Abstractos de Datos (TAD) Lección 1 Esquema Paradigmas de programación Definición de TAD Programación con TAD Ventajas de la programación con TAD Lectura recomendada: secciones 1.1 y 1.2 del libro

Más detalles

Cómo elegir Cisco IOS Software Release

Cómo elegir Cisco IOS Software Release Cómo elegir Cisco IOS Software Release Contenido Introducción Prerequisites Requisitos Componentes usados Convenciones Cómo elijo Cisco IOS Software Release? Soporte del hardware Soporte de característica

Más detalles

IMPRESIÓN Y CONECTIVIDAD

IMPRESIÓN Y CONECTIVIDAD IMPRESIÓN Y CONECTIVIDAD INFORMES PREDEFINIDOS Una amplia colección de informes predefinidos permite imprimir todos los documentos necesarios, tanto para la presentación a terceros como para la gestión

Más detalles

Desarrollo Software Gran Escala

Desarrollo Software Gran Escala Desarrollo Software Gran Escala Herramientas de Desarrollo (Parte 2: Pruebas y depuradores, Documentación) Diferentes tipos de herramientas Controladores de versión Ambientes de desarrollo Pruebas y Depuración

Más detalles

Práctica No. 6 Ejercicios en Prolog.

Práctica No. 6 Ejercicios en Prolog. Práctica No. 6 Ejercicios en Prolog. Introducción El lenguaje Prolog (Programación Lógica) puede ser visto como un lenguaje prescriptivo asi como un lenguaje descriptivo. El enfoque de Prolog es describir

Más detalles

Desarrollo Software Gran Escala

Desarrollo Software Gran Escala Desarrollo Software Gran Escala Herramientas de Desarrollo (Parte 1: Controladores de Versión, Ambientes de desarrollo) Diferentes tipos de herramientas Controladores de versión Ambientes de desarrollo

Más detalles

Manual de Instalación y Uso de RDDownloader

Manual de Instalación y Uso de RDDownloader Manual de Instalación y Uso de RDDownloader Departamento de Documentación RD Sistemas, S.A. Manual de Instalación y Uso de RDDownloader: por Departamento de Documentación RD Sistemas, S.A. publicado 20/04/2010

Más detalles

Objetivos MODULO I. HTML, XHTML,CSS

Objetivos MODULO I. HTML, XHTML,CSS DISEÑO Objetivos MODULO I. HTML, XHTML,CSS Obtener un conocimiento base sobre las tecnologías usadas en la creación de páginas web. Conocer la estructura y comandos básicos utilizados para la creación

Más detalles