Universidad Autónoma del Estado de Hidalgo Instituto de Ciencias Básicas e Ingeniería Área Académica de Computación y Electrónica Licenciatura en Ciencias.

Slides:



Advertisements
Presentaciones similares
Unidad 3 Lenguajes .Net y POO
Advertisements

FUNDAMENTALS OF THE JAVA PROGRAMMING LANGUAGE
Lenguaje Unificado de Modelado
Curso de Java Capitulo 7: Continuación Poo Profesor:
Herencia en C#.
Fundamentos de la programación orientada a objetos
Lenguaje de programación Java
Arquitectura CLARO-TECNOTREE
Polimorfismo Unidad 4.
Programación Orientada a Objetos
Introducción a la Orientación a Objetos
La Programación Orientado a Objetos
Tipo de Dato Abstracto Tipos de datos:
75.41 Algoritmos y Programación II Cátedra Ing. Patricia Calvo Programación Orientada a Objetos Encapsulamiento.
Informática II Prof. Dr. Gustavo Patiño MJ
UNIVERSIDAD LATINA (UNILA) ENCAPSULACION Y HERENCIA
UNIVERSIDAD LATINA (UNILA)
Aplicación del paradigma orientado a objetos
Algoritmos y Estructuras de Datos
Encapsulamiento y Abstracción
Programación Orientada a Objetos en Java
UNIDAD I. INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS EN JAVA.
POO (Programación Orientada a Objetos)
Algoritmos y Estructuras de Datos Introducción al C++ Herencia.
PROGRAMACIÓN EN JAVA Curso-taller inicial de programación en JAVA Facultad de Estadística e Informática TEMA II.
HERENCIA.
Programación Orientada a Objetos usando C++
UNIVERSIDAD TECNOLÓGICA DE HERMOSILLO T.S.U. EN T.I.C., Área: Sistemas Informáticos Ing. José Padilla Duarte y estudiantes de Sistemas Informáticos Hermosillo,
Abstracción de los datos y Orientación a Objeto Clase 13.
Introducción a clases Programación Orientada a Objetos.
Clases y objetos La unidad fundamental de programación OO son las clases. Conjunto de métodos y semántica Qué se va a hacer POO Clase: que define la implementación.
Material Original de Microsoft para desarrolladores adaptado por Jorge Miguel PERALTA para clases de Informática Aplicada (Haga clic para adelantar/atrasar.
Tema 6: Clases Antonio J. Sierra.
Tema 10: Interfaces Antonio J. Sierra.
 2003 Prentice Hall, Inc. All rights reserved. 1 Capítulo 6: Clases y Abstracción de Datos Índice del capítulo 6.1 Introducción 6.2 Estructuras 6.3 Clases.
UNIDAD 2 CLASES Y OBJETOS. CLASE Elementos cabecera y cuerpo de la clase. Cabecera: aporta información fundamental sobre la clase en sí y constituye de.
Ingeniería de Software
Capitulo # 4 herencia PROGRAMACION III UNIVERSIDAD
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS Encapsulamiento.
Programación Orientada a Objetos usando CONSTRUCTORES DESTRUCTORES.
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS Encapsulamiento.
Programación Orientada a Objetos
CS-432: Ingeniería Moderna de Software Semana 3
SCJP SUN CERTIFIED PROGRAMMER FOR JAVA 6
EI, Profesor Ramón Castro Liceaga Agosto de 2005 UNIVERSIDAD LATINA (UNILA) PROGRAMACION ORIENTADA A OBJETOS EN JAVA (Optativa) CONCEPTOS DE PROGRAMACION.
Programación Orientada a Objetos
Herencia. Introducción La idea básica es poder crear clases basadas en clases ya existentes. Cuando heredamos de una clase existente, estamos re-usando.
Facultad de Ingeniería
TEMA 9: DIAGRAMA DE CLASE EN UML
Funciones y Clases Amigas (Friend)‏ Miembros Estáticos (Static)
Introducción a la Programación Orientada a Objetos (POO)
1 Miembros Estáticos (Static) de Clases y Funciones Amigas (Friend)‏ Agustín J. González ELO329.
UNIVERSIDAD TECNICA DE BABAHOYO EXTENSION DE QUEVEDO  Espinales Lisseth G RUPO N º 2 Temas:  Herencia  Polimorfismo  Encapsulamiento  2 Ejemplos Estudiante.
Tipo de relación entre clases Es uno de los aspectos que distinguen el paradigma de orientación a objetos frente a otros paradigmas. Mecanismo que,
Programación Orientada a Objetos: CLASES Y OBJETOS
La Programación Orientado a Objetos
Encapsulamiento Miguel Ángel Rojas Aguilar Esthela Carmina Carranza Cabrera.
Herencias Conceptos básicos i
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 objetos.
Prof. Manuel B. Sánchez. Un paradigma de programación representa un enfoque particular o filosofía para la construcción del software. No es mejor uno.
2015-BM5A. Introducción Durante años, los programadores se han dedicado a construir aplicaciones muy parecidas que resolvían una y otra vez los mismos.
PARADIGMA viene del Griego Paradeima = Modelo. Un paradigma es el resultado de los usos, y costumbres, de creencias establecidas de verdades a medias,
Modelado UML Diagrama de Clases
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS Encapsulamiento.
:: Prof. Yeniffer Peña Introducción a JAVA Presentación Programación I.
Métodos en Java. Estructura de un programa en Java ► La relación con la vida misma la podemos ver en el siguiente comentario: Imaginemos que dos clases.
Programación I Clases. Paradigma POO La programación Orientada a objetos (POO) es una forma programar, más cercana a como expresaríamos las cosas en la.
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS Herencia.
Introducción Todos los lenguajes de programación son distintos entre si. Sin embargo, pueden ser agrupados según la forma de pensar y estructurar los.
PROGRAMACION ORIENTADA A OBJETOS
Transcripción de la presentación:

Universidad Autónoma del Estado de Hidalgo Instituto de Ciencias Básicas e Ingeniería Área Académica de Computación y Electrónica Licenciatura en Ciencias Computacionales Programación Orientada a Objetos Docente: M. en C. Iliana Castillo Pérez

Abstract: Área Académica de Computación y Electrónica Object Oriented Programing (OOP) is a paradigm of programming that focuses on built classes and objects or instances. Classes define types of data structures and the functions that operate on those data structures. Instances of these data types are known as objects and can contain member data and member functions defined by the programmer. The C++ programming language allows building them and in these notes students will find the main concepts. Tema: Clases en C++ Keywords: classes, objects, instance, member data, member functions, members of the class.

Resumen : Área Académica de Computación y Electrónica La Programación Orientada a Objetos (POO) es un paradigma de programación enfocado en la construcción de clases y objetos o instancias. Las clases definen tipos de estructuras de datos y las funciones que operan sobre esas estructuras de datos. Las instancias de estos tipos de datos son conocidas como objetos y pueden contener datos miembro y funciones miembro definidos por el programador. El lenguaje de programación C++ permite construirlas y en estas notas los estudiantes encontrarán los conceptos principales. Tema: Clases en C++ Palabras Clave: Clases, objetos, instancias, datos miembro, funciones miembro, miembros de la clase.

Área Académica de Computación y Electrónica Tema: Clases en C++ Introducción : El paradigma de la Programación Orientada a Objetos se basa en la creación, uso y destrucción de objetos o instancias. Un objeto es un conjunto de atributos y métodos, los atributos describen al objeto de manera única y los métodos conforman el comportamiento que se le puede dar al objeto. La unión de este conjunto en un solo paquete es llamado clase.

Definición: Una clase se puede considerar como una plantilla para crear objetos de esa clase o tipo. Una clase describe los métodos y atributos que definen las características comunes a todos los objetos de esa clase. La clave de la Programación Orientada a Objetos está en abstraer los métodos y atributos comunes a un conjunto de objetos y encapsularlos en una clase. Área Académica de Computación y Electrónica

Una clase es un tipo de objeto definido por el usuario. En otras palabras, una clase equivale a la generalización de un tipo específico de objeto. Un objeto es la concreción de una clase (instancia). Clase Instancia Área Académica de Computación y Electrónica

Clases de objetos Las clases tienen la propiedad de ocultar información, esto significa que aunque los objetos de una clase pueden saber como comunicarse entre sí a través de interfaces bien definidas, por lo general a las clases no se les permite saber como se implementan otras clases, los detalles de implementación están ocultos dentro de las mismas clases [2]. atributos métodos mensajes OBJETO Área Académica de Computación y Electrónica

A partir de una clase un programador puede crear un objeto. Una clase se puede reutilizar muchas veces para hacer muchos objetos de la misma clase. Clase Objeto 1 Objeto 2 Objeto 3 Área Académica de Computación y Electrónica

Las clases contienen datos así como un conjunto de funciones que manipulan esos datos. A los datos que componen una clase se les llama datos miembro. A las funciones que componen una clase se les llama funciones miembro (métodos). Automóvil velocidad motor transmisión velocimetro nivel_gasolina Encender( ) Apagar( ) Avanzar( ) Frenar( ) Acelerar( ) Nombre de la clase Funciones miembro Datos miembro Área Académica de Computación y Electrónica

Secciones de una clase Las clases de C++ proporcionan 3 niveles de visibilidad [1], para los diversos miembros (datos miembro y funciones miembro): Sección privada Sección protegida Sección pública En la sección privada sólo las funciones miembro de la clase pueden accesar los miembros privados, las clases descendientes tienen negado el acceso a los miembros privados de sus clases base. Área Académica de Computación y Electrónica

En la sección protegida, sólo las funciones miembro de la clase y de sus clases descendientes pueden accesar a los miembros. La sección pública especifica miembros que son visibles a las funciones miembro de la clase, las instancias de la clase, las funciones miembro de las clases descendientes y casi a cualquiera que pueda estar interesado. Método1( ) mensajes Constructor( ) destructor( ) método2( ) public protected private atributo1 atributo2 atributoN métodoN( ) OBJETO = INSTANCIA Área Académica de Computación y Electrónica

Reglas de las secciones de la clase Existen una serie de reglas que se pueden aplicar al momento de generar una clase [1], estas son: 1.Las secciones de la clase pueden aparecer en cualquier orden y más de una vez. 2.Si no se especifica ninguna sección de clase el compilador C++ trata a los miembros como privados. 3.Deberá evitar declarar los datos miembro en la sección pública a menos que tal declaración simplifique considerablemente su diseño. Los datos miembro son puestos por lo general en la sección protegida para permitir que las funciones miembro de las clases descendientes tengan acceso a ellos. Área Académica de Computación y Electrónica

4.Use funciones miembro para asignar o consultar los valores de los datos miembro. Los métodos que asignan los datos ayudan en la validación y actualización de los datos miembro si es que se requiere. 5.La clase puede tener varios constructores. 6.La clase puede tener solamente un destructor el cual debe declararse en la sección publica. 7.Las funciones miembro (así como los constructores y los destructores) que lleven varios enunciados se definen en el exterior de la declaración de la clase. Reglas de las secciones de la clase Área Académica de Computación y Electrónica

Ejemplo de una clase class Punto { private: int x; int y; public: void asignarX(int valX); void asignarY(int valY); int obtenerX(); int obtenerY(); }; void Punto::asignarX(int valX) { x= valX; } void Punto::asignarY(int valY) { y= valY; } int Punto::obtenerX() { return x; } int Punto::obtenerY() { return y; } Definición de la clase Cuerpo de la clase (desarrollo de las funciones miembro) Área Académica de Computación y Electrónica

Ejemplo del programa // programa que utiliza la clase punto #include #include "Punto.h" void main() { Punto A,B; //creación de dos objetos de tipo Punto A.asignarX(15); //asignación de la coord. x al objeto A A.asignarY(8); //asignación de la coord. y al objeto A B.asignarX(15); //asignación de la coord. x al objeto B B.asignarY(8); //asignación de la coord. y al objeto B cout<<"Los puntos tienen las siguientes coordenadas: " <<endl<<endl; cout<<"Punto A("<<A.obtenerX()<<", "<<A.obtenerY()<<")"<<endl; cout<<"Punto B("<<B.obtenerX()<<", "<<B.obtenerY()<<")"<<endl; getch(); } Área Académica de Computación y Electrónica

Existen algunas pautas para la creación y uso de las clases:  Las clases no se ejecutan (run), sólo se compilan.  Las clases se guardan como un archivo de cabecera o librería para identificar que es código que se puede reutilizar, por lo tanto se deberán guardar con la extensión.h.  Es conveniente tener el cuerpo de la clase en el mismo archivo que la declaración, para no generar demasiados archivos que nos puedan confundir al momento de corregir errores. Reglas de creación y uso Área Académica de Computación y Electrónica

Referencias: [1]Arnush, C. (1997), Aprendiendo Borland C++ 5 en 21 días, Prentice Hall. [2]Ceballos, F.J. (1997), Programación Orientada a Objetos con C++, 2 ed., Alfaomega Ra-Ma. Área Académica de Computación y Electrónica