lunes, 26 de enero de 2015

1.2.3  IDES para Java.

A continuación una lista de IDE  (Integrated development environment)¸ Entorno de Desarrollo Integrado para java.
·      JDeveloper: Oracle, la verdad comparada con NetBeans y Eclipse se es muy sencillo, pero es muy poderoso y aunque no es tan rico en funcionalidades. sirve para crear prácticamente cualquier proyecto de software, además tiene integrado ADF que es una tecnología propia de ORACLE.
·   Netbeans: Muy interesante y con muchas funcionalidades de un solo click, web services con un solo click, EJB con un solo click… muy entretenido de usar y contiene una alta variedad de pluging hechos por la comunidad.
·         Eclipse: Uno de los mejores ide para java, no por nada es utilizados en Rational de IBM.
·         Rational: Basado en eclipse pero con el poderoso servidor de websphere, uno de los mas usados en empresas de alto nivel que tienen varia tecnología IBM, si quieren utilizarlo pueden bajar el trial o utilizar eclipse, PERO CON ALTO COSTO.
·         BlueJ: Para los que empiezan en teoría  ayuda para la programación orientada a objetos y otras buenas prácticas de la programación.

1.1.4 ¿Qué es Netbeans?

Esta plataforma permite que las aplicaciones de Java sean desarrolladas una interfaz o ventana para empezar a programar en Java. En pocas palabras es nuestra interfaz  que nos ayudara a desarrollar aplicaciones del lenguaje Java.
Historia de netbeans
Netbeans comenzó como un proyecto estudiantil en la republica checa el cual originalmente se llamó Xelfi en el año de 1996, en la universidad de carolina en Praga bajo la facultad de física- matemáticas, su líder principal se llamó Jarda Toulach.



Versiones de Netbeans   
·         NetBeans 3.5  Junio del 2003   
·         NetBeans 3.6 Abril 2004
·         NetBeans 4.0  Diciembre 2004
·         NetBeans 4.1  Mayo 2005
·         NetBeans 5.0  Enero de 2006
·         NetBeans 5.5  Octubre 30 del 2006
·         NetBeans 5.5.1  Mayo 24 del 2006
·         NetBeans 6.0  Diciembre 3 del 2007   
·         NetBeans 6.1  abril 8 del 2008  
·         NetBeans 6.5  Noviembre 25 2008   
·         NetBeans 6.7  29 de Junio del 2009   
·         NetBeans 6.7.1  27 de Julio del 2009  
·         NetBeans 6.8  10 de Diciembre del 2009   
·         NetBeans 6.9  15 de Junio del 2010  
·         NetBeans 6.9.1  4 de Agosto del 2010.
·         NetBeans 7.1. 
·         Netbeans 7.4 15 ctubre del 2013


Ventana de trabajo de netbeans  

lunes, 12 de enero de 2015

CARACTERÍSTICAS DE POO

1.2 Características de la POO

Existe un acuerdo acerca de las características que  contempla  la  Programación orientación  a objetos. En si no hay un acuerdo aceptado por todo el mundo respecto a cuáles son las características que definen la POO, pero al menos todos concuerdan en estas cuatro:
  1. Abstracción.
  2. Encapsulación.
  3. Herencia.
  4. Polimorfismo.

1.2.1 Abstracción:

Cada vez que pronunciamos una palabra, realmente lo que hacemos es asociar ese sonido (o ese conjunto de garabatos al escribir) con una serie de cosas. Decimos que un ave es tal cosa, que una silla es tal otra, etc.
Cuando vamos a aplicar la POO, lo primero que debemos hacer es cumplir con una vieja máxima de guerra: Divide y Vencerás. Es decir, lo que hacemos es seccionar nuestro código en grupos de código más pequeño que, al unirlos, hacen el trabajo. Un buen ejemplo de abstracción es el cuerpo humano, aunque el cuerpo es una unidad, está dividido en lo que conocemos por sistemas (el sistema respiratorio, el sistema linfático, cardiovascular, etc., etc.). Estos sistemas, a su vez están compuestos por otros más pequeños: los órganos, y así sucesivamente. La abstracción nos permite dividir nuestro programa en distintos objetos que se agrupan para formar cosas más complejas.
Pero ¿Qué es realmente la abstracción? Básicamente es la capacidad de separar los elementos (al menos mentalmente) para poder verlos de forma singular. Como cuando describimos el cuerpo humano y decimos cabeza, brazo(s), pierna(s), etc.

1.2.2 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 o atributos  internos que necesita para realizar su función  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ón indeseada (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.

1.2.3 Herencia

Permite definir nuevas clases partiendo de otras ya existentes; las clases que se derivan de otras automáticamente heredan sus métodos.
Uno de los elementos (a mi modo de ver) más interesantes de la P.O.O. La herencia es la capacidad que tiene una clase de derivar las propiedades y métodos de otra (suena a chino ¿no? Calma, lo veremos luego con paciencia). Tratemos de explicarlo con un ejemplo:
Decimos que una gallina es un ave; esto quiere decir que las gallinas tienen características comunes con otras aves (pico, plumas, etc.), es decir que la gallina hereda las características comunes de todas las aves. Pero además, resulta que un ave es un animal, lo que significa que también comparte características comunes al caballo, el perro, el hombre (s, somos animales) y cualquier otra cosa que pueda ser clasificada como animal.
La herencia nos permite, entre otras cosas, evitar tener que escribir el mismo código una y otra vez, puesto que al definir que una categoría (que en programación llamaremos clase) pertenece a otra, automáticamente estamos atribuyéndoles las características generales de la primera, sin tener que definirlas de nuevo.


El polimorfismo se refiere a la capacidad para que varias clases derivadas de una antecesora utilicen un mismo método de forma diferente.
Por ejemplo, podemos crear dos clases distintas: Pez y Ave que heredan de la superclase Animal. La clase Animal tiene el método abstracto mover que se implementa de forma distinta en cada una de las subclases (peces y aves se mueven de forma distinta).