Subido por Rif Joestar

Documento pichudo 2

Anuncio
1
UNIVERSIDAD DE COSTA RICA.
Sede del Pacífico, Arnoldo Ferreto Segura.
Programación I.
Informática empresarial.
Investigación acerca del desarrollo de aplicaciones web con java.
Pertenece al grupo conformado por:
Miguel Carballo Meléndez.
Carnet:
Jason Fonseca Barrantes.
Carnet:
Reggy Guevara Contreras.
Carnet:
B91616_B93032_C03559_Investigación
II Ciclo 2020.
2
Índice
Tabla de contenido
Índice............................................................................................................... 2
Introducción ..................................................................................................... 3
Desarrollo ........................................................................................................ 4
1. Lenguajes de programación. ................................................................. 4
2. Lenguaje de programación Java. .......................................................... 4
3. Aplicaciones web Java. ......................................................................... 5
3.1.
Contenedor Java web o java EE. ....................................................... 6
3.2.
Servlet. ............................................................................................... 6
3.3.
JavaServer Pages .............................................................................. 7
3.4.
Biblioteca de etiquetas estándar de JavaServer Pages. .................... 8
Conclusiones ................................................................................................... 8
Bibliografía .................................................................................................... 13
3
Introducción
Vivimos en el siglo XXI, un siglo en el que se ha ido recolectando múltiples
avances en los campos de la ciencia y la tecnología desde el siglo anterior y
gracias a estos avances la humanidad ha ido avanzando, “evolucionando” en
muchos ámbitos (culturales, sociales, económicos, tecnológicos, etc.). En gran
medida se puede afirmar que los lenguajes de programación han estado
involucrados en estos procesos de constante innovación, ya que, si no fuera
por este tipo de lenguaje, no existirían muchas de las aplicaciones y sitios web
que usamos hoy en día.
Este trabajo consiste en la investigación del desarrollo de aplicaciones web
con el lenguaje de programación Java y tiene como objetivo mostrar los
resultados acerca de la investigación realizada.
En primer lugar, se explica acerca de los lenguajes de programación y en
específico del lenguaje Java. Luego encontrará una sección dedicada al
desarrollo de aplicaciones web con Java, seguidamente se muestran los
componentes para el desarrollo de estas, y finalmente, se muestra una sección
con las principales conclusiones de esta investigación, entre las que se
destaca, como más importante, esta que Java es uno de los lenguajes más
populares e utilizados para la programación de aplicaciones web.
4
Desarrollo
1. Lenguajes de programación.
Un lenguaje de programación se define como “herramienta que permite
desarrollar software o programas para computadora. Los lenguajes de
programación son empleados para diseñar e implementar programas
encargados de definir y administrar el comportamiento de los dispositivos
físicos y lógicos de una computadora. Lo anterior se logra mediante la creación
e implementación de algoritmos de precisión que se utilizan como una forma
de comunicación humana con la computadora” (Ceballos, 2004). En la
actualidad existen muchos lenguajes de programación, entre los más
conocidos están Python, Java, C++, etc. Para énfasis de esta investigación se
estudiará sobre el lenguaje de programación java en el campo de desarrollo
de aplicaciones web.
2. Lenguaje de programación Java.
En esta investigación se tratará de relatar sobre la importancia de java en el
desarrollo de aplicaciones web. Primero que todo hay que definir java, este 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” ([Definición java], s.f.). Cabe decir que
java es un lenguaje orientado a la OOP (o POO) programación orientada a
objetos. Este lenguaje tiene como intención que “los desarrolladores de
aplicaciones escriban el programa una sola vez y lo ejecuten en cualquier
dispositivo” (¿Qué es Java? Conoce las particularidades de este lenguaje de
programación, 2019). Java es un lenguaje simple, distribuido, recolector de
basura, solido, multihilo y como se dijo antes, orientado a objetos.
5
Es simple porque ofrece una “funcionalidad de un lenguaje potente, derivado
de C y C++, pero sin las características menos usadas y más confusas de
estos, haciéndolo más sencillo” (¿Qué es Java? Conoce las particularidades
de este lenguaje de programación, 2019).
Es distribuido porque Java es un lenguaje que “proporciona una gran biblioteca
estándar y herramientas para que los programas puedan ser distribuidos”
(¿Qué es Java? Conoce las particularidades de este lenguaje de
programación, 2019). Al decir que Java posee un enfoque OOP que es “uno
de los estilos de programación más populares. Permite diseñar el software de
forma que los distintos tipos de datos que se usen estén unidos a sus
operaciones” (¿Qué es Java? Conoce las particularidades de este lenguaje de
programación, 2019). Java es en lenguaje recolector de basura, en el sentido
de que “cuando no hay referencias localizadas a un objeto, el recolector de
basura de Java borra dicho objeto, liberando así la memoria que ocupaba.
Esto previene posibles fugas de memoria” (¿Qué es Java? Conoce las
particularidades de este lenguaje de programación, 2019). también es un
lenguaje sólido y seguro, ya que proporciona una plataforma segura para
“desarrollar y ejecutar aplicaciones que, administra automáticamente la
memoria, provee canales de comunicación segura protegiendo la privacidad
de los datos y, al tener una sintaxis rigurosa evita que se quiebre el código, es
decir, no permite la corrupción del mismo” (¿Qué es Java? Conoce las
particularidades de este lenguaje de programación, 2019). Y, por último, este
lenguaje es multihilo debido a que en este se pueden llevar varias tareas
simultaneas dentro del mismo programa. Esto hace posible que el
mejoramiento del rendimiento y la velocidad de ejecución.
3. Aplicaciones web Java.
Las aplicaciones web con java según Vogel (2016) se definen como una
colección de recursos dinámicos y recursos estáticos. Entre los recursos
dinámicos se encuentran los Servlets, JavaServer Pages, clases y jars. Y entre
6
los estáticos están las páginas HTML e imágenes. Las aplicaciones web Java
se pueden implementar como un archivo WAR (Web ARchive). Las
aplicaciones basadas en la Web crean contenido para los clientes
navegadores Web.
3.1.
Contenedor Java web o java EE.
Las aplicaciones web desarrolladas con java, normalmente no se ejecutan de
forma directa en el servidor, estas aplicaciones se ejecutan dentro de un
contenedor web en el servidor. “El contenedor proporciona un entorno de
ejecución para aplicaciones web Java. El contenedor es para aplicaciones web
Java, lo que la JVM (máquina virtual Java) es para aplicaciones Java en
ejecución local. El propio contenedor se ejecuta en la JVM” (Vogel,2016). Java
diferencia dos contenedores, el contenedor web y el contenedor Java EE. “Los
contenedores web típicos en el mundo de Java son Tomcat o Jetty. Un
contenedor web admite la ejecución de servlets Java y JavaServer Pages. Un
contenedor Java EE admite funciones adicionales, por ejemplo, distribución de
la carga del servidor” (Vogel,2016).
3.2.
Servlet.
Esta tecnología de desarrollo en java “utilizan el modelo petición-respuesta
HTTP de comunicación entre cliente y servidor” (Deitel et al, 2008). Los servlet
amplían la funcionalidad de un servidor, al permitir que este genere contenido
dinámico. “Por ejemplo, los servlets pueden generar en forma dinámica
documentos XHTML personalizados, ayudar a proporcionar un acceso seguro
a un sitio Web, interactuar con bases de datos a beneficio de un cliente y
mantener la información de sesión única para cada cliente” (Deitel et al, 2008).
7
3.3.
JavaServer Pages
La tecnología JSP es un componente dominante de la especificación de Java
2
Enterprise
Edition,
muchos
de
los
servidores
de
aplicaciones
comercialmente disponibles ya utilizan tecnología JSP. La tecnología JSP
sirve para crear aplicaciones web que se ejecuten en varios servidores. Una
página con JSP está conformada con HTML y código de java y la extensión
del fichero es “.jsp” en lugar de “.html”. Para cuando la página se traduzca a
un servlet sirven las directivas JSP, las cuales son instrucciones procesadas
por el motor JSP. Al desarrollar páginas web se utilizarán declaraciones, las
cuales sirven para configurar variables para usarlas posteriormente en
expresiones o scriptlet. Los scriptlets sirven para agregar segmentos de codigo
java dentro de una página JSP, el codigo que se agrega se coloca
directamente en el servlet que se genera cuando se ejecuta la página.
Al procesar la página JSP hay que llamar a la página llamada “date.jsp”, se
compilara en un servlet java, un motor servlet cargara la clase servlet y lo
ejecuta como para crear HTML dinámico para enviarlo al navegador. El motor
JSP ofrece instancias de un conjunto de clases, son objetos ya establecidos
que solo hay que usarlos, algunos de estos objetos son:

page: Esto es solo un sinónimo de this, no es muy útil en java.

config: Datos de configuración del servlet.

request: Datos de la petición, incluyendo los parámetros.

response: Datos de la respuesta.

out: Flujo de salida para el contenido de la página.

session: Datos específicos de la sesión de un usuario.

application: Datos compartidos por todas las páginas de una
aplicación.
8

pageContext: Datos de contexto para la ejecución de la página.

exception: Errores o excepciones no capturadas.
3.4.
Biblioteca de etiquetas estándar de JavaServer
Pages.
Son una gran característica del JSP, esta les permite a los desarrolladores
en Java, ocultar el código para acceder a una base de datos y otras
operaciones complejas, mediante el uso de etiquetas personalizadas.
“Para usar dichas herramientas, sólo tenemos que agregar las etiquetas
personalizadas a la página. Esta simpleza permite a los diseñadores de
páginas Web, que no estén familiarizados con Java, mejorar las páginas
Web con poderoso contenido dinámico y capacidades de procesamiento”
(Deitel et al, 2008).
Conclusiones
En este sentido, con la investigación realizada se entiende que los lenguajes
de programación son herramientas que permiten desarrollar software o
programas en computadora. Y aunque la investigación se centra en el lenguaje
de java, se recalca que existen otros lenguajes de programación, cada uno
con sus diferentes características, ventajas, desventajas etc.
Enfocándonos en el tema de la investigación que es la importancia de java en
el desarrollo de aplicaciones web. Java es uno de los lenguajes más populares
e utilizados para la programación, ya que se describe a java como un lenguaje
9
simple e orientado a objetos, también ofrece una gran biblioteca y
herramientas proporcionando gran versatilidad y opciones para los
programadores que quieran utilizar este lenguaje, y al ser un lenguaje multihilo
beneficia el rendimiento y la velocidad para realizar tareas simultaneas dentro
del programa.
En el desarrollo de aplicaciones web Java encontramos una colección de
recursos dinámicos y estáticos, estos recursos regalan variedad y entre los
dinámicos se menciona a Servlets como un ejemplo de este y de los recursos
estáticos una de las menciones seria las paginas HTML. Cualquiera de estas
se pueden implementar la creación de aplicaciones web, todo de acuerdo con
lo que se necesita o se prefiera y a lo que va enfocado la aplicación web.
Un punto importante de la investigación para recalcar es que estas aplicación
web desarrolladas con java se ejecutan dentro de un contenedor web en el
servidor, de aquí surge el Contenedor Java web y java EE, así es como se le
conoce a estos contenedores que proporcionan un entorno de ejecución para
las aplicaciones web Java y al existir estos dos tipos de contenedores cada
uno con su función y utilidad especifica como el contenedor web que se centra
en la ejecución de ServletsJava y JavaServerOPages, por otro lado el
contenedor Java EE se encarga de funciones adicionales.
Por esto la
importancia de estos contenedores ya que ambos dan y se especializan en su
función para lograr un manejo adecuado en la ejecución de las páginas web
desarrolladas en java.
Como resultado de la investigación realizada se puede concluir que la
importancia de las aplicaciones web desarrolladas con java proviene de que
Java se puede conocer como la base de las muchas aplicaciones de red,
software y contenidos de la web. Todo esto por ser uno de los lenguajes más
empleados , debido a su simpleza , versatilidad , sus bibliotecas, su fluidez, su
buena gestión de recursos y al ser un lenguaje enfocado en la programación
orientada a objetos (POO) , que esta misma es uno de los estilos de
10
programación más populares, todos estos aspectos atraen a muchos usuarios
a querer crear contenido con este lenguaje ya que en pocas palabras Java de
una manera "simple", provee un gran número de herramientas , opciones y
gran gestión y uso del mismo para la creación de aplicaciones web.
Elabore un glosario de los siguientes términos: unidad estadística,
característica,
dato estadístico u observación, población, muestra, muestreo, censo, muestra
representativa, error de muestreo, sesgo de selección, sesgo de medición,
estadística descriptiva, estadística inferencial, datos existentes, datos no
existentes, fuente de información primaria, fuente de información secundaria.
2. Según Gómez (2016), ¿de los términos del glosario anterior a cuál hacer
referencia
la palabra estadísticas?
3. ¿Cuál es la diferencia que plantea Gómez (2016) entre los términos
estadísticas y
estadística?
11
4. ¿Cuáles son los dos tipos de población que menciona Gómez (2016)?
Aporte un
ejemplo de cada clase que sean diferentes a los que aparecen en las
referencias
bibliográficas.
5. Tome como referencia los dos siguientes recursos Posada (2016), y Otzen
y
Manterola (2017) para contestar los siguientes ítems:
5.1 Explique la diferencia entre el muestreo probabilístico y el muestreo no
probabilístico.
5.2 ¿Cuáles son los tipos de muestreo probabilístico? Explique cada uno.
5.3 ¿Cuáles son los tipos de muestreo no probabilístico? Explique cada uno.
6. Con base en Díaz de la Rada (2004) conteste los siguientes ítems:
6.1 Explique los 4 tipos de errores que son susceptibles de cometerse en la
investigación mediante encuestas.
6.2 Explique dos tipos de problemas que puede generar la no respuesta.
6.3 Exprese su criterio con respecto a la siguiente afirmación
6.4 Toda muestra aleatoria y de gran tamaño es una muestra representativa
7. Con base en Gómez (2016) conteste las siguientes preguntas:
7.1 ¿Cuándo se recomienda muestrear?
12
7.2 ¿Cuáles son las ventajas de las muestras aleatorias en comparación con
las no
aleatorias?
8. Elabore un mapa conceptual que se refiera al apartado 1.9 de Gómez
(2016).
9. Justifique su posición con respecto a la siguiente aseveración
La estadística es una ciencia
10. Con base en Coronado (2007), elabore una tabla acerca de las escalas o
niveles
de medición. Etiquete las columnas con los siguientes nombres: nivel de
medición,
descripción, ejemplo de variable, ejemplos de datos. Para cada nivel presente
3
ejemplos de variables. Utilice la siguiente de referencia.
11. Según Gómez (2016), ¿por qué es importante evaluar las fuentes de
información?
12. Realice una comparación entre la investigación observacional y la
experimental.
13. Suponga que se requiere aplicar un cuestionario, refiérase a las
desventajas que
implica realizarlo por cada una de las siguientes formas: personal (cara a cara),
vía
13
telefónica, por correo electrónico.
14. Con base en Gómez (2016), elabore un mapa conceptual de las etapas de
la
investigación estadística.
15. ¿Cuál cree que son las razones por las cuales se considera el curso de
XS0105
(Estadística para Informáticos) en el plan de estudios de su carrera?
Bibliografía
Ceballos, F. J. (2004). Enciclopedia del lenguaje C. México: Alfaomega/RaMa.
DEITEL, PAUL J. Y HARVEY M. DEITEL. (2008). CÓMO PROGRAMAR EN
JAVA. Séptima edición.
[Definición
de
java].
(s.f.).
https://www.java.com/es/download/help/whatis_java.html.
¿Qué es Java? Conoce las particularidades de este lenguaje de programación.
(2019). https://rockcontent.com/es/blog/que-es-java/.
Vogel, L. (2016). Introducción al desarrollo web Java
– Tutorial.
https://www.vogella.com/tutorials/JavaWebTerminology/article.html#web
app.
Kish, L. 1979. Survey sampling. New York: Wiley.
Descargar