Introduccion a la programacion orientada a objetos

Page 1

UNIVERSIDAD TÉCNICA DE AMBATO FACULTAD DE CIENCIAS HUMANAS Y DE LA EDUCACIÓN CARRERA DE DOCENCIA EN INFORMÁTICA

INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS

Alumna: Alexandra Machasilla Semestre: Cuarto “U” Ing.: Andrés Morales 2014-2014


INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS -

TABLA DE CONTENIDOS

Tabla de contenidos ........................................................................................................................................... 2 Introduccion ........................................................................................................................................................... 3 Desarrollo ................................................................................................................................................................ 4 Conclusion ............................................................................................................................................................ 12 Bibliografia .......................................................................................................................................................... 13

2


INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS -

INTRODUCCION

El desarrollo de la POO empieza a destacar durante la década de los 80 tomando en cuenta la programación estructurada, a la que engloba y dotando al programador de nuevos elementos para el análisis y desarrollo de software.

El término de Programación Orientada a Objetos indica más una forma de diseño y una metodología de desarrollo de software que un lenguaje de programación, ya que en realidad se puede aplicar el Diseño Orientado a Objetos (En inglés abreviado OOD, Object Oriented Design), a cualquier tipo de lenguaje de programación. La programación Orientada a objetos (POO) es una forma especial de

programar, más cercana a como expresaríamos las cosas en la vida real que otros tipos de programación. Con la POO tenemos que aprender a pensar las cosas de una manera distinta, para escribir nuestros programas en términos de objetos, propiedades, métodos y otras cosas que veremos rápidamente para aclarar conceptos y dar una pequeña base que permita soltarnos un poco con este tipo de programación.

3


INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS -

DESARROLLO La Programación Orientada a Objetos (POO u OOP en adelante) El diseño orientado a objetos (DOO), como otras metodología de diseños orientados a la información crean una representación del dominio del problema en el mundo real y lo transforma en un dominio de soluciones que es el software.

Es uno de los paradigmas de la programación. Parte de la programación estructurada (a la que engloba), con la gran diferencia de que nos permite modelar problemas no estructurados. La OOP no sustituye a ninguna metodología ni lenguaje de programación anterior, es decir, todos los programas que se realizan en POO se pueden realizar igualmente mediante programación estructurada, aunque si cabe destacar que con dicho paradigma el desarrollo de muchas herramientas es bastante más sencillo, como son las interfaces gráficas de usuario ( Windows,X-Window,...).

4


INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS -

El uso de la OOP hoy día es muy variado, aplícandose tanto en Sistemas Operativos (S.O.), Inteligencia Artificial (I.A.),"Aplicaciones Empresariales",SBGDOO (no muy utilizado ya que hay muchos problemas)...

5


INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS Concepto de clase y objeto El elemento fundamental a la hora de hablar de programación orientada a objetos es el concepto de objeto en sí, así como el concepto abstracto de clase. Un objeto es un conjunto de variables junto con los métodos relacionados con éstas. Contiene la información (las variables) y la forma de manipular la información (los métodos). Una clase es el prototipo que define las variables y métodos que va a emplear un determinado tipo de objeto, es la definición abstracta de lo que luego supone un objeto en memoria. Poniendo un símil

fuera del mundo de la informática, la clase podría ser el concepto de coche, donde nos vienen a la memoria los parámetros que definen un coche (dimensiones, cilindrada, maletero, etc), y las operaciones que podemos hacer con un coche (acelerar, frenar, adelantar, estacionar). La idea abstracta de coche que tenemos es lo que equivaldría a la clase, y la representación concreta de coches concretos (por ejemplo, Peugeot 307, Renault Megane, Volkswagen Polo...) serían los objetos de tipo coche

Concepto de campo, método y constructor

Toda clase u objeto se compone internamente de constructores, campos y/o métodos. Veamos qué representa cada uno de estos conceptos: un campo es un elemento que contiene información relativa a la clase, y un método es un elemento que

permite manipular la información de los campos. Por otra parte, un constructor es un elemento que permite reservar memoria para almacenar los campos y métodos de la clase, a la hora de crear un objeto de la misma.

6


INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS Modificadores de acceso Tanto las clases como sus elementos (constructores, campos y métodos) pueden verse modificados por lo que se suelen llamar modificadores de acceso, que indican hasta dónde es accesible el elemento que modifican. Tenemos tres tipos de modificadores:

privado: el elemento es accesible únicamente dentro de la clase en la que se encuentra.

Público: el elemento es accesible desde cualquier clase.

Protegido: el elemento es accesible desde la clase en la que se encuentra, y además desde las subclases que hereden de dicha clase.

7


INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS Clases abstractas e interfaces

Mediante las clases abstractas y los interfaces podemos definir el esqueleto de una familia de clases, de forma que los subtipos de la clase abstracta o la interfaz implementen ese esqueleto para dicho subtipo concreto. Por ejemplo, volviendo con el ejemplo anterior, podemos definir en la clase Animal el método dibuja () y el método imprime (), y que Animal sea una clase abstracta o un interfaz. Vemos la diferencia entre clase, clase abstracta e interfaz con este supuesto:

• En una clase, al definir Animal tendríamos que implementar el código de los métodos dibuja () e imprime (). Las subclases que hereden de Animal no tendrían por qué implementar los métodos, a no ser que quieran redefinirlos para adaptarlos a sus propias necesidades.

•En una clase abstracta podríamos implementar los métodos que nos interese, dejando sin implementar los demás (dejándolos como métodos abstractos). Dichos métodos tendrían que implementarse en las clases hijas.

•En un interfaz no podemos implementar ningún método en la clase padre, y cada clase hija tiene que hacer sus propias implementaciones de los métodos. Además, las clases hijas podrían implementar otros interfaces.

8


INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS -

Principales características de la OOP

Clase: Es el núcleo de la POO. Se define como un nuevo tipo de dato que se utiliza para crear objetos de ese tipo.

Metaclases: Son clases cuyos ejemplos son a su vez clases. "Java" tiene esta característica pero no es aplicable a todos los lenguajes OOP, como pasa con C++.

Objetos: Un objeto es una instancia o ejemplo de una clase. Cada objeto tiene un estado definido por sus atributos y un comportamiento.

Identidad: Aquella propiedad que distingue al objeto de los demás (salvo objetos stateless).

Abstracción: Capacidad de conceptualizar el problema en forma de clases (tipos) y variables pertenecientes a estos tipos (instancias). Hacemos clasificaciones

9


INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS -

Encapsulación

Capacidad de derivar de una clase genérica, clases diferentes que hereden las propiedades y métodos de su clase antecesora.

Herencia

Polimorfismo

Es la propiedad por la cual la existencia de un objeto transciende tanto en el tiempo como en el espacio

Capacidad de aunar dentro de una clase las propiedades y métodos para trabajar con sus datos internos.

Capacidad para que varias clases derivadas de una antecesora utilicen el mismo método de forma diferente.

Persistencia

10


INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS -

Ventajas que proporciona la OOP frente a otros lenguajes de programación

Reutilización Comprensión Uniformidad La representación de los objetos lleva implícita tanto el análisis como el diseño y codificación

Los datos que componen los objetos y los procedimientos que los manipulan, están agrupados en clases

Flexibilidad Al relacionar los métodos y propiedades, cualquier cambio quedará reflejado automáticamente

La noción de objeto permite que programas que traten las mismas estructuras de datos reutilicen las definiciones de objetos empleadas

11


INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS -

CONCLUSION

 El avance de la Programación Orientada a Objetos inicia a los años 80 donde este abarca nuevos elementos y análisis para el programador.  La programación estructurada es la que ayuda a moldear

problemas no estructurados.  Además en Programación Orientada a Objetos exige a pensar rápidamente y reflexionar ya que tenemos que ver las cosas de manera distinta para poder realizar otros programas.  La programación nos permite experimentas las cosas de una manera diferente.  Con esto lo podemos representar como un dominio de un problema y transforma en un dominio de soluciones del software.

12


INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS -

BIBLIOGRAFIA http://www.monografias.com/trabajos14/progorie/progorie.shtml#ixzz3JZ6bmT1u http://j2ee-manunuwi.blogspot.com/2008/01/oop.html

13


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.