Programación Orientada a Objetos Profr. Pedro Pablo Mayorga

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

Download "Programación Orientada a Objetos Profr. Pedro Pablo Mayorga"

Transcripción

1 Actividad 3 Historia de los paradigmas de programación Unidad 1 Paradigma de programación Un paradigma de programación representa un enfoque particular o filosofía para la construcción del software. No es mejor uno que otro sino que cada uno tiene ventajas y desventajas. También hay situaciones donde un paradigma resulta más apropiado que otro. Existen diferentes paradigmas algunos se listan a continuación: El paradigma imperativo o por procedimientos o estructurada es considerado el más común y está representado, por ejemplo, por el C o por BASIC. El paradicigma funcional está representado por la familia de lenguajes (en particular Scheme), ML o Haskell. El paradigma lógico, un ejemplo es PROLOG. El paradigma orientado a objetos. Un lenguaje completamente orientado a objetos es Smalltalk. El paradigma dirigido por Eventos. El paradigma orientado a objetos es tan potente que se ha usado para generar otros paradigmas tales como: Redes de Petri Lógica de predicados Funcional Paradigma de programación estructurada Hoy en día las aplicaciones informáticas son mucho más ambiciosas que las necesidades de programación existentes en los años 1960, principalmente debido a las aplicaciones gráficas, por lo que las técnicas de programación estructurada no son suficientes. Ello ha llevado al desarrollo de nuevas técnicas, tales como la programación orientada a objetos y el desarrollo de entornos de programación que facilitan la programación de grandes aplicaciones. A finales de los años 1960 surgió una nueva forma de programar que no solamente daba lugar a programas fiables y eficientes, sino que además estaban escritos de manera que facilitaba su comprensión posterior. El teorema del programa estructurado, demostrado por Böhm-Jacopini, demuestra que todo programa puede escribirse utilizando únicamente las tres instrucciones de control siguientes: 1

2 Secuencia Instrucción condicional. Iteración (bucle de instrucciones) con condición al principio. Solamente con estas tres estructuras se pueden escribir todos los programas y aplicaciones posibles. Si bien los lenguajes de programación tienen un mayor repertorio de estructuras de control, éstas pueden ser construidas mediante las tres básicas. Algunas de las ventajas de la programación estructurada son las siguientes: 1. Los programas son más fáciles de entender, ya que pueden ser leídos de forma secuencial, sin necesidad de hacer seguimiento a saltos de línea (GOTO) dentro de los bloques de código para entender la lógica. 2. La estructura del programa es clara, puesto que las instrucciones están más ligadas o relacionadas entre sí. 3. Reducción del esfuerzo en las pruebas. El seguimiento de los fallos o errores del programa ("debugging") se facilita debido a la estructura más visible, por lo que los errores se pueden detectar y corregir más fácilmente. 4. Reducción de los costos de mantenimiento de los programas. 5. Programas más sencillos y más rápidos (ya que es más fácil su optimización). 6. Los bloques de código son auto explicativos, lo que facilita la documentación. 7. Los GOTO se reservan para construir las instrucciones básicas. Aunque no se usan de forma directa, por estar prohibida su utilización, están incluidas implícitamente en las instrucciones de selección e iteración. 8. Un programa escrito de acuerdo a estos principios no solamente tendrá una mejor estructura sino también una excelente presentación. 9. La programación estructurada ofrece estos beneficios, pero no se la debe considerar como una panacea ya que el desarrollo de programas es, principalmente, una tarea de dedicación, esfuerzo y creatividad. Adicionalmente algunas desventajas de la programación estructurada son: 1. Se obtiene un único bloque de programa, que cuando se hace demasiado grande puede resultar problemático su manejo; esto se resuelve empleando la programación modular, 2. Definición de módulos interdependientes programados y compilados por separado (en realidad esto no es necesario, pero es recomendable para su mantenimiento y funcionalidad). Algunos de los lenguajes de programación estructurada son: C Fortran Pascal Basic 2

3 Para lenguaje C las instrucciones básicas para resolver cualquier problema son: Condicional: Permite la ejecución a partir del cumplimiento de ciertas expresiones, por ejemplo en los ejemplos mostrados abajo, si expresión es cierta, se ejecuta el conjunto de expresiones A (que generalmente se encierran entre llaves). Un segundo caso es cuando la expresión es falsa, entonces se ejecuta el conjunto de instrucciones B en lugar del bloque de las instrucciones A. o if ( expresion ) Conjunto_A o if ( expresión ) Conjunto_A Conjunto_B Iteracion: Este es un ejemplo de ciclos o repeticiones, se ejecuta el conjunto de instrucciones A mientras expr sea cierta. Para el caso del ciclo for expr1 se ejecuta una sola vez antes de evaluar a expr, mientras que expr3 se ejecuta siempre al final de cada iteración, justo después de haber ejecutado el conjunto de instrucciones A. o for ( expr1; expr ; expr3) Conjunto_A o while ( expr ) Conjunto_A o do Conjunto_A while ( expr ) Por lo general cuando se escribe código de programación secuencial no se escriben instrucciones de un lenguaje en especial por lo que se usan palabras clave por lo general que hacen uso del lenguaje matemático con toda su simbología. Para consultar simbología matemática visitar: 3

