Tecnologia Java

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 9

UNIVERSIDAD NACIONAL

“PEDRO RUIZ GALLO”

FACULTAD DE INGENIERIA CIVIL, SISTEMAS Y

ARQUITECTURA

ESCUELA PROFESIONAL DE INGENIERIA DE SISTEMAS

TECNOLOGÍA JAVA

Docente: Ing. Olavarría Paz Jesús

Curso: Lenguaje de Programación

Alumna: Rachi Montalvo Fabiana Solmayra

Ciclo: 2019-I

Lambayeque, 29 de abril del 2019


¿QUÉ ES LA TECNOLOGÍA JAVA Y PARA QUÉ LA NECESITO?

Java es un lenguaje de programación y una plataforma informática comercializada

por primera vez en 1995 por Sun Microsystems. Hay muchas aplicaciones y sitios

web que no funcionarán a menos que tenga Java instalado y cada día se crean

más. Java es rápido, seguro y fiable. Desde portátiles hasta centros de datos, desde

consolas para juegos hasta súper computadoras, desde teléfonos móviles hasta

Internet, Java está en todas partes.

Sun describe JAVA como un lenguaje “simple, orientado a objetos distribuido,

interpretado, robusto, seguro, de arquitectura neutra, portable, de altas

prestaciones, multitarea y dinámico”

Los programas desarrollados en JAVA presentan diversas ventajas frente a los

desarrollados en otros lenguajes como C/C++. La ejecución de programas en JAVA

tiene muchas posibilidades:

 Aplicación independiente (Stand-alone Application)

 Applet (dentro del navegador al cargar la página web)

 Servlet (ejecutado en servidor de internet, sin interfaz gráfica)

 En JAVA no se parte de cero. El JDK (Java Development Kit) contiene

multitud de clases ya implementadas, y organizadas en librerías de clases

llamadas paquetes (“packages”)

CARACTERÍSTICAS DE JAVA:

El lenguaje de Programación JAVA es fuertemente tipado. Esto significa que se

espera que las cosas se hagan correctamente y en forma precisa. Así, si se está
usando un entero en una operación y se pretende asignar u ocupar un valor de

punto flotante el compilador se quejará.

Las características principales que nos ofrece Java respecto a cualquier otro

lenguaje de programación, son:

Lenguaje Simple:

Java ofrece toda la funcionalidad de un lenguaje potente, pero sin las características

menos usadas y más confusas de éstos. C++ no es un lenguaje conveniente por

razones de seguridad, pero C y C++ son los lenguajes más difundidos, por ello Java

se diseñó para ser parecido a C++ y así facilitar un rápido y fácil aprendizaje.

Java elimina muchas de las características de otros lenguajes como C++, para

mantener reducidas las especificaciones del lenguaje y añadir características muy

útiles como el garbage collector (reciclador de memoria dinámica). No es necesario

preocuparse de liberar memoria, el reciclador se encarga de ello y como es de baja

prioridad, cuando entra en acción, permite liberar bloques de memoria muy grandes,

lo que limita en mucho la fragmentación de la memoria.

Java reduce en un 50% los errores más comunes de programación con lenguajes

como C y C++ al eliminar muchas de las características de éstos, entre las que

destacan:

 aritmética de punteros

 cast de tipos implícitos

 sobrecarga de operadores

 estructuras o uniones
 archivos de cabecera o múltiple herencia

 necesidad de liberar memoria (free)

Aunque, en realidad, lo que hace es eliminar las palabras reservadas (struct,

typedef), ya que las clases son algo parecido.

Además, el intérprete completo de Java que hay en este momento es muy pequeño,

solamente ocupa 215 Kb de RAM.

Orientado a objetos:

Java implementa la tecnología básica de C++ con algunas mejoras y elimina

algunas cosas para mantener el objetivo de la simplicidad del lenguaje. Java trabaja

con sus datos como objetos y con interfaces a esos objetos. Soporta las tres

características propias del paradigma de la orientación a objetos: encapsulación,

herencia y polimorfismo. Las plantillas de objetos son llamadas, como en C+

+, clases y sus copias, instancias. Estas instancias, como en C++, necesitan ser

construidas y destruidas en espacios de memoria.

Java incorpora funcionalidades inexistentes en C++ como, por ejemplo, la resolución

dinámica de métodos. Esta característica deriva del lenguaje Objective C,

propietario del sistema operativo Next. En C++ se suele trabajar con librerías

dinámicas (DLLs) que obligan a recompilar la aplicación cuando se retocan las

funciones de su interior.

Este inconveniente es resuelto por Java mediante una interfaz específica llamada

RTTI (RunTime Type Identification) que define la interacción entre objetos

excluyendo variables de instancias o implementación de métodos. Las clases en


Java tienen una representación en el runtime que permite a los programadores

