Está en la página 1de 6

1.

Lenguaje Java
Java es un lenguaje de programación y una plataforma informática que fue
comercializada por primera vez en 1995 por Sun Microsystems.

El lenguaje de programación Java fue desarrollado originalmente por James


Gosling, de Sun Microsystems (constituida en 1983 y posteriormente
adquirida el 27 de enero de 2010 por la compañía Oracle), y publicado en
1995 como un componente fundamental de la plataforma Java de Sun
Microsystems. Su sintaxis deriva en gran medida de C y C++, pero tiene
menos utilidades de bajo nivel que cualquiera de ellos. Las aplicaciones de
Java son compiladas a bytecode (clase Java), que puede ejecutarse en
cualquier máquina virtual Java (JVM) sin importar la arquitectura de la
computadora subyacente.

2. historia de lenguaje de programación Java


Java se creó como una herramienta de programación para ser usada en un proyecto
de set-top-box en una pequeña operación denominada the Green Project en Sun
Microsystems en 1991. El equipo (Green Team), compuesto por trece personas y
dirigido por James Gosling, trabajó durante 18 meses en Sand Hill Road, en Menlo
Park, para desarrollarlo.
El lenguaje se denominó inicialmente Oak (por un roble que había fuera de la oficina
de Gosling), luego pasó a llamarse Green tras descubrir que Oak era ya una marca
comercial registrada para adaptadores de tarjetas gráficas, y finalmente se le
renombró Java.
Es frecuentada por algunos de los miembros del equipo. Pero no está claro si es un
acrónimo o no, aunque algunas fuentes señalan que podría tratarse de las iniciales
de sus diseñadores: James Gosling, Arthur Van Hoff y Andy Bechtolsheim. Otros
abogan por el siguiente acrónimo, Just Another Vague Acronym ("sólo otro acrónimo
ambiguo más"). La hipótesis que más fuerza tiene es la de que Java debe su
nombre a un tipo de café disponible en la cafetería cercana; de ahí que el icono de
Java sea una taza de café caliente. Un pequeño signo que da fuerza a esta teoría
es que los cuatro primeros bytes (el número mágico) de los archivos.class que
genera el compilador, son en hexadecimal, 0xCAFEBABE. A pesar de todas estas
teorías, el nombre fue sacado al parecer de una lista aleatoria de palabras.
Los objetivos de Gosling eran implementar una máquina virtual y un lenguaje con
una estructura y sintaxis similar a C++. Entre junio y julio de 1994, tras una sesión
maratoniana de tres días entre John Gage, James Gosling, Patrick Naughton,
Wayne Rosing y Eric Schmidt, el equipo reorientó la plataforma hacia la Web.
Sintieron que la llegada del navegador web Mosaic propiciaría que Internet se
convirtiese en un medio interactivo, como el que pensaban era la televisión por
cable. Naughton creó entonces un prototipo de navegador, WebRunner, que más
tarde sería conocido como HotJava.
En 1994, se les hizo una demostración de HotJava y la plataforma Java a los
ejecutivos de Sun. Java 1.0a pudo descargarse por primera vez en 1994, pero hubo
que esperar al 23 de mayo de 1995, durante las conferencias de SunWorld, a que
vieran la luz pública Java y HotJava, el navegador Web. El acontecimiento fue
anunciado por John Gage, el director científico de Sun Microsystems. El acto estuvo
acompañado por una pequeña sorpresa adicional, el anuncio por parte de Marc
Andreessen, vicepresidente ejecutivo de Netscape, de que Java sería soportado en
sus navegadores. El 9 de enero del año siguiente, 1996, Sun fundó el grupo
empresarial JavaSoft para que se encargará del desarrollo tecnológico. Dos
semanas más tarde la primera versión de Java fue publicada.

3. ¿Que es un lenguaje orientado a objetos?

Lenguaje orientado a objetos Se le llama así a cualquier lenguaje de


programación que implementa los conceptos definidos por la programación
orientada a objetos. Cabe notar que los conceptos definidos en la
programación orientada a objetos no son una condición sino que son para
definir que un lenguaje está orientado a objetos.

4. ¿Que es un objeto?

Un objeto es una unidad dentro de un programa informático que tiene un


estado, y un comportamiento. Es decir, tiene una serie de datos almacenados
y tareas que realiza con esos datos en el tiempo de ejecución.

5. ¿Que es una clase?

Una clase es una herramienta que tenemos para modelar objetos de


programación, lograr que se comporten como queremos y hacer tantas
copias de estos como necesitemos.

6. ¿Que es un atributo de una clase?

Los atributos de una Clase son aquellas variables que compartirán todos los
objetos que creemos de esta Clase.

7. ¿Que es un método de una clase?

Cualquier función definida en una clase es un método. Los métodos reciben


como primer argumento una instancia de la clase, que convencionalmente se
denomina self.
8. ¿Qué es el JDK?

El JDK es el Java Development Kit, que traducido al español significa,


Herramientas de desarrollo para Java, en cortas palabras es un conjunto de
herramientas (librerías y programas) que permiten desarrollar en lenguaje
Java. Cuando hablamos de desarrollar esto incluye compilar, ejecutar,
generar documentación, etc.

9. ¿Qué es el 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.

10. ¿Qué es el Java Runtime environment?

Es una plataforma de software, también se conoce como plataforma Java.


Consiste en una interfaz de programación, una máquina virtual y varias
bibliotecas de programas. El lenguaje de programación Java se proporciona
en la API (application and programming interface, o interfaz de aplicación y
programación).

11. Características del lenguaje java.

● Lenguaje totalmente orientado a Objetos. Todos los conceptos en los que


se apoya esta técnica, encapsulación, herencia, polimorfismo, etc., están
presentes en Java.

● Disponibilidad de un amplio conjunto de bibliotecas. Como ya se


mencionó anteriormente, Java es algo más que un lenguaje. La programación
de aplicaciones con Java se basa no solo en el empleo del juego de
instrucciones que componen el lenguaje, sino, fundamentalmente, en la
posibilidad de utilizar el amplísimo conjunto de clases que Sun pone a
disposición del programador y con las cuales es posible realizar
prácticamente cualquier tipo de aplicación.

● Lenguaje simple. Java posee una curva de aprendizaje muy rápida. Resulta
relativamente sencillo escribir applets interesantes desde el principio. Todos
aquellos familiarizados con C++ encontrarán que Java es más sencillo, ya
que se han eliminado ciertas características, como los punteros. Debido a su
semejanza con C y C++, y dado que la mayoría de la gente los conoce
aunque sea de forma elemental, resulta muy fácil aprender Java. Los
programadores experimentados en C++ pueden migrar muy rápidamente a
Java y ser productivos en poco tiempo.

● Distribuido. Java proporciona una colección de clases para su uso en


aplicaciones de red, que permiten abrir sockets y establecer y aceptar
conexiones con servidores o clientes remotos, facilitando así la creación de
aplicaciones distribuidas.

● Interpretado y compilado a la vez. Java es compilado, en la medida en que


su código fuente se transforma en una especie de código máquina, los
bytecodes, semejantes a las instrucciones de ensamblador. Por otra parte, es
interpretado, ya que los bytecodes se pueden ejecutar directamente sobre
cualquier máquina a la cual se hayan portado el intérprete y el sistema de
ejecución en tiempo real (run-time).

● Robusto. Java fue diseñado para crear software altamente fiable. Para ello
proporciona numerosas comprobaciones en compilación y en tiempo de
ejecución. Sus características de memoria liberan a los programadores de
una familia entera de errores (la aritmética de punteros), ya que se ha
prescindido por completo de los punteros, y la recolección de basura elimina
la necesidad de liberación explícita de memoria.

● Seguro (?). Dada la naturaleza distribuida de Java, donde las applets se


bajan desde cualquier punto de la Red, la seguridad se impuso como una
necesidad de vital importancia. A nadie le gustaría ejecutar en su ordenador
programas con acceso total a su sistema, procedentes de fuentes
desconocidas. Así que se implementaron barreras de seguridad en el
lenguaje y en el sistema de ejecución en tiempo real.

● Indiferente a la arquitectura. Java está diseñado para soportar aplicaciones


que serán ejecutadas en los más variados entornos de red, desde Unix a
Windows Nt, pasando por Mac y estaciones de trabajo, sobre arquitecturas
distintas y con sistemas operativos diversos. Para acomodar requisitos de
ejecución tan diversos y variopintos, el compilador de Java genera bytecodes:
un formato intermedio indiferente a la arquitectura diseñado para transportar
el código eficientemente a múltiples plataformas hardware y software. El resto
de problemas los soluciona el intérprete de Java.

● Portable. La indiferencia a la arquitectura representa sólo una parte de su


portabilidad. Además, Java especifica los tamaños de sus tipos de datos
básicos y el comportamiento de sus operadores aritméticos, de manera que
los programas son iguales en todas las plataformas. Estas dos últimas
características se conocen como la Máquina Virtual Java (JVM).

● Alto rendimiento.

Sabemos que Java es más rápido que otras lenguas de programación


desarrolladas habitualmente debido a que el bytecode de Java está mucho
más cerca del código nativo. Aún es un poco más pausado que una lengua
acopiada como por ejemplo, C ++. Java es una lengua efectuada por lo que
es más lento que los expresados compilados, como por ejemplo, C, C ++,
entre otros.
● Multihebra. Hoy en día ya se ven como terriblemente limitadas las
aplicaciones que sólo pueden ejecutar una acción a la vez. Java soporta
sincronización de múltiples hilos de ejecución (multithreading) a nivel de
lenguaje, especialmente útiles en la creación de aplicaciones de red
distribuidas. Así, mientras un hilo se encarga de la comunicación, otro puede
interactuar con el usuario mientras otro presenta una animación en pantalla y
otro realiza cálculos.

● Dinámico. El lenguaje Java y su sistema de ejecución en tiempo real son


dinámicos en la fase de enlazado. Las clases sólo se enlazan a medida que
son necesitadas. Se pueden enlazar nuevos módulos de código bajo
demanda, procedente de fuentes muy variadas, incluso desde la Red.

● Produce applets. Java puede ser usado para crear dos tipos de programas:
aplicaciones independientes y applets. Las aplicaciones independientes se
comportan como cualquier otro programa escrito en cualquier lenguaje, como
por ejemplo el navegador de Web HotJava, escrito íntegramente en Java. Por
su parte, las applets son pequeños programas que aparecen embebidos en
las páginas Web, como aparecen los gráficos o el texto, pero con la
capacidad de ejecutar acciones muy complejas, como animar imágenes,
establecer conexiones de red, presentar menús y cuadros de diálogo para
luego emprender acciones, etc.

También podría gustarte