4 Ejemplo de un programa que calcula el valor de $y=x^n$ se presenta a continuación Para un caso en particular en donde x=3, n=5. Paso 1: y=1 Paso 2: no se ejecuta porque n<0 es falso Paso 6: X = 3 Paso 7: N = 5 Paso 9: Al ser N diferente de cero se ejecuta: Paso 10: Al ser No ser N par (even significa par) Paso 14: y = y*x = 1*3 = 3 Paso 15: N=N-1= 5-1=4 Paso 9: N diferente de cero es cierto Paso 10: N si es par Paso 11: X = X*X = 3*3 = 9 Paso 12: N=N/2 = 4/2 = 2 Paso 9: N diferente de cero es cierto Paso 10: N es par es cierto Paso 11: X = X*X = 9*9 = 81 Paso 12: N=N/2 = 2/2 = 1 Paso 9: N diferente de cero es cierto Paso 10: N es par es falso (ir al paso 14) Paso 14: y = y*x = 3*81 = 243 Paso 15: N=N-1 =1-1=0 Paso 9: N diferente de cero es falso (N es igual a cero): Termina el programa Pila de valores X x 3. Y N N 5. 4

5 El programa anterior programa en lenguaje C es el siguiente: float potxn(float x,int n) float y = 1.0; float X; int N; if( n < 0 ) X = 1.0 / x; N = -n; X = x; N = n; while( N!= 0 ) if( N % 2 == 0 ) X = X * X; N = N / 2; y = y * X; N = N - 1; return y; Paradigma de Programación Orientada a Objetos Para ver una completa referencia de la POO consultar las lecturas U1_1.doc y U1_2.doc. Podemos resumir que la Orientación a Objetos se basa en estas ideas: un programa es un mundo que representa un subconjunto del mundo real. La estructura del programa se simplifica en gran medida si cada una de las entidades u objetos del problema que se está modelando corresponde directamente con un objeto que se puede manipular internamente en un programa. Para el desarrollo de sistemas, la orientación a objetos es un nivel de abstracción de computadora más allá de los procedimientos y los datos. La orientación a objetos anima al desarrollador de sistemas a concentrarse en los temas importantes e ignorar el resto a la hora de la modelación. 5

6 Para el problema anterior de calcular una potencia de x, una clase sería la clase potencia con atributos base, exponente y resultado. El método sería calcular potencia. Class Potencia Decimal: base Entero: exponente Decimal: resultado Decimal: Calcular ( Decimal: base, Entero: exponente) La programación en C++ sería class Potencia private: float base; int exponente; float resultado; public: float Calcular(float x,int n) if( x == base && exponente == n) base = x; exponente = n; return resultado; ; float y = 1.0; float X; int N; if( n < 0 ) X = 1.0 / x; N = -n; X = x; N = n; while( N!=0 ) if( N % 2 == 0 ) X = X * X; N = N / 2; y = y * X; N = N - 1; return resultado=y; 6

7 Algunos de los lenguajes orientado a objetos son: C++ Java PHP Object Pascal R Python C# Ada Eiffel Algunos de los beneficios de la Programación orientada a objetos son: que encapsula los métodos y propiedades de objetos en común y eso los mantiene ordenados. Constructor: Todos los lenguajes POO consideran un método llamado constructor que se ejecuta cuando se crea una instancia de la clase, esto es muy útil porque se puede usar como preámbulo o para iniciar las propiedades y métodos de la clase, por ejemplo reservar memoria para un proceso. Destructor: Todos los lenguajes POO consideran un método llamado desstructor que se ejecuta cuando se libera la instancia de la clase, esto es muy útil porque se puede usar como para finalizar las propiedades y métodos de la clase, por ejemplo liberar la memoria reservada durante la vida del objeto. La programación es más natural porque se basa en las interacciones de los objetos en sí y no de las propiedades internas a ellos. La manutención de los programas es más sencilla porque solo se necesita arreglar códigos de la clase, sabiendo que una vez corregido el posible fallo las relaciones entre clases permanecerá inalterada y el funcionamiento del software no se verá afectado. La reutilización de código es más sencilla y natural debido a que una clase que ya está creada y probada en su total funcionamiento, se coloca en un repositorio donde puede ser usada por programas o aplicaciones futuras sin modificación alguna ahorrando tiempo de codificación y de diseño. Por ejemplo si se programa una clase que permita graficar datos en forma de barras, puntos y pastel, puede ser usada por diversos proyectos que requieran de mostrar gráficas. Una de las desventajas de la POO es que para que funcione adecuadamente es necesario un buen diseño orientado a objetos y abstraer adecuadamente las propiedades y métodos de los modelos a diseñar para que estas clases se puedan reutilizar y sean de un propósito general en la medida de que el sistema así lo requiera. 7

Estructuras de Control (y su forma en Python y en C) Clase 5 Introducción a la Computación Patricia Borensztejn

Estructuras de Control (y su forma en Python y en C) Clase 5 Introducción a la Computación Patricia Borensztejn Estructuras de Control (y su forma en Python y en C) Clase 5 Introducción a la Computación Patricia Borensztejn Estructuras de Control En el modelo de ejecución secuencial que vimos, el procesador repite:

Más detalles

Programación orientada a objetos

Programación orientada a objetos Programación orientada a objetos La programación orientada a objetos o POO (OOP según sus siglas en inglés) es un paradigma de programación que usa los objetos en sus interacciones, para diseñar aplicaciones

Más detalles

INTRODUCCION A LA PROGRAMACIÓN ORIENTADA A OBJETOS

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

Tema 2 Conceptos básicos de programación. Fundamentos de Informática

