sábado, 26 de abril de 2014

Encapsulamiento

Encapsulamiento

Encapsulamiento

Encapsulamiento: Significa reunir a todos los elementos que pueden considerarse pertenecientes a una misma entidad, al mismo nivel de abstracción. Esto permite aumentar la cohesión de los componentes del sistema. Algunos autores confunden este concepto con el principio de ocultación, principalmente porque se suelen emplear conjuntamente
La encapsulación: Se refiere a la capacidad de agrupar y condensar en un entorno con límites bien-definidos distintos elementos. Cuando hablemos de encapsulación en general siempre nos referiremos, pues, a encapsulación abstracta. De manera informal, primero generalizamos (la abstracción) y luego decimos: la generalización está bien, pero dentro de un cierto orden: hay que poner límites (la encapsulación), y dentro de esos límites vamos a meter, a saco, todo lo relacionado con lo abstraído: no sólo datos, sino también métodos, comportamientos, etc.
Por un lado es una abstracción pues, de acuerdo con la definición establecida anteriormente, es en ésta donde se definen las propiedades y atributos genéricos de determinados objetos con características comunes (recordemos el ejemplo de la sala de cine). La Clase es, por otro lado, una encapsulación porque constituye una cápsula o saco que encierra y amalgama de forma clara tanto los datos de que constan los objetos como los procedimientos que permiten manipularlos. Las Clases se constituyen, así, en abstracciones encapsuladas.


Encapsulación:

También conocida como ocultamiento. Cuando me acuesto a ver televisión no me preocupo del modo como éste funciona, o lo que hace para cambiar de canal o aumentar el volumen. A menos que seas experto en electrónica o técnico en televisores, te pasará lo mismo: no lo sabes y no te importa; sólo sabes que al presionar un botón ocurre la magia.
La encapsulación se encarga de mantener ocultos los procesos internos que necesita para hacer lo que sea que haga, dándole al programador acceso sólo a lo que necesita. Esto da dos ventajas iniciales: Lo que hace el usuario puede ser controlado internamente (incluso sus errores), evitando que todo colapse por una intervenciónindeseada (tú no quieres que tu mamá, que no tiene ni idea de electrónica, abra tu televisor y empiece a jugar con los circuitos para cambiar los canales manualmente ¿verdad?). La segunda ventaja es que, al hacer que la mayor parte del código esté oculto, puedes hacer cambios y/o mejoras sin que eso afecte el modo como los usuarios van a utilizar tu código. Sólo tienes que mantener igual la forma de acceder a él (en el caso del control de la tele, que los botones sigan siendo los mismos y que el botón de “apagado” no cambie el volumen). Por cierto, estas puertas de acceso que das a los usuarios son lo que se conoce como interfaz.


ejemplos de encapsulamiento!!!








Herencia

Herencia

la herencia en si tiene muchos conceptos pero de los que mas se ven parece ser que esto son losd oa que mas nos ayudan al momento de buscar informacion sobre este tema:

HERENCIA:
-CONCEPTOS:
herncia:Es una propiedad que permite que los objetos sean creados a partir de otros ya existentes, obteniendo características (métodos y atributos) similares a los ya existentes. Es la relación entre una clase general y otra clase mas especifica. Es un mecanismo que nos permite crear clases derivadas a partir de clase base, Nos permite compartir automáticamente métodos y datos entre clases subclases y objetos. Por ejemplo: Si declaramos una clase párrafo derivada de un clase texto todos los métodos y variables asociadas con la clase texto son automáticamente heredados por la subclase párrafo.[1]
herencia:Este quizas es el tema que mas problemas causa al estudiante; sin embargo, no es dificil en su concepción.
El objeto Persona es un objeto muy generico y limitado en si; asi que se puede considerar como un objeto Abstracto; ya que por si mismo no puede crear una persona completa; sin embargo, sus funciones basicas son las mismas en todos los seres humanos, con diferencias puntuales, asi que podemos crear dos objetos Hombre y Mujer, que hereden todas sus caracteristicas genericas como respirar, hablar, nombre, etc, del objeto Persona, y sea en la implementación de cada objeto donde empiezen las diferencias.[5]
 -Ejemplo en Java  [editar] public class Mamifero
   {

   private int patas;
   private String nombre;

   public void imprimirPatas()
   {
     System.out.println(nombre + ” tiene ” + patas + ” patas\n”);
   }

   public Mamifero(String nombre, int patas)
   {
     this.nombre = nombre;
     this.patas = patas;
   }
 }

 public class Perro extends Mamifero
   {
   public Perro(String nombre){
     super(nombre, 4);
   }
 }

 public class Gato extends Mamifero{
   public Gato(String nombre){
     super(nombre, 4);
   }
 }

 public class CreaPerro {
   public static void main(String [] args) {
     Perro bobi = new Perro(“Bobi”);
     bobi.imprimirPatas();   /*Está en la clase mamífero*/
   }
 }


algunos de los ejemplos aparte del codigo son imagenes de lo que viene siendo la herencia, se hace asi una forma visual para que se entienda mucho mejor.



por ejemplo: en esta imagen vemos que hablamos de figuras geometricas; las figuras geometricas se estan dividiendo en 3 quwe son cuadrado, triangulo y circulo.
estos tienen que ver entre si ya que son figuras pero son distintas obviamente.
Lo que hace que estas figuras esten bajo el mismo rango de figuras geometricas es que a todas se les puede sacar un area, un permetro tienen lados, bueno el circulo pero puede sacarse su radio.
existen formulas para cada figura para poder sacar las similitudes de las cuales se les esta hablando.




















Abstracción

Abstracción

La abstracción consiste en captar las características esenciales de un objeto, así como su comportamiento. Por ejemplo, piensa en unos automóviles, ¿Qué características podemos abstraer de los automóviles? O lo que es lo mismo ¿Qué características semejantes tienen todos los automóviles? Todos tendrán una marca, un modelo, número de chasis, peso, llantas, puertas, ventanas, etc. Y en cuanto a su comportamiento todos los automóviles podrán acelerar, frenar)




Expresa las características esenciales de un objeto, que son las que los distingues de los demás.




Abstracción

Anteriormente definimos que la clase es una representación abstracta de un objeto., pero ¿Qué es abstracción?

La abstracción es la capacidad de poder representar algún objeto de forma tal que pueda ser interpretado por otra persona, esta representación dependerá de la percepción de la persona que describe el objeto. Regresando al ejemplo de los autos, abajo se presentan cuatro abstracción de un auto, cada abstracción fue hecha por una persona distinta y en todas podemos concluir que estan representando un auto.






Con esto nos damos cuenta que la abstraccion nos va a ar a conocer la caracteristicas con las cuales nosotros pdremos distinguir dicho objeto de los demas.






domingo, 13 de abril de 2014

POO...?



¿Que es la Programación Orientada a Objetos?

La Programación Orientada a Objetos es un modelo de programación que utiliza objetos, ligados mediante mensajes, para la solución de problemas; Es decir, organiza los programas a imagen y semejanza de la organización de los objetos en el mundo real.



Los objetos poseen un conjunto de propiedades o atributos y un conjunto de métodos mediante los cuales muestran su comportamiento y además los objetos muestran un conjunto de interrelaciones entre ellos, mediante mensajes a los que responden mediante métodos.

Un mecanismo importante de la POO, son las clases y los objetos están contenidos dentro de ellas, por eso se dice que un objeto es la instancia de una clase.