jueves, 17 de julio de 2014

Introducción POO

POO (Programación Orientada a Objetos)

Objeto: Es una unidad dentro de un programa de computadora que consta de un estado y de un comportamiento, que a su vez constan respectivamente de datos almacenados y de tareas realizables durante el tiempo de ejecución. Un objeto puede ser creado instanciando una clase, como ocurre en la programación orientada a objetos, o mediante escritura directa de código y la replicación otros objetos, como ocurre en la programación basada en prototipos.
Ejemplo: Int a, b;
('int' es un tipo de dato y 'a' y 'b' son variables de tipo entero con las que podemos operar).
Herencia: 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 más específica.
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*/
   }
 }
Polimorfismo: En programación orientada a objetos se denomina polimorfismo a la capacidad que tienen los objetos de una clase de responder al mismo mensaje o evento en función de los parámetros utilizados durante su invocación.
Ejemplo:
 ‘ este método devuelve la suma de 2 parámetros
 Function suma(int numero1,int numero2)
 ‘  este método devuelve la suma de los 3 parámetros
 Function suma(int numero1,int numero2, int numero3)
 ‘  este método devuelve la concatenación de cadena1 y cadena2
 Function suma(String cadena1, String cadena2)



Abstracción: Consiste en aislar un elemento de su contexto o del resto de los elementos que lo acompañan. En programación, el término se refiere al énfasis en el "¿qué hace?" más que en el "¿cómo lo hace?".
Ejemplo: sencillo para comprender este concepto seria la abstracción de un Automóvil.
Acá vamos a sacar de esta entidad sus características por ejemplo: color, año de fabricación, modelo, etc. Y ahora sacamos sus métodos o funciones típicas de esta entidad como por ejemplo: frenar, encender, etc.
Interfaz: Es una colección de métodos abstractos y propiedades. En ellas se especifica qué se debe hacer pero no su implementación. Serán las clases que implementen estas interfaces las que describan la lógica del comportamiento de los métodos.
Ejemplo:
Interface InstrumentoMusical {
void tocar();
 void afinar();
String tipoInstrumento();
}
Clase: 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.
Ejemplo:
class [nombre de la clase] {
[atributos o variables de la clase]
[métodos o funciones de la clase]
[main]
}
Atributos: Que representan los datos asociados al objeto, o, lo que es lo mismo, sus propiedades o características. Los atributos y sus valores en un momento dado, determinan el estado de un objeto.
Ejemplo:
Clase cliente.
Atributos nombre, apellido.
-En java creas los atributos de la siguiente forma: Tipo de dato nombreAtributo. Ej.
String nombre, String Apellido.
El atributo debe tener una forma de asignar valor y de obtener valor. Ej
AsignarNombre(), ObtieneNombre()
AsignarApellido(), ObteneApellido()
Método: 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.
Ejemplo:
[especificadores] tipoDevuelto nombreMetodo([lista parámetros]) [throws listaExcepciones]
{    // instrucciones
   [return valor;] }
Instancia: Se refiere a una realización específica de una clase o prototipo determinados. En general, cuando se ejecuta un programa en un computador, se dice que éste se instancia. En lenguajes que crean objetos a partir de clases, un objeto es una instancia de una clase.
Ejemplo: En Java, por ejemplo, si tenemos una clase definida como: public class Perro {} Podremos acceder a la instancia que representa la clase (y es una instancia de la clase java.lang.Class<Perro>), en un programa principal de clase Main, del siguiente modo:
public class Main {
 public static void main(String... args) {
 Class<?> perroClass = Perro.class; System.out.println(perroClass); }
}
Composición: La composición es un tipo de relación dependiente en dónde un objeto más complejo es conformado por objetos más pequeños.
Ejemplo:
clase punto:public class Punto {
 int x = 0;
int y = 0;
public Punto(int x, int y) {
this.x = x;
 this.y = y;
}
 public Punto() {
 x=0;
 y=0;
}
 void desplazar(int dx, int dy){
x+=dx;
 y+=dy; }
 }
Concurrencia: Es la propiedad que distingue un objeto activo de uno no activo. Concurrencia permite que diferentes objetos actúen al mismo tiempo, usando distintos threads de control.
Visibilidad: capacidad de restringir el acceso a atributos y servicios de un objeto. Particularmente importante en el diseño e implementación.
JAVA: Es un lenguaje de programación de propósito general, concurrente, orientado a objetos y basado en clases que fue diseñado específicamente para tener tan pocas dependencias de implementación como fuera posible.
JDK: Java Development Kit o (JDK), es un software que provee herramientas de desarrollo para la creación de programas en Java. Puede instalarse en una computadora local o en una unidad de red. En la unidad de red se pueden tener las herramientas distribuidas en varias computadoras y trabajar como una sola aplicación.
JIT: En informática, la compilación en tiempo de ejecución (también conocida por sus siglas inglesas, JIT, just-in-time), también conocida como traducción dinámica, es una técnica para mejorar el rendimiento de sistemas de programación que compilan a bytecode, consistente en traducir el bytecode a código máquina nativo en tiempo de ejecución.
JVM: Una máquina virtual Java (en inglés Java Virtual Machine, JVM) es una máquina virtual de proceso nativo, es decir, ejecutable en una plataforma específica, capaz de interpretar y ejecutar instrucciones expresadas en un código binario especial (el bytecode Java), el cual es generado por el compilador del lenguaje Java.
JRE: Java Runtime Environment o JRE es un conjunto de utilidades que permite la ejecución de programas Java. Un usuario sólo necesita el JRE para ejecutar las aplicaciones desarrolladas en lenguaje Java, mientras que para desarrollar nuevas aplicaciones en dicho lenguaje es necesario un entorno de desarrollo, denominado JDK.
API de JAVA: El API Java es una Interfaz de Programación de Aplicaciones, provista por los creadores del lenguaje Java, y que da a los programadores los medios para desarrollar aplicaciones Java. Como el lenguaje Java es un Lenguaje Orientado a Objetos, la API de Java provee de un conjunto de clases utilitarias para efectuar toda clase de tareas necesarias dentro de un programa.
Grabage Collector: Un recolector de basura (del inglés Garbage Collector) es un mecanismo implícito de gestión de memoria implementado en algunos lenguajes de programación de tipo interpretado o semiinterpretado.
IDE: Es una herramienta que nos ayuda a desarrollar de una manera amigable nuestras aplicaciones, brindándonos ayudas visuales en la sintaxis, plantillas, wizards, plugins y sencillas opciones para probar y hacer un debug .Programas como Netbeans, Eclipse, Xcode, Visual Studio, son algunos de los IDE’s más populares.
IDE’S Populares en JAVA: Eclipse, Netbean, JCreator, JBuilder.


No hay comentarios:

Publicar un comentario