Tema 2 Conceptos básicos de programación. Fundamentos de Informática Tema 2 Conceptos básicos de programación Fundamentos de Informática Índice Metodología de la programación Programación estructurada 2 Pasos a seguir para el desarrollo de un programa (fases): Análisis

Más detalles

Introducción a la programación. Cecilia Manzino

Introducción a la programación. Cecilia Manzino Paradigmas Un paradigma es un modelo o patrón en cualquier disciplina científica. Un paradigma de programación representa un estilo de programación en cual se escriben soluciones a problemas en términos

Más detalles

Tema 03: Programación estructurada

Tema 03: Programación estructurada Tema 03: Programación estructurada M. en C. Edgardo Adrián Franco Martínez http://www.eafranco.com edfrancom@ipn.mx @edfrancom edgardoadrianfrancom Estructuras de datos (Prof. Edgardo A. Franco) 1 Contenido

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

Programación Orientada a Objetos

Programación Orientada a Objetos Universidad de Carabobo Facultad Experimental de Ciencias y Tecnología Departamento de Computación Programación Orientada a Objetos Algoritmos y Programación II Junio, 2004 Las tecnologías de objetos hoy

Más detalles

Programación Estructurada

Programación Estructurada Programación Estructurada Técnica de programación que consiste en construir programas de fácil comprensión. Es mucho más sencillo entender la codificación del programa, que se habrá hecho en diferentes

Más detalles

Informática Ingeniería en Electrónica y Automática Industrial

Informática Ingeniería en Electrónica y Automática Industrial Informática Ingeniería en Electrónica y Automática Industrial Sentencias de control en lenguaje Sentencias de control en lenguaje Introducción Sentencia if-else Sentencia switch Sentencia while Sentencia

Más detalles

Programación Orientada a Objetos

Programación Orientada a Objetos Programación Orientada a Objetos PROGRAMACIÓN ORIENTADA A OBJETOS 1 Sesión No. 1 Nombre: Programación orientada a objetos Contextualización La programación actualmente es un medio por el cual se definen

Más detalles

Modelos de Desarrollo de Programas Y Programación Concurrente Clase N 3: 3 - Paradigmas de Programación

Modelos de Desarrollo de Programas Y Programación Concurrente Clase N 3: 3 - Paradigmas de Programación 3 - Paradigmas de Programación En los inicios los lenguajes de programación imitaron y abstrajeron las operaciones de una computadora, lo cual trajo aparejado que el tipo de computadora para el cual fueron

Más detalles

Capítulo 4. Control de flujo. Continuar

Capítulo 4. Control de flujo. Continuar Capítulo 4 Control de flujo Continuar Introducción El control de flujo permite encausar a la computadora sobre la ruta que debe seguir al momento de la ejecución de un programa, para ello se apoya en las

Más detalles

INDICE Parte I Algoritmos y herramientas de programación Capitulo 1. Computadoras y lenguajes de programación Actividades de Programación Resueltas

INDICE Parte I Algoritmos y herramientas de programación Capitulo 1. Computadoras y lenguajes de programación Actividades de Programación Resueltas INDICE Prologo a la tercera edición xiii Prologo a la segunda edición xxvii Parte I Algoritmos y herramientas de programación Capitulo 1. Computadoras y lenguajes de programación 3 1.1. Organización de

Más detalles

Introducción a la Programación en C

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

Lenguajes de Programación I

Lenguajes de Programación I Lenguajes de Programación I Prof. Wilmer Pereira Universidad Simón Bolívar Primeros pasos en los lenguajes de alto nivel El primer computador (1940) tenía el poder cálculo de una calculadora actual Primer

Más detalles

Software. Programa Paradigmas de programación Cómo se produce software Modelos de procesos Atributos del buen software

Software. Programa Paradigmas de programación Cómo se produce software Modelos de procesos Atributos del buen software SOFTWARE Software Programa Paradigmas de programación Cómo se produce software Modelos de procesos Atributos del buen software Programa Representación de un programa Entrada Programa Salida Cómo son los

Más detalles

Introducción. Introducción y conceptos de POO. En qué consiste la POO? Vocabulario. Definiciones

Introducción. Introducción y conceptos de POO. En qué consiste la POO? Vocabulario. Definiciones Introducción Fernández Universidad Autónoma de Madrid 20 de febrero de 2009 Introducción En qué consiste la Programación Orientada a Objetos? Vocabulario básico Ejemplo sencillo En qué consiste la POO?

Más detalles

Introducción y conceptos de POO

Introducción y conceptos de POO Fernández Universidad Autónoma de Madrid 20 de febrero de 2009 Introducción Introducción En qué consiste la Programación Orientada a Objetos? Vocabulario básico Ejemplo sencillo En qué consiste la POO?

Más detalles

Lenguajes de Programación

Lenguajes de Programación Lenguajes de ción Bloque 1. Complemento a Tema 1 1. Historia 2. Paradigmas de programación 3. Fases creación de un programa 4. Traducción: compilación e interpretación 1ª Generación Ordenadores sólo entienden

Más detalles

Laboratorio de Arquitectura de Redes. Sentencias de control en lenguaje C

Laboratorio de Arquitectura de Redes. Sentencias de control en lenguaje C Laboratorio de Arquitectura de Redes Sentencias de control en lenguaje C Sentencias de control en lenguaje C Introducción Sentencia if-else Sentencia switch Sentencia while Sentencia do-while Sentencia

Más detalles

Lenguajes y paradigmas de programación

