JAVA
JAVA
JAVA
2023
Diego Sebastián Galean Sánchez
Franco Luciano Schaefer
Gabriel Alejandro Bottillo nine
Lucas Jesús Abraham Aguirre
Lourdes Acevedo
Valentino Mónaco
METODOLOGÍA DE LA INVESTIGACIÓN
Docentes:
Natalia Gabriela Spini
Maria Cecilia Lupani
Lorena Palermo
INFORME JAVA UNIVERSIDAD TECNOLOGICA
NACIONAL
Página 1 de 21
Índice:
ABSTRACT:.................................................................................3
Introducción:..................................................................................4
¿Por qué Java es tan popular..........................................................6
y por qué la necesito?.....................................................................6
¿Para qué se usa el lenguaje...........................................................7
de programación Java?...................................................................7
¿Qué necesito para programar en Java?.........................................9
¿Cómo empezar a aprender Java?................................................10
Diferencias entre c++ y java........................................................11
¿Qué son los Applets de Java?.....................................................12
Componentes de la Estructura Java.............................................13
Árbol de Nodo en Java.................................................................15
Java: sus ventajas, oportunidades y futuro...................................16
Conclusión...................................................................................18
Bibliografía:.................................................................................19
Página 2 de 21
ABSTRACT:
Página 3 de 21
Introducción:
Java es un lenguaje de programación de alto nivel que fue desarrollado por James
Gosling y su equipo en Sun Microsystems a principios de la década de 1990.
La historia de Java comenzó en 1991 cuando un grupo de ingenieros de Sun
Microsystems, liderado por James Gosling, inició un proyecto llamado "Green
Project". La idea era desarrollar un lenguaje de programación que pudiera
utilizarse en dispositivos electrónicos y electrodomésticos. Este proyecto evolucionó
en el desarrollo de un lenguaje llamado inicialmente "Oak" (por el roble que estaba
afuera de la oficina de Gosling). Oak fue diseñado para ser portable, seguro y orientado
a objetos desde el principio.
En 1995, Sun Microsystems lanzó oficialmente Java con el eslogan "Write Once, Run
Anywhere" (Escribe una vez, ejecuta en cualquier lugar). Este eslogan reflejaba la
capacidad de Java para ser utilizado en diferentes plataformas y sistemas operativos sin
la necesidad de reescribir el código.
Ganó popularidad rápidamente en la industria de la tecnología debido a su capacidad
para crear applets, pequeñas aplicaciones que se podían incrustar en páginas web y
ejecutarse en un navegador. Esto permitió la creación de contenido interactivo en la
web antes de la llegada de JavaScript y otras tecnologías web modernas. Luego se
expandió más allá de ser solo un lenguaje y se convirtió en una plataforma completa con
su propio entorno de ejecución (la Máquina Virtual Java o JVM) y una amplia biblioteca
estándar (la API de Java). Esto permitió el desarrollo de aplicaciones empresariales
robustas y escalables.
Actualmente, Java sigue siendo un lenguaje de programación ampliamente
utilizado en la industria, especialmente en el desarrollo de aplicaciones empresariales,
aplicaciones móviles Android y en la creación de sistemas embebidos.
La palabra “Java” (lenguaje de programación orientado a objetos) viene del topónimo
Java, una isla de Indonesia, entre Sumatra, Borneo y Bali. Esta isla produce mucho café,
de ahí que java, en inglés es sinónimo de café. Los programadores le dieron este
nombre, pues tomaban mucho café cuando crearon este lenguaje.
La historia de Java es un testimonio de su longevidad y versatilidad como lenguaje de
programación. A lo largo de los años, ha evolucionado y se ha adaptado para satisfacer
las demandas cambiantes de la industria de la tecnología.
Introduciendo un poco, hay una característica esencial de JAVA: Lenguaje orientado a
Objetos. (“OO”), se refiere a un método de programación y al diseño del lenguaje.
Aunque hay muchas interpretaciones para OO, una primera idea es diseñar el software
de forma que los distintos tipos de datos que usen estén unidos a sus operaciones. Así,
los datos y el código (funciones o métodos) se combinan en entidades llamadas objetos.
Un objeto puede verse como un paquete que contiene el “comportamiento” (el código) y
el “estado” (datos).
Página 4 de 21
El principio es separar aquello que cambia de las cosas que permanecen
inalterables. Frecuentemente, cambiar una estructura de datos implica un cambio en el
código que opera sobre los mismos, o viceversa. Esta separación en objetos coherentes e
independientes ofrece una base más estable para el diseño de un sistema software. El
objetivo es hacer que grandes proyectos sean fáciles de gestionar y manejar, mejorando
como consecuencia su calidad y reduciendo el número de proyectos fallidos.
La sintaxis de Java se deriva en gran medida de C++. Pero a diferencia de este, que
combina la sintaxis para programación genérica, estructurada y orientada a objetos,
Java fue construido desde el principio para ser completamente orientado a objetos. Todo
en Java es un objeto (salvo algunas excepciones), y todo en Java reside en alguna clase
(recordemos que una clase es un molde a partir del cual pueden crearse varios objetos).
A diferencia de C++, Java no tiene sobrecarga de operadores o herencia
múltiple para clases, aunque la herencia múltiple está disponible para interfaces.
Otra gran diferencia con C++, es que Java no depende tanto de la plataforma en la que
se esté ejecutando, ya que este lenguaje traduce el código en código de bytes, lo que lo
hace muy portátil.
Página 5 de 21
¿Por qué Java es tan popular
y por qué la necesito?
Página 6 de 21
Estos rasgos hacen que Java sea un lenguaje de programación versátil y relativamente
fácil de aprender que es muy popular entre las empresas de software y tecnología. Si se
quiere hacer carrera en codificación o programación informática, saber cómo escribir
Java es una habilidad muy valiosa.
Aplicaciones móviles:
Muchas aplicaciones móviles, si no la mayoría, se compilan con Java. Este es
uno de los lenguajes preferidos de los desarrolladores de aplicaciones móviles
debido a su plataforma estable y su versatilidad. Entre las aplicaciones móviles
populares codificadas en Java se incluyen Spotify, Signal y Cash App.
Página 7 de 21
Aplicaciones web:
Una amplia variedad de aplicaciones web se desarrollan con Java. Twitter y
LinkedIn se encuentran entre las más conocidas.
Software empresarial:
El software empresarial está pensado para servir a un grupo o una organización
de gran tamaño. Incluye software como sistemas de facturación y programas de
administración de cadenas de suministros. La alta escalabilidad de Java lo
convierte en un lenguaje atractivo para los desarrolladores que escriben software
empresarial.
Juegos:
Entre los juegos populares escritos en el lenguaje de programación Java se
incluyen los originales Minecraft y RuneScape.
Página 8 de 21
Aplicaciones de loT:
Las aplicaciones de IoT están en todas partes (televisores inteligentes, coches,
maquinaria pesada, instalaciones de trabajo, etc.) y Java se usa para programar
muchas de ellas. Java es una opción popular para los desarrolladores de IoT por
la facilidad con la que puede transferirse su código entre plataformas.
Página 9 de 21
JDK: Lo primero que necesitas para poder desarrollar en Java es el "Java
Development Kit". Es un software gratuito que contiene todo aquello que
requiere tu máquina para trabajar con el lenguaje, tanto la JVM como las
librerías para realizar programas de Java, desde los más básicos hasta los más
complejos y específicos. Para obtener el JDK es necesaio descargarlo desde la
página de Oracle.
Aprende la sintaxis básica: Comienza con los conceptos fundamentales de Java, como
variables, tipos de datos, operadores, estructuras de control (bucles y condicionales), y
funciones (métodos en Java).
Programación orientada a objetos: Java es un lenguaje de programación orientado a
objetos, por lo que es esencial entender cómo funciona.
Recursos de aprendizaje: Utilizar recursos de aprendizaje en línea, libros y tutoriales.
Algunas recomendaciones incluyen "Java: The Complete Reference" de Herbert Schildt,
tutoriales en línea como los de Oracle, y cursos en plataformas educativas como
Coursera, edX o Udemy.
Práctica: La práctica es esencial. Escribe código regularmente para afianzar tus
conocimientos. Comienza con ejercicios simples y avanza hacia proyectos más
complejos a medida que adquieras confianza.
Proyectos personales: Una vez que tengas un conocimiento básico, comienza a trabajar
en proyectos personales. Esto puede ser cualquier cosa que te interese, como una
aplicación de lista de tareas, un juego simple, etc.
Página 10 de 21
Depuración y resolución de problemas: Aprende a utilizar las herramientas de
depuración de tu IDE y practica la resolución de problemas. Los errores son una parte
normal del proceso de aprendizaje.
Comunidad y recursos en línea: Unirse a comunidades en línea, foros o grupos de
discusión, donde puedas hacer preguntas y aprender de otros programadores de Java.
Cursos: Considera tomar cursos en línea o presenciales. Algunos ofrecen certificaciones
que pueden ser útiles para tu carrera.
Actualización constante: Java y su ecosistema evolucionan con el tiempo. Mantente
actualizado con las últimas tendencias y cambios en el lenguaje.
1
Xamarin es una compañía de software estadounidense, adquirida por Microsoft y con sede principal en
San Francisco, fundada en mayo de 2011 por Nat Friedman y Miguel de Icaza.
Página 11 de 21
¿Qué son los Applets de Java?
Java se caracteriza por ser uno de los lenguajes más utilizados para el desarrollo de
páginas web. Una de las razones de dicha característica, es el desarrollo de los llamados
applets. Un applet es un programa escrito en Java y que forma parte de los componentes
de una página de Internet. La principal idea de estos es que sean lo suficientemente
pequeños como para proporcionar una funcionalidad específica y claramente definida.
Uno de sus usos fue para proporcionar funcionalidad a páginas de Internet que no puede
ser satisfecha usando únicamente HTML.
Lo que hace muy conveniente el uso de applets, es que su código es independiente del
sistema operativo de la computadora, esto se debe a que el que lo ejecuta es el
navegador, gracias a la utilización de la máquina virtual Java (Java Virtual Machine).
El uso de Java applets inició junto con el lenguaje mismo, en 1995, y se volvió popular
durante los años que le siguieron. Posteriormente se escribieron applets que se
implementaron con CSS y DHTML.
Sin embargo, a lo largo de su historia, los applets presentaron múltiples puntos en contra
que dejaron a esta herramienta en declive, y a Oracle sin muchas ideas para mejorarla.
La gran mayoría de estos puntos en contra se deben a la vulnerabilidad y a la falta de
seguridad de los applets, es por esto que muchos navegadores modernos, como Edge y
Chrome, bloquearon su uso por defecto. Desde inicios de la década de los 2010 se
volvió conocido que los hackers explotaban continuamente vulnerabilidades en código
Java, la única solución a este problema fue deshabilitar Java, y, mediante advertencias,
dejar que los usuarios elijan si desean ejecutar estos applets y atender a las posibles
consecuencias.
Hoy en día, la tecnología de los applets parece desaparecer lentamente, esto se debe a
los graves fallos de seguridad mencionados anteriormente, y por el rápido crecimiento
de HTML5, lenguaje que pudo encontrar alternativas para reemplazar el uso de los
applets, y, por ende, ya no lo necesita.
Página 12 de 21
Componentes de la Estructura Java
La estructura del lenguaje Java se basa en una serie de elementos y conceptos que son
fundamentales para escribir programas en este lenguaje de programación. Por lo que a
continuación se detallara la descripción de los componentes clave de la estructura de
Java:
Clases y Objetos: En Java, todo se basa en clases y objetos. Una clase es un plano o
plantilla que define los atributos y comportamientos que los objetos de esa clase
tendrán. Por lo que “clase” es una representación abstracta de un conjunto de objetos
que comparten los mismos atributos y comportamiento, es decir, una clase describe un
tipo de objetos. En este sentido un “objeto” es una instancia de una clase, tiene una
identidad propia y un estado. La identidad de un objeto se define por su identificador y
el estado se determina por el valor de sus atributos. Asimismo, el comportamiento de un
objeto queda determinado por el comportamiento la clase a la que pertenece.
En cuanto a “clase”, se divide en dos partes, la declaración y su definición. La
declaración comienza por la palabra class y a continuación se indica el nombre de la
clase. Por lo que la definición de una clase queda delimitada por la llave de inicio { y la
llave de fin }. En el bloque de definición de la clase se declaran los atributos de los
objetos y los métodos que definen su comportamiento.
Métodos: Los métodos son funciones que determinan el comportamiento de los objetos.
Un objeto se comporta de una u otra forma dependiendo de los métodos de la clase a la
que pertenece. Todos los objetos de una misma clase tienen los mismos métodos y el
mismo comportamiento
Existen tres tipos de métodos: métodos de consulta, métodos modificadores y
operaciones. Los métodos de consulta sirven para extraer información de los objetos, los
métodos modificadores sirven para modificar el valor de los atributos del objeto y las
operaciones definen el comportamiento de un objeto.
Página 13 de 21
Variables y Tipos de Datos: Java es un lenguaje fuertemente tipado, se debe declarar las
variables y especificar su tipo antes de usarlas.
Un programa Java utiliza variables para almacenar valores, realizar cálculos, modificar
los valores almacenados, mostrarlos por la consola, almacenarlos en disco, enviarlos por
la red, etc. Una variable almacena un único valor.
La misma se define por un nombre, un tipo y el rango de valores que puede almacenar.
El nombre de una variable permite hacer referencia a ella y debe cumplir las reglas
aplicables a los identificadores. El tipo indica el formato de los valores que puede
almacenar la variable: cadenas de caracteres, valores lógicos, números enteros, números
reales o tipos de datos complejos. El rango indica los valores que puede tomar la
variable.
Los tipos de datos incluyen enteros (int, long), números de punto flotante (float,
double), caracteres (char), booleanos (boolean), y otros.
Operadores: Java admite una variedad de operadores, como aritméticos (+, -, *, /), de
asignación (=), de comparación (==, !=, <, >), y lógicos (&&, ||) y otros para realizar
cálculos y tomar decisiones en el código.
La siguiente tabla muestra el orden de prioridad de los operadores. Indica qué operador
se aplica primero en una expresión.
Página 14 de 21
puede incluir otra estructura de control y dentro de este nuevo bloque se puede incluir
otra estructura de control y así sucesivamente. Cuando una estructura contiene otra
estructura, se dice que son estructuras de control anidadas.
Java proporciona estructuras de control como bucles (for, while, do-while) y estructuras
condicionales (if, else, switch) para controlar el flujo del programa y tomar decisiones.
Herencia: Java es un lenguaje orientado a objetos, lo que significa que admite la
herencia. Las clases pueden heredar propiedades y métodos de otras clases, lo que
fomenta la reutilización de código y la creación de jerarquías de clases. En Java todas
las clases están relacionadas en una única jerarquía de herencia puesto que toda clase
hereda explícitamente de otra o bien implícitamente de Object.
Un "árbol de nodos" en Java es una estructura de datos que consta de nodos conectados
de una manera jerárquica similar a un árbol. Cada nodo en el árbol contiene datos y
puede tener cero o más nodos hijos, que también son nodos en sí mismos. Los nodos se
utilizan para representar información de manera jerárquica, lo que facilita la
organización y búsqueda de datos.
Los árboles de nodos se utilizan en una variedad de aplicaciones, como:
Árbol de directorios en sistemas de archivos: Los directorios y archivos en un sistema
de archivos se pueden representar mediante un árbol de nodos, donde los directorios son
nodos internos con nodos hijos que son archivos y subdirectorios.
Página 15 de 21
Árboles de expresiones: En compiladores y evaluadores de expresiones matemáticas,
los árboles de nodos se utilizan para representar la estructura de una expresión, lo que
facilita su evaluación.
Árboles de búsqueda: En estructuras de datos como los árboles binarios de búsqueda,
los nodos se organizan de manera que los valores más pequeños se encuentran en el
subárbol izquierdo y los valores más grandes en el subárbol derecho.
Árboles genealógicos: En genealogía, se pueden usar árboles de nodos para representar
relaciones familiares.
Para implementar un árbol de nodos en Java, se puede crear clases que representen los
nodos y proporcionen métodos para la inserción, eliminación, búsqueda y recorrido de
los nodos, según las necesidades específicas de la aplicación. La estructura y la lógica
del árbol de nodos dependerán de la aplicación particular en la que se esté utilizando.
Página 16 de 21
2. ¿Qué ventajas tiene utilizar Java para desarrollar aplicaciones?
Las ventajas de utilizar Java para desarrollar aplicaciones incluyen la portabilidad, la
seguridad, la orientación a objetos, un sólido ecosistema de desarrollo, rendimiento
escalable, facilidad de aprendizaje y aplicabilidad en aplicaciones web y empresariales.
Java es una elección sólida debido a su versatilidad y confiabilidad en una amplia
variedad de aplicaciones.
Página 17 de 21
Conclusión
Página 18 de 21
Bibliografía:
Página 19 de 21
https://es.quora.com/Cu%C3%A1les-son-las-principales-diferencias-entre-C-y-
Java#:~:text=La%20diferencia%20entre%20Java%20y%20C%2B%2B%20es
%20que%20este%20%C3%BAltimo,posible%20programar%20orientado%20a
%20objeto.
Página 20 de 21