interrogar por el tipo de clase y enlazar dinámicamente la clase con el resultado de

la búsqueda.

Arquitectura neutral:
Para establecer Java como parte integral de la red, el compilador Java compila su código a

un fichero objeto de formato independiente de la arquitectura de la máquina en que se

ejecutará. Cualquier máquina que tenga el sistema de ejecución (run-time) puede ejecutar

ese

código objeto, sin importar en modo alguno la máquina en que ha sido generado.

Actualmente existen sistemas run-time para Solaris 2.x, SunOs 4.1.x, Windows '95, Windows

NT, Linux, Irix, Aix, Mac, Apple y probablemente haya grupos de desarrollo trabajando en el

porting a otras plataformas.

El código fuente Java se "compila" a un código de bytes de alto nivel independiente de la

máquina. Este código (ByteCode) está diseñado para ejecutarse en una máquina hipotética

que es implementada por un sistema run-time, que sí es dependiente de la máquina.


En una

representación en que tuviésemos que indicar todos los elementos que forman parte de la

arquitectura de Java sobre una plataforma genérica, obtendríamos una imagen como la

siguiente:

En ella podemos ver que lo verdaderamente dependiente del sistema es la Máquina

virtual Java (JVM) y las librerías fundamentales, que también nos permitirían

acceder directamente al hardware de la máquina. Además, habrá APIs de Java que

también entren en contacto directo con el hardware y serán dependientes de la

máquina, como ejemplo de este tipo de APIs podemos citar:


Java 2D: gráficos 2D y manipulación de imágenes

Java Media Framework: Elementos críticos en el tiempo: audio, video…

Java Animation: Animación de objetos en 2D

Java Telephony: Integración con telefonía

Java Share: Interacción entre aplicaciones multiusuario

Java 3D: Gráficos 3D y su manipulación

Es Robusto:

Porque el intérprete de Java revisa todos los accesos al sistema dentro de un

programa, por esto, los programas desarrollados en Java no pueden tirar el sistema.

Esto es, cuando un error serio es encontrado, los programas en JAVA crean una

excepción. Esta excepción puede ser capturada y manejada por el programa sin el

riesgo de bloquear el sistema.

Es compilado:

Porque antes de que se pueda correr un programa, primero tiene que ser compilado

por el compilador de JAVA. El resultado de la compilación es el archivo “byte-code”,

que, similar a un archivo con código máquina, puede ser ejecutado bajo cualquier

sistema operativo que tenga un intérprete de JAVA. Este intérprete lee el archivo

byte-code y traduce los comandos en comandos de lenguaje máquina que pueden

ser ejecutados directamente por la computadora.

Es seguro:

Porque el compilador no sólo verifica todos los accesos a memoria, sino que

también asegura que no entren virus en un applet en ejecución. Ya que los


apuntadores no son soportados por el lenguaje, los programas no pueden acceder a

áreas del sistema a las que no tienen autorización.

Distribuido:

Java se ha construido con extensas capacidades de interconexión TCP/IP. Existen

librerías de rutinas para acceder e interactuar con protocolos como http y ftp. Esto

permite a los programadores acceder a la información a través de la red con tanta

facilidad como a los ficheros locales.

La verdad es que JAVA en sí no es distribuido, sino que proporciona las librerías y

herramientas para que los programas puedan ser distribuidos, es decir, que se

corran en varias máquinas, interactuando.

Multithreaded:

Al ser multithreaded, JAVA permite muchas actividades simultáneas en un

programa. Los threads (a veces llamados, procesos ligeros), son básicamente

pequeños procesos o piezas independientes de un gran proceso. Al estar los

threads construidos en el lenguaje, son más fáciles de usar y más robustos que sus

homólogos en C o C++.

El beneficio de ser multithreaded consiste en un mejor rendimiento interactivo y

mejor comportamiento en tiempo real. Aunque el comportamiento en tiempo real

está limitado a las capacidades del sistema operativo subyacente (Unix, Windows,

etc.), aún supera a los entornos de flujo único de programa (single-threaded) tanto

en facilidad de desarrollo como en rendimiento.

Cualquiera que haya utilizado la tecnología de navegación concurrente, sabe lo que

frustrante que puede ser esperar por una gran imagen que se está trayendo. En
JAVA, las imágenes se pueden ir trayendo en un thread independiente, permitiendo

que el usuario pueda acceder a la información en la página sin tener que esperar

por el navegador.

Bibliografía:

 García de Jalón, J (2000). Aprenda Java como si estuviera en primero. San

Sebastián, España: Tecnum.

 Hernández, L. (2004). Programación orientada a objetos en JAVA. México

DF, México: UNAM.

Linkografía:

 https://guru99.es/java-tutorial/

 https://www.campusmvp.es/recursos/post/10-razones-para-aprender-java.aspx

También podría gustarte