Lenguajes y paradigmas de programación Lenguajes y paradigmas de programación Temas Que es un programa? Que es un lenguaje de programación? Características de los lenguajes de programación Paradigmas de programación Que es un programa? La unión

Más detalles

2. Codificar de forma sistemática la secuencia de instrucciones en un lenguaje.

2. Codificar de forma sistemática la secuencia de instrucciones en un lenguaje. Modulo 1. Introducción a los lenguajes de programación La solución de problemas mediante en uso de un computador nos lleva a desarrollar programas o aplicaciones, la construcción de estos programas debe

Más detalles

Capítulo 3 CICLO DE VIDA DE UN PROGRAMA. Presentación resumen del libro: "EMPEZAR DE CERO A PROGRAMAR EN lenguaje C"

Capítulo 3 CICLO DE VIDA DE UN PROGRAMA. Presentación resumen del libro: EMPEZAR DE CERO A PROGRAMAR EN lenguaje C Presentación resumen del libro: "EMPEZAR DE CERO A PROGRAMAR EN lenguaje C" Autor: Carlos Javier Pes Rivas (correo@carlospes.com) Capítulo 3 CICLO DE VIDA DE UN PROGRAMA 1 OBJETIVOS Saber qué es la Ingeniería

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

1. PRINCIPIOS BÁSICOS DE PROGRAMACIÓN

1. PRINCIPIOS BÁSICOS DE PROGRAMACIÓN 1. PRINCIPIOS BÁSICOS DE PROGRAMACIÓN Las estructuras de datos bien definidas no son adecuadamente utilizadas si no se realiza una buena programación. La programación estructurada tiene la finalidad de

Más detalles

Módulo 1. Introducción a los lenguajes de programación

Módulo 1. Introducción a los lenguajes de programación Módulo 1. Introducción a los lenguajes de programación Objetivo - Definir qué es un lenguaje de programación e identificar cómo es su forma de clasificación. Introducción a los lenguajes de programación

Más detalles

ESTRUCTURAS DE CONTROL

ESTRUCTURAS DE CONTROL ESTRUCTURAS DE CONTROL En lenguajes de programación, las estructuras de control permiten modificar el flujo de ejecución de las instrucciones de un programa. Con las estructuras de control se puede: De

Más detalles

INICIACIÓN A LA PROGRAMACIÓN 1ª parte

INICIACIÓN A LA PROGRAMACIÓN 1ª parte TEMA 4 INICIACIÓN A LA PROGRAMACIÓN 1ª parte Qué es la programación? La programación es el proceso de diseñar, codificar, depurar y mantener el código fuente de programas computacionales. En la actualidad,

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

1. Computadores y programación

1. 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 detalles

Unidad I: Fundamentos de Ingenieria de Software

Unidad I: Fundamentos de Ingenieria de Software Unidad I: Fundamentos de Ingenieria de Software 1.1. Conceptos básicos a) Ingeniería Es la profesión en la que el conocimiento de las ciencias naturales y matemáticas obtenidas con el estudio, la práctica

Más detalles

Fundamentos PHP. El término puntuación nos referimos a la sintaxis usada en PHP para la terminación de una línea de código (;)

Fundamentos PHP. El término puntuación nos referimos a la sintaxis usada en PHP para la terminación de una línea de código (;) Tags Fundamentos PHP La Sintaxis de PHP se deriva de muchos lenguajes de programación principalmente de C pero Perl también ha tenido mucha influencia en esta sintaxis Con las últimas incorporaciones agregadas,

Más detalles

Adentrándonos a la Programación

Adentrándonos a la Programación ! Adentrándonos a la Programación Definición de Algoritmo Es un conjunto pre-escrito de instrucciones o reglas bien definidas, ordenadas y finitas que permite realizar una actividad mediante pasos sucesivos

Más detalles

Estructura de Datos y de la Información. Tema 1: Introducción a los tipos abstractos de datos

Estructura de Datos y de la Información. Tema 1: Introducción a los tipos abstractos de datos Estructura de Datos y de la Información Tema 1: Introducción a los tipos abstractos de datos Laboratorio de Investigación y desarrollo en Inteligencia Artificial Departamento de Computación Universidade

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

INGENIERÍA DE SOFTWARE. Sesión 5: Estrategias

INGENIERÍA DE SOFTWARE. Sesión 5: Estrategias INGENIERÍA DE SOFTWARE Sesión 5: Estrategias Contextualización El desarrollo de software se basa de varios elementos, los cuales deben ser contemplados por completo antes de comenzar con la creación del

Más detalles

Tipo de Datos Abstractos y Programación Orientada a Objetos

Tipo de Datos Abstractos y Programación Orientada a Objetos Tipo de Datos Abstractos y Programación Orientada a Objetos DISEÑO Y PARADIGMAS DE LENGUAJES ING. EN INFORMÁTICA/ING. EN COMPUTACIÓN DEPARTAMENTO DE INFORMÁTICA UNIVERSIDAD NACIONAL DE SAN LUIS ARGENTINA

Más detalles

Java Avanzado. Guía 1. Java Avanzado Facultad de Ingeniería. Escuela de computación.

Java Avanzado. Guía 1. Java Avanzado Facultad de Ingeniería. Escuela de computación. Java Avanzado. Guía 1 Java Avanzado Facultad de Ingeniería. Escuela de computación. Java Avanzado. Guía 2 Introducción Este manual ha sido elaborado para orientar al estudiante de Java Avanzado en el desarrollo

Más detalles

