UNIVERSIDAD LATINA UNILA INTRODUCCION A LA PROGRAMACIN ORIENTADA

  • Slides: 29
Download presentation
UNIVERSIDAD LATINA (UNILA) INTRODUCCION A LA PROGRAMACIÓN ORIENTADA A OBJETOS LE, EI, Profesor Ramón

UNIVERSIDAD LATINA (UNILA) INTRODUCCION A LA PROGRAMACIÓN ORIENTADA A OBJETOS LE, EI, Profesor Ramón Castro Liceaga

Introducción • La programación orientada a objetos es un enfoque de programación de los

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 de proyectos de software.

Que es la Programación Orientada a Objetos ? • Es un estilo de programación

Que es la Programación Orientada a Objetos ? • Es un estilo de programación en que cada programa es visto como un objeto se forma por una serie de componentes, autocontenidos que cooperan para realizar las acciones de la aplicación completa.

Origen • Los conceptos de la programación orientada a objetos tienen origen en Simula

Origen • Los conceptos de la programación orientada a objetos tienen origen en Simula 67, un lenguaje diseñado para hacer simulaciones, creado por Ole-Johan Dahl y Kristen Nygaard del Centro de Cómputo Noruego en Oslo.

Diferencias con la programación estructurada • Las principales diferencias entre la programación estructurada y

Diferencias con la programación estructurada • Las principales diferencias entre la programación estructurada y la orientada a objetos son: • La programación orientada a objetos es más moderna, es una evolución de la programación estructurada • La programación orientada a objetos se basa en lenguajes que soportan sintáctica y semánticamente la unión entre los tipos abstractos de datos y sus operaciones (a esta unión se la suele llamar clase). • La programación orientada a objetos incorpora en su entorno de ejecución mecanismos tales como el polimorfismo y el envío de mensajes entre objetos.

Conceptos orientados a objetos • • Objeto Clase Método Evento Mensaje Propiedad o atributo

Conceptos orientados a objetos • • Objeto Clase Método Evento Mensaje Propiedad o atributo Componentes de un objeto Representación de un objeto

Características de la POO Las características mas importantes son: • • • Abstracción Encapsulamiento

Características de la POO Las características mas importantes son: • • • Abstracción Encapsulamiento Principio de ocultación Polimorfismo Herencia

