JAVA

Java
Desarrollador(es)
James Gosling & Sun Microsystems
Para desarrolladores de Java
Información general
Extensiones comunes.java, .class, .jar , .jad
ParadigmaOrientado a objetos,imperativo
Apareció en1995
Diseñado porSun Microsystems (Oracle Corporation)
Última versión estableJava Standard Edition 8 (18 de marzo de 2014; hace 2 años)
Tipo de datoFuerte, Estático
ImplementacionesOpenJDKHotSpot,muchas otras.
DialectosGeneric JavaPizza
Influido porPascalC++Objective-C
Ha influido aC#J#JavaScriptPHP,Python
Sistema operativoMultiplataforma
LicenciaGNU GPL / Java Community Process
  • Java SE 8 — lanzada en marzo de 2014. Cabe destacar:
    • Incorpora de forma completa la librería JavaFX.
    • Diferentes mejoras en seguridad.
    • Diferentes mejoras en concurrencia.
    • Añade funcionalidad para programación funcional mediante expresiones Lambda.
    • Mejora la integración de JavaScript.
    • Nuevas API para manejo de fechas y tiempo (date - time).
En el 2005 se calcula en 4,5 millones el número de desarrolladores y 2.500 millones de dispositivos habilitados con tecnología Java.

Principales Características de JAVA.

Java es un lenguaje de programación de propósito general orientado a objetos desarrollado por Sun Microsystems. También se puede decir que Java es una tecnología que no sólo se reduce al lenguaje sino que además provee de una máquina virtual Java que permite ejecutar código compilado Java, sea cual sea la plataforma que exista por debajo; plataforma tanto hardware, como software (el sistema operativo que soporte ese hardware). El apoyo a esta tecnología viene dado por la gran cantidad de fabricantes que apoyan esta especificación de máquina virtual.
Aprender el lenguaje de programación Java requiere tiempo y esfuerzo, pero en este curso trataremos de sentar las bases para el conocimiento general del lenguaje. El lenguaje se inspira en otros lenguajes:
  • sentencias comunes de C y C++ (sintaxis parecida a dichos lenguajes)
  • concurrencia parecida a la de Mesa (un lenguaje de investigación de Xerox)
  • interrupciones parecidas a las de Modula-3
  • tratamiento de enlace dinámico de código nuevo parecido al de Lisp
  • definiciones de interfaces parecidas a las de Objective C
  • gestión de almacenamiento automático parecida a la de Lisp

Características.

Sun describe al lenguaje Java de la siguiente manera:
  • Simple
  • Orientado a Objetos
  • Tipado estáticamente
  • Distribuido
  • Interpretado
  • Robusto
  • Seguro
  • de Arquitectura Neutral
  • Multihilo
  • con Recolector de basura (Garbage Collector)
  • Portable
  • de Alto Rendimiento: sobre todo con la aparición de hardware especializado y mejor software
  • Dinámico
Sun admite que lo dicho anteriormente son un montón de halagos por su parte, pero el hecho es que todas esas caraterísticas pueden servir para describir el lenguaje. Todas ellas son importantes, sin embargo cabe destacar tres, que son las que han propocionado tanto interés por el lenguaje: la portabilidad, el hecho de que sea de arquitectura neutral y su simplicidad. Java ofrece toda la funcionalidad de los lenguajes potentes, pero sin las características menos usadas y más confusas de éstos.
Java elimina muchas de las características de otros lenguajes como C++, para mantener reducidas especificaciones del lenguaje y añadir características muy útiles como el recolector de basura. No es necesario preocuparse de liberar memoria, el recolector se encarga de eliminar la memoria asignada. Gracias al recolector, sólo te tienes que preocupar de crear los objetos relevantes de tu sistema ya que él se encarga de destruirlos en caso de no ser reutilizados.
Java reduce en un 50% los errores más comunes de programación con lenguajes como C y C++. Entre las características más "indeseables" de C++ que se han evitado en el diseño de Java destacan: ficheros de cabecera, aritmética de punteros, sobrecarga de operadores, estructuras, uniones, conversión implícita de tipos, clases base virtuales, pre-procesador, etc.
Ventajas


*Manejo automático de la memoria. (para los que vienen de 

C/C++) " Si, no hay punteros! WOW!". El manejo de la 

memoria se hace automáticamente y utilizando el garbage 

collector. Esto ahorra SIGNIFICANTE tiempo de 

programación.

*Lenguaje Multi-plataforma: El código que escrito en java es 

leído por un interprete, por lo que su programa andará en 

cualquier plataforma.

*Programación Orientada a Objetos: Paradigma muy 

utilizado hoy en dia que facilita y organiza mucho la 

programación.

*Puede correr en el explorador y en dispositivos móviles.

*Sintaxis similar a C/C++, pero mas simple.

*Fácil de aprender.

*GRATIS

Desventajas

*Menos Eficiente, comparado a C/C++.

*Requiere un interprete.

*Algunas implementaciones y librerías pueden tener código 

rebuscado.

*Una mala implementación de un programa en java, puede 

resultar en algo muy lento. 

*Algunas herramientas tienen un costo adicional. 

No hay comentarios:

Publicar un comentario