A3F. Objetos (uso) Carlos Fontela

A3F. Objetos (uso) Carlos Fontela Objetos (uso) Carlos Fontela cfontela@fi.uba.ar Temario Objetos y mensajes Objetos y clases Estado, comportamiento, identidad Historia hacia la POO POO vs. procedural 2c2009 2 Operando sobre objetos (Smalltalk)

Más detalles

Examen escrito de Programación 1

Examen escrito de Programación 1 Examen escrito de Programación 1 Escuela de Ingeniería y Arquitectura Departamento de Informática e Ingeniería de Sistemas 31 de agosto de 2012 Disponer sobre la mesa en lugar visible un documento de identificación

Más detalles

Introducción a la programación

Introducción a la programación Introducción a la programación Conceptos Básicos El objetivo fundamental de éste curso es enseñar a resolver problemas mediante una computadora. El programador de computadoras es antes que nada una persona

Más detalles

CONCEPTO Y DEFINICIÓN DE CLASE EN JAVA. OBJETOS DEL MUNDO REAL Y ABSTRACTOS. EJEMPLOS. EJERCICIO (CU00644B)

CONCEPTO Y DEFINICIÓN DE CLASE EN JAVA. OBJETOS DEL MUNDO REAL Y ABSTRACTOS. EJEMPLOS. EJERCICIO (CU00644B) APRENDERAPROGRAMAR.COM CONCEPTO Y DEFINICIÓN DE CLASE EN JAVA. OBJETOS DEL MUNDO REAL Y ABSTRACTOS. EJEMPLOS. EJERCICIO (CU00644B) Sección: Cursos Categoría: Curso Aprender programación Java desde cero

Más detalles

Prof. María Alejandra Quintero. Informática Año

Prof. María Alejandra Quintero. Informática Año Prof. María Alejandra Quintero Informática Año 2014-2015 Es la acción de escribir programas de computación con el objetivo de resolver un determinado problema. Implica escribir instrucciones para indicarle

Más detalles

Conceptos básicos. IC-1800 Introducción a la programación. I semestre,

Conceptos básicos. IC-1800 Introducción a la programación. I semestre, Conceptos básicos IC-1800 Introducción a la programación I semestre, 2016 1 Definiciones Básicas Hardware: componentes físicos. tangibles Software: componentes lógicos. no tangibles DVDs de Ubuntu, Kubuntu

Más detalles

Qué es Java? Un lenguaje de programación Un entorno de desarrollo Un entorno de aplicación Un entorno de despliegue Es similar en sintaxis de C + +.

Qué es Java? Un lenguaje de programación Un entorno de desarrollo Un entorno de aplicación Un entorno de despliegue Es similar en sintaxis de C + +. APUNTES DE JAVA Agenda Bienvenida Conociendo Java La Maquina Virtual Descargar e instalar el compilador El entorno de trabajo El paradigma de la programación orientada a objetos Qué es Java? Un lenguaje

Más detalles

La resolución de problemas es una tarea únicamente humana comprobable en todos los casos con los mismos resultados.

La resolución de problemas es una tarea únicamente humana comprobable en todos los casos con los mismos resultados. Pseudocódigo Introducción La importancia de sistematizar procesos y crear programas de cómputo radica esencialmente en que estos se puedan utilizar como resolución de problemas similares en muchos casos,

Más detalles

Tema 3. Estructuras de control

Tema 3. Estructuras de control Tema 3. Estructuras de control 3.1. Secuencial 3.2. Selección 3.3. Repetición 2 Objetivos Objetivos del tema: Conocer y saber la utilidad de las tres estructuras de control (secuencial, alternativa y repetitiva)

Más detalles

Tema 1. Introducción a la Programación Orientada a Objetos

Tema 1. Introducción a la Programación Orientada a Objetos Tema 1. Introducción a la Programación Orientada a Objetos Dpto. Lenguajes y Ciencias de la Computación. E.T.S.I. Informática. Universidad de Málaga Programación Orientada a Objetos Dpto. Lenguajes y Ciencias

Más detalles

1 / 14 Fundamentos de programación de Sistemas Embebidos Introducción

1 / 14 Fundamentos de programación de Sistemas Embebidos Introducción Fundamentos de programación de Sistemas Embebidos Introducción Mg. Ing. E. Sergio Burgos Universidad Nacional de Entre Ríos Facultad de Ingeniería Especialización en Sistemas Embebidos 31/08/2018 1 / 14

Más detalles

Conceptos básicos. IC-1800 Introducción a la programación. I semestre,

Conceptos básicos. IC-1800 Introducción a la programación. I semestre, Conceptos básicos IC-1800 Introducción a la programación I semestre, 2017 1 Definiciones Básicas Hardware: componentes físicos. tangibles Software: componentes lógicos. no tangibles DVDs de Ubuntu, Kubuntu

Más detalles

Programación Orientada a Objetos

Programación Orientada a Objetos Programación Orientada a Objetos Sentencias Java Parte II Ing. Julio Ernesto Carreño Vargas MsC. while y do while Sentencia while Ciclo mientras que Repite una acción mientras su condición de ciclo se

Más detalles

Tema 6. Estructuras básicas. Computacion - FA.CE.NA.

Tema 6. Estructuras básicas. Computacion - FA.CE.NA. Tema 6 Estructuras básicas TEMA6 Programacion estructurada. Estructura de selección. Sentencias. Sentencias anidadas. Casos particulares. Estructura de control. Bucles. Tipo: hacer mientras hacer hasta.

Más detalles

UNIVERSIDAD AUTÓNOMA DE BAJA CALIFORNIA

UNIVERSIDAD AUTÓNOMA DE BAJA CALIFORNIA UNIVERSIDAD AUTÓNOMA DE BAJA CALIFORNIA DIRECCIÓN GENERAL DE ASUNTOS ACADÉMICOS PROGRAMA DE ASIGNATURA POR S I. DATOS DE IDENTIFICACIÓN 1. Unidad Académica: Facultad de Ciencias Químicas e Ingeniería 2.

Más detalles

Estructura de Datos Unidad 1: Repaso del Lenguaje Java

Estructura de Datos Unidad 1: Repaso del Lenguaje Java Estructura de Datos Unidad 1: Repaso del Lenguaje Java Introducción Java es un lenguaje de programación orientado a objetos, desarrollado por Sun Microsystems a principios de 1991, con el que se van a

Más detalles

ProgramaciónDeclarativa

ProgramaciónDeclarativa ProgramaciónDeclarativa 1. Introducción Programación estructurada Programación orientada a objetos Programación lógica Programación funcional Objetivos Establecer los fundamentos de la programación estructurada

Más detalles

INTRODUCCIÓN AL PARADIGMA DE LA PROGRAMACIÓN ORIENTADA A OBJETOS CON JAVA

INTRODUCCIÓN AL PARADIGMA DE LA PROGRAMACIÓN ORIENTADA A OBJETOS CON JAVA Objetivo: Identificar los concentos principales en java POO, que es una clase, un objeto así como sus características principales abstracción, modularidad, encapsulamiento, herencia, polimorfismo. INTRODUCCIÓN

Más detalles

Programación Estructurada. Sesión 4:Estructuras de control

Programación Estructurada. Sesión 4:Estructuras de control Programación Estructurada Sesión 4:Estructuras de control Contextualización En la sesión anterior vimos las estructuras condicionales, mediante éstas somos capaces de elegir qué expresiones usaremos, pero

Más detalles

Tema III: Introducción al lenguaje de programación

Tema III: Introducción al lenguaje de programación Tema III: Introducción al lenguaje de programación Semestre: U-2014 Profesora: Nelly García Mora Agenda 1. Definición 2. Programación estructurada 3. Programación Modular 4. Tipos de lenguaje de Programación

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

Palabras reservadas de C++ y C. Una palabra reservada no puede declararse como un identificador, esto haría un conflicto entre conectores y funciones.

Palabras reservadas de C++ y C. Una palabra reservada no puede declararse como un identificador, esto haría un conflicto entre conectores y funciones. Palabras reservadas de C++ y C Una palabra reservada no puede declararse como un identificador, esto haría un conflicto entre conectores y funciones. A continuación se muestra el link del listado de palabras

Más detalles

ANEXO XVII DE LA RESOLUCION N

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

Introducción a Haskell. Cecilia Manzino

Introducción a Haskell. Cecilia Manzino Paradigmas de programación Un paradigma de programación representa un estilo particular o filosofía para la construcción del software. Los más comunes dan lugar a los siguientes tipos de programación:

Más detalles

Programación Estructurada

Programación Estructurada Programación Estructurada PROGRAMACIÓN ESTRUCTURADA 1 Sesión No. 4 Nombre: Estructuras de control Contextualización En la actualidad los programas buscan un objetivo común, que es: Automatizar tareas de

Más detalles

Programación Orientada o Objetos

Programación Orientada o Objetos Programación Orientada o Objetos Programación digital II Escuela de Sistemas Facultad de Ingeniería Profesor: Gilberto Diaz Programación Orientada a Objetos En 1970 Dennis Ritchie y Brian Kernigan crearon

Más detalles

Diferentes Perspectivas de un Ordenador

Diferentes Perspectivas de un Ordenador Arquitectura de Ordenadores Programación en ensamblador Abelardo Pardo abel@it.uc3m.es Universidad Carlos III de Madrid Departamento de Ingeniería Telemática Diferentes Perspectivas de un Ordenador INT-1

Más detalles

Lenguaje de Diseño. Primera Parte. Segundo Cuatrimestre 2017

Lenguaje de Diseño. Primera Parte. Segundo Cuatrimestre 2017 Primera Parte Fund. de la Informática Int. a la Programación Int. a la Computación Resolución de Problemas y Algoritmos Segundo Cuatrimestre 2017 1 Etapas en el proceso de resolver un problema: 1- Comprender

Más detalles

INSTITUTO TECNOLÓGICO DE TIJUANA

INSTITUTO TECNOLÓGICO DE TIJUANA INSTITUTO TECNOLÓGICO DE TIJUANA DEPARTAMENTO DE SISTEMAS Y COMPUTACIÓN SEMESTRE AGOSTO-DICIEMBRE 2013 Ingeniería en Sistemas Computacionales Fundamentos de Programacion Nombre del trabajo: Paradigmas

Más detalles

PRÁCTICA FUNDAMENTOS DE ALGORITMOS I. Objetivos

PRÁCTICA FUNDAMENTOS DE ALGORITMOS I. Objetivos Objetivos El alumno conocerá las estructuras básicas para el diseño de algoritmos 1. Conocerá las estructuras secuenciales y de decisión para construir algoritmos 2. Diseñará algoritmos utilizando las

Más detalles

Cada enfoque tiene sus ventajas y desventajas Cada uno es más apropiado para ciertas cosas