Que es un paradigma ? • Paradigma: Modo de Pensar expresado en breve (Un

Que es un paradigma ? • Paradigma: Modo de Pensar expresado en breve (Un punto de vista personal, una metáfora, un esquema-mental, una visión del Mundo o cosmovisión) • Por ejemplo: ¿Cómo pensaba la gente que era la Tierra antes de 1492?

Etimología • El término paradigma se origina en la palabra griega παράδειγμα (paradeigma), que

Etimología • El término paradigma se origina en la palabra griega παράδειγμα (paradeigma), que significa "modelo" o "ejemplo". A su vez tiene las mismas raíces que παραδεικνύναι, que significa "demostrar".

Antecedentes • 1960 un modelo o patrón en cualquier disciplina científica u otro contexto

Antecedentes • 1960 un modelo o patrón en cualquier disciplina científica u otro contexto epistemológico. • 1900 el diccionario Merriam-Webster definía su uso solamente en tal contexto, o en retórica para referirse a una parábola o a una fábula. En lingüística, Ferdinand de Saussure ha usado paradigma para referirse a una clase de elementos con similitudes.

Que es un paradigma de programación ? • El paradigma de programación representa un

Que es un paradigma de programación ? • El paradigma de programación representa un enfoque particular o filosofía para la construcción del software. • El enfoque 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.

Aspectos que comprende ? • El paradigma de programación se refiere a: ¿Estilo de

Aspectos que comprende ? • El paradigma de programación se refiere a: ¿Estilo de Programación? Manera de Visualizar y Resolver Problemas de Programación Procedural, Imperativo Lógico, Declarativo Visual Paralelo Orientado a Objetos Filosofía Historia, Objetivos y Metas Modelos y Enfoques Conceptos Principios Soporte Notación, Metodologías Herramientas y Tecnologías

Ejemplos de paradigmas de programación ? • El paradigma imperativo o por procedimientos es

Ejemplos de paradigmas de programación ? • El paradigma imperativo o por procedimientos es considerado el más común y está representado, por ejemplo, por el C o por BASIC. • El paradigma funcional está representado por la familia de lenguajes LISP (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 mas utilizado ? • Actualmente el paradigma de programación más usado debido a

El mas utilizado ? • Actualmente el paradigma de programación más usado debido a múltiples ventajas respecto a sus anteriores, es la programación orientada a objetos.

Clases y Objetos • Objeto es la entidad provista de un conjunto de propiedades

Clases y Objetos • Objeto es la entidad provista de un conjunto de propiedades o atributos (datos) y de comportamiento o funcionalidad (métodos). Corresponden a los objetos reales del mundo que nos rodea, o a objetos internos del sistema (del programa). Es una instancia a una clase. • Las Clases son definiciones de las propiedades y comportamiento de un tipo de objeto concreto. La instanciación es la lectura de estas definiciones y la creación de un objeto a partir de ellas.

Método • Es un algoritmo asociado a un objeto (o a una clase de

Método • Es un algoritmo asociado a un objeto (o a una clase de objetos), cuya ejecución se desencadena tras la recepción de un "mensaje". Desde el punto de vista del comportamiento, es lo que el objeto puede hacer. Un método puede producir un cambio en las propiedades del objeto, o la generación de un "evento" con un nuevo mensaje para otro objeto del sistema.

Evento • Es un suceso en el sistema (tal como una interacción del usuario

Evento • Es un suceso en el sistema (tal como una interacción del usuario con la máquina, o un mensaje enviado por un objeto). El sistema maneja el evento enviando el mensaje adecuado al objeto pertinente. También se puede definir como evento, a la reacción que puede desencadenar un objeto, es decir la acción que genera.

Mensaje • Es una comunicación dirigida a un objeto, que le ordena que ejecute

Mensaje • Es una comunicación dirigida a un objeto, que le ordena que ejecute uno de sus métodos con ciertos parámetros asociados al evento que lo generó.

Propiedad o atributo • Es contenedor de un tipo de datos asociados a un

Propiedad o atributo • Es contenedor de un tipo de datos asociados a un objeto (o a una clase de objetos), que hace los datos visibles desde fuera del objeto y esto se define como sus características predeterminadas, y cuyo valor puede ser alterado por la ejecución de algún método.

Estado interno • Es una propiedad invisible de los objetos, que puede ser únicamente

Estado interno • Es una propiedad invisible de los objetos, que puede ser únicamente accedida y alterada por un método del objeto, y que se utiliza para indicar distintas situaciones posibles para el objeto (o clase de objetos).

Componentes de un objeto • Los componentes de un objeto son: • • atributos,

Componentes de un objeto • Los componentes de un objeto son: • • atributos, identidad, relaciones y métodos.

Representación de un objeto • Un objeto se representa por medio de una tabla

Representación de un objeto • Un objeto se representa por medio de una tabla o entidad que esté compuesta por sus atributos y funciones correspondientes

Tipo • Es un conjunto de firma de métodos con un nombre que lo

Tipo • Es un conjunto de firma de métodos con un nombre que lo identifica. Un tipo puede ser definido a través de una Clase o una Interface.

Que es un lenguaje de programación • Un lenguaje de programación es un idioma

Que es un lenguaje de programación • Un lenguaje de programación es un idioma artificial diseñado para expresar procesos que pueden ser llevadas a cabo por máquinas como las computadoras. • Está formado por un conjunto de símbolos y reglas sintácticas y semánticas que definen su estructura y el significado de sus elementos y expresiones. • Al proceso por el cual se escribe, se prueba, se depura, se compila y se mantiene el código fuente de un programa informático se le llama programación. • Es aquel que utilizamos para poder transmitir ordenadamente nuestras ideas a una computadora.

Tipos de lenguajes • Existen 4 tipos de LP: – Lenguaje máquina 0011 –

Tipos de lenguajes • Existen 4 tipos de LP: – Lenguaje máquina 0011 – Lenguaje ensamblador ld a, #10 – Lenguajes de alto nivel for(i=0; i<10; i++) – Lenguajes orientados a objetos class persona{ }

Como se clasifican • Lenguajes imperativos. Utilizan instrucciones como unidad de trabajo de los

Como se clasifican • Lenguajes imperativos. Utilizan instrucciones como unidad de trabajo de los programas (Cobol, Pascal, C, Ada). • Lenguajes declarativos. Los programas se construyen mediante descripciones de funciones o expresiones lógicas (Lisp, Prolog). • Lenguajes orientados a objetos. El diseño de los programas se basa mas en los datos y su estructura. La unidad de proceso es el objeto y en el se incluyen los datos (variables) y las operaciones que actúan sobre ellos (Java, Smalltalk, C++). • Lenguajes orientados al problema. Diseñados para problemas específicos, principalmente de gestión, suelen ser generadores de aplicaciones. (Lenguajes de 4ª Generacion 4 GL, Progress, ABAP, ORACLE) • Lenguajes naturales. Están desarrollándose nuevos lenguajes con el principal objetivo de aproximar el diseño y construcción de programas al lenguaje de las personas.

Lenguaje de programación orientado a objetos • Entre los lenguajes orientados a objetos destacan

Lenguaje de programación orientado a objetos • Entre los lenguajes orientados a objetos destacan los siguientes: • Action Script , Ada, C++, C#, Clarion, C++Builder, D, Delphi, Harbour, Eiffel, Java, Lexico (en castellano), Objective-C, Ocaml, Oz, Perl (soporta herencia múltiple), PHP (en su versión 5) , Power. Builder, Python, Ruby, Smalltalk, Magik (Small. World), VB. NET Visual Fox. Pro , XBase++ • Utilizaremos en nuestros ejemplos el lenguaje Java en su versión J 2 SDK.

Lenguaje Java orientado a objetos • El diseño orientado a objeto puede ser programado

Lenguaje Java orientado a objetos • El diseño orientado a objeto puede ser programado en cualquier lenguaje. • Los desarrollos se organizan alrededor de los datos, y no de las funcionalidades. • Afortunadamente han aparecido nuevos lenguajes que facilitan la programación orientada a objetos, como es el caso de Java. • En adelante para explicar las funcionalidades de programación orientadas a objetos adoptaremos código de Java como ejemplo

El Paradigma de la orientación a objetos PRACTICA # 01 • Instalación y prueba

El Paradigma de la orientación a objetos PRACTICA # 01 • Instalación y prueba de un lenguaje de programación orientado a objetos: Java con Netbeans IDE LE, EI, Profesor Ramón Castro Liceaga