Cada enfoque tiene sus ventajas y desventajas Cada uno es más apropiado para ciertas cosas ADyA Hay para todos los gustos Estructurados (C, Pascal, Basic, etc.) Funcionales (CAML) Declarativos (Prolog) Orientados a Objetos (C#, VB.NET, Smalltalk, Java) Orientados a Aspectos Híbridos (Lisp, Visual

Más detalles

Metodología de Desarrollo de Programas

Metodología de Desarrollo de Programas Metodología de Desarrollo de Programas Prof. Judith Barrios Albornoz Departamento de Computación Escuela de Ingeniería de Sistemas Facultad de Ingeniería Universidad de Los Andes Semestre A_2013 Este material

Más detalles

Algoritmo. Programa. Lenguaje algorítmico

Algoritmo. Programa. Lenguaje algorítmico ESCUELA DE EDUCACION SECUNDARIA TECNICA N 3 LENGUAJE ELECTRONICO PROFESOR: PAOLO, MARCOS GERMAN TEMA: ALGORITMOS Algoritmo Es un conjunto prescrito de instrucciones o reglas bien definidas, ordenadas y

Más detalles

CAPÍTULO IV: 4.1 Introducción a la. Programación Funcional

CAPÍTULO IV: 4.1 Introducción a la. Programación Funcional CAPÍTULO IV: Programación Funcional 4.1 Introducción a la Programación Funcional 1 Programación Funcional Paradigma diferente a los imperativos, que se aleja de la máquina de von Neumann Basado en funciones

Más detalles

CAPÍTULO 2: CARACTERÍSTICAS DE LA PROGRAMACIÓN ORIENTADA A OBJETOS. ABSTRACCIÓN. ENCAPSULAMIENTO. PRINCIPIO DE OCULTACIÓN. HERENCIA. POLIMORFISMO.

CAPÍTULO 2: CARACTERÍSTICAS DE LA PROGRAMACIÓN ORIENTADA A OBJETOS. ABSTRACCIÓN. ENCAPSULAMIENTO. PRINCIPIO DE OCULTACIÓN. HERENCIA. POLIMORFISMO. 1 UNIDAD 1: ORIENTACIÓN A OBJETOS. CAPÍTULO 1: INTRODUCCIÓN. HISTORIA. ESPÍRITU DEL PARADIGMA ORIENTADO A OBJETOS. CONCEPTOS BÁSICOS: OBJETO, ATRIBUTO, MÉTODO, MIEMBRO, MENSAJE, CLASE, EVENTO. CAPÍTULO

Más detalles

Evolución de los Lenguajes de Programación. Dr. Oldemar Rodríguez Escuela de Informática Universidad Nacional

Evolución de los Lenguajes de Programación. Dr. Oldemar Rodríguez Escuela de Informática Universidad Nacional Evolución de los Lenguajes de Programación Dr. Oldemar Rodríguez Escuela de Informática Universidad Nacional Qué es un Paradigma de programación? Un paradigma de programación representa un enfoque particular

Más detalles

Tema 1 INTRODUCCIÓN A LOS LENGUAJES DE PROGRAMACIÓN

Tema 1 INTRODUCCIÓN A LOS LENGUAJES DE PROGRAMACIÓN Tema 1 INTRODUCCIÓN A LOS LENGUAJES DE PROGRAMACIÓN - Introducción - Sintaxis - Semántica básica - Tipos de datos - Expresiones y enunciados - Procedimientos y ambientes - Tipos abstractos de datos y módulos

Más detalles

Tema 4. Control de flujo. Programación Programación - Tema 4: Control de Flujo

Tema 4. Control de flujo. Programación Programación - Tema 4: Control de Flujo Tema 4 Control de flujo Programación 2015-2016 Programación - Tema 4: Control de Flujo 1 Tema 4. Control de flujo Introducción. Estructuras condicionales. Estructuras de repetición. Programación - Tema

Más detalles

FUNDAMENTOS PARA LA CONSTRUCCIÓN DEL CÓDIGO A PARTIR DEL ALGORITMO

FUNDAMENTOS PARA LA CONSTRUCCIÓN DEL CÓDIGO A PARTIR DEL ALGORITMO FUNDAMENTOS PARA LA CONSTRUCCIÓN DEL CÓDIGO A PARTIR DEL ALGORITMO 3.2 Variables, tipos, expresiones y asignación 3.3 Estructuras de control condicional e iterativo. MODIFICADORES DE ALCANCE CONST Y STATIC

Más detalles

TEMA 2.1 TIPOS DE PRUEBAS DEL SOFTWARE

TEMA 2.1 TIPOS DE PRUEBAS DEL SOFTWARE TEMA 2.1 TIPOS DE PRUEBAS DEL SOFTWARE INTRODUCCIÓN La prueba del software es un elemento crítico para la garantía de la calidad del software y representa una revisión final de las especificaciones, del

Más detalles

Metodología de la Programación II. Recursividad

Metodología de la Programación II. Recursividad Metodología de la Programación II Recursividad Objetivos Entender el concepto de recursividad. Conocer los fundamentos del diseño de algoritmos recursivos. Comprender la ejecución de algoritmos recursivos.

Más detalles

DEPARTAMENTO TECNOLOGIA EN ELECTRONICA FUNDAMENTOS DE PROGRAMACION CÓDIGO

DEPARTAMENTO TECNOLOGIA EN ELECTRONICA FUNDAMENTOS DE PROGRAMACION CÓDIGO FORMATO DE PLAN DE ASIGNATURA Enero 2 de 2011 FACULTAD INGENIERIA DEPARTAMENTO PROGRAMA TECNOLOGIA EN ELECTRONICA ASIGNATURA FUNDAMENTOS DE PROGRAMACION CÓDIGO 25611 REQUISITOS NINGUNO CREDITOS 2 INTENSIDAD

Más detalles

Bloque II. Elementos del lenguaje de programación Java

Bloque II. Elementos del lenguaje de programación Java Bloque II. Elementos del lenguaje de programación Java 1.Introducción a los lenguajes de programación 2. Estructura de un programa 3. Datos y expresiones simples 4. Instrucciones de control 5. Entrada/salida

Más detalles

Introducción a la. Programación con

Introducción a la. Programación con Introducción a la Programación con C Objetivo El alumno comprendera los conceptos sobre cuales se rige la programación estructurada mediante una base teórica y un conjunto de prácticas, enfocando dichos

Más detalles

PRINCIPIOS DE PROGRAMACIÓN. Mtro. en Ingeniería de Software. Especialidad en e-commerce Ismael Jiménez Hernández

PRINCIPIOS DE PROGRAMACIÓN. Mtro. en Ingeniería de Software. Especialidad en e-commerce Ismael Jiménez Hernández PRINCIPIOS DE PROGRAMACIÓN Mtro. en Ingeniería de Software. Especialidad en e-commerce Ismael Jiménez Hernández Objetivos específicos: Al termino de esta clase el alumno: Sabrá cuantos tipos de programación

Más detalles

Estructuras de Control

Estructuras de Control Algorítmica y Lenguajes de Programación Estructuras de Control Estructuras de Control. Introducción Hasta ahora algoritmos han consistido en simples secuencias de instrucciones Existen tareas más complejas

Más detalles

Lenguaje C. República Bolivariana de Venezuela Fundación Misión Sucre Aldea Fray Pedro de Agreda Introducción a la Programación III

Lenguaje C. República Bolivariana de Venezuela Fundación Misión Sucre Aldea Fray Pedro de Agreda Introducción a la Programación III República Bolivariana de Venezuela Fundación Misión Sucre Aldea Fray Pedro de Agreda Introducción a la Programación III Lenguaje C 1 Puntos previos Los códigos fuentes generados en C requieren ser compilados

Más detalles

A3F. Objetos (uso) Carlos Fontela

A3F. Objetos (uso) Carlos Fontela Objetos (uso) Carlos Fontela cfontela@fi.uba.ar Temario Objetos y mensajes Objetos y clases Estado, comportamiento, identidad Paquetes Historia hacia la POO POO vs. procedural 2c2009 2 Operando sobre objetos

Más detalles

Conceptos. ELO329: Diseño y Programación Orientados a Objetos. ELO 329: Diseño y Programación Orientados a Objetos 1

Conceptos. ELO329: Diseño y Programación Orientados a Objetos. ELO 329: Diseño y Programación Orientados a Objetos 1 Conceptos ELO329: Diseño y Programación Orientados a Objetos ELO 329: Diseño y Programación Orientados a Objetos 1 Paradigmas de Programación Historia: Los computadores parten cableados por hardware, Luego

Más detalles

LENGUAJES DE PROGRAMACIÓN

LENGUAJES DE PROGRAMACIÓN LENGUAJES DE PROGRAMACIÓN 1.- Preliminares 2.- Paradigmas de Programación. 3.- Lenguajes de Programación Lenguajes de Programación - Preliminares 1 Preliminares Programar = Plantear solución a un problema

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

UNIDAD ACADÉMICA PROFESIONAL TIANGUISTENCO

UNIDAD ACADÉMICA PROFESIONAL TIANGUISTENCO UNIDAD ACADÉMICA PROFESIONAL TIANGUISTENCO LICENCIATURA EN PRODUCCIÓN INDUSTRIAL. UNIDAD DE APRENDIZAJE: PROGRAMACIÓN Créditos institucionales de la UA: 6 Material visual: Diapositivas Unidad de competencia

Más detalles

Análisis y escritura de las estructuras de control

Análisis y escritura de las estructuras de control Análisis y escritura de las estructuras de control por Iván Cruz En esta lectura se abordarán las estructuras de control del lenguaje de programación C, estas estructuras. Permiten al programador comunicarse

Más detalles

Conceptos de Programación Orientada a Objetos

Conceptos de Programación Orientada a Objetos Paradigmas de programación Prog. orientada a objetos Conceptos de Programación Orientada a Objetos Abstracción de Programación estructurada Programación imperativa 2 Programación estructurada (I) Programación

Más detalles

UNIVERSIDAD DISTRITAL Francisco José de Caldas Facultad de Ingeniería Ingeniería Eléctrica. Fecha de Elaboración Fecha de Revisión

UNIVERSIDAD DISTRITAL Francisco José de Caldas Facultad de Ingeniería Ingeniería Eléctrica. Fecha de Elaboración Fecha de Revisión UNIVERSIDAD DISTRITAL Francisco José de Caldas Facultad de Ingeniería Ingeniería Eléctrica Elaboró Revisó Jhon Felipe Galvis [Escriba aquí el nombre] Fecha de Elaboración Fecha de Revisión 9 de junio de

Más detalles

Unidad Didáctica 2. Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones

Unidad Didáctica 2. Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones Unidad Didáctica 2 Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Versión 1.0.3 Índice

Más detalles