Está en la página 1de 17

Glosario, NotasApuntes

Supremoman-22
Febrero del 2022
TECNOLOGÍA JAVA
Compilado vs Interpretado
Referencia:

https://yosoy.dev/diferencia-entre-lenguajes-compilados-e-interpretados/

De forma general, la diferencia entre los lenguajes compilados e interpretados es que los primeros
usan un compilador para poder traducirlo(a lenguaje maquina) y ejecutar el programa, mientras
que los segundos requieren de un intérprete que traduzca el código al momento de la ejecución.

Ejemplos de lenguajes Interpretados: Ruby, Python y JavaScript

Ejemplos de lenguajes compilados: C, C++, Java, Go y Rust

Java ME
Java Micro Edition. Es una especificación de un subconjunto de la plataforma Java orientada a
proveer una colección certificada de API de desarrollo de software para dispositivos con recursos
restringidos. Está orientado a productos de consumo como PDAs, teléfonos móviles o
electrodomésticos.

Java SE
Referencia:

https://es.wikipedia.org/wiki/Java_SE

Java Platform, Standard Edition. Es una colección de API del lenguaje de programación Java útiles
para muchos programas de la Plataforma Java. La Plataforma Java 2, Enterprise Edition incluye
todas las clases en el Java SE, además de algunas de las cuales son útiles para programas que se
ejecutan en servidores sobre workstations.

Java EE
Referencia:

https://es.wikipedia.org/wiki/Java_EE

Oracle Platform, Enterprise Edition. Es una plataforma de programación —parte de la Plataforma


Java— para desarrollar y ejecutar software de aplicaciones en el lenguaje de programación Java.
Permite utilizar arquitecturas de N capas distribuidas y se apoya ampliamente en componentes de
software modulares ejecutándose sobre un servidor de aplicaciones. La plataforma Java EE está
definida por una especificación
UNIVERSO JAVA
IDE
Referencia:

https://www.redhat.com/es/topics/middleware/what-is-ide

Un entorno de desarrollo integrado (IDE ) es un sistema de software para el diseño de aplicaciones


que combina herramientas comunes para desarrolladores en una sola interfaz de usuario gráfica
(GUI). Generalmente, un IDE cuenta con las siguientes características:

 Editor de código fuente


 Automatización de compilaciones locales
 Depurador

IDE: Integrated Development Environment

GUI: Graphical User Interface

Framework
Referencia:

https://www.edix.com/es/instituto/framework/

Un framework es un esquema o marco de trabajo que ofrece una estructura base para elaborar un
proyecto con objetivos específicos, una especie de plantilla que sirve como punto de partida para
la organización y desarrollo de software.

API Java
Referencia:

https://es.wikipedia.org/wiki/API_Java

La API Java es una interfaz de programación de aplicaciones (API, por sus siglas del inglés:
Application Programming Interface) provista por los creadores del lenguaje de programación Java,
que da a los programadores los medios para desarrollar aplicaciones Java.
API web
Recursos prediseñados que se pueden consumir o usar con peticiones por medio del protocolo
Http.
Este concepto de API web se puede relacionar a Microservicios.

Para Crear estas API´s en Java se puede utilizar tecnologías con Rest, SOAP.

Tecnología
Conjunto de instrumentos, recursos técnicos o procedimientos empleados en un determinado
campo o sector.

Diferencia entre “Tecnología”, “Framework” y “API”


Se puede decir que ‘Tecnología’ es el caso más general, que abarca tanto a Frameworks y APIs, si
tuviéramos dificultad en distinguir entre estos dos (Framework o API), el Termino ‘Tecnología’
sería el más apropiado.

A grandes rasgos una API es código o recursos prediseñados, esperando a ser utilizados. Y un
FrameWork es una herramienta (o plantilla) que ayuda al proceso de desarrollo.
FUNDAMENTOS DE JAVA
Paradigma

Palabra reservada
Es una palabra que adquiere características especiales dentro de un lenguaje de programación, y
dado a estas características especiales su uso es reservado o acotado, y no se pueden usar para
nombrar variables o métodos.

La Clase String
La clase String es una de las muchas clases incluidas en (la API de java) las bibliotecas de clases de
Java. La clase String le brinda la capacidad de almacenar una secuencia de caracteres. Utilizará la
clase String con frecuencia en todos sus programas.

Principales características:

 Un objeto String es inmutable; su valor no se puede cambiar


 Un objeto String se puede utilizar con el símbolo ‘+’ para la concatenación.

Notas adicionales:

Debido a que String es inmutable, la concatenación de dos cadenas provocará la creación de un


nuevo objeto en memoria.

Hay 2 formas de instanciar un objeto de tipo String

 Literal Pool
Ejemplo: String cadena2 = "Cadena2";

Se recomienda instanciar un objeto de esta forma ya que las declaraciones con cadenas
idénticas terminan referenciando al mismo objeto en memoria.

 No Literal Pool
Ejemplo: String cadena1=new String("Cadena1");

De esta forma siempre se crea un objeto en memoria independientemente del valor de la


cadena.

Principales métodos
 concat(String);
Une una cadena con otra creando un nuevo String equivalente a ‘+’
(concatenación).
 length();
Obtiene el total de caracteres de la cadena.
 toLowerCase();
Convierte la cadena a minúsculas creando un nuevo String.
 toUpperCase();
Convierte la cadena a mayúsculas creando un nuevo String.
 trim();
Elimina los espacios en blanco de al inicio y al final de la cadena creando un nuevo
String.
 startsWith(String);
Pregunta si inicia con un determinado conjunto de caracteres.
 endsWith(String);

 substring(Int, Int);
 subSequence(Int, Int);
 charAt(Int);
 toString();
 replace("StringViejo", "StringNuevo");
 equals(Object);
 indexOf("String");
 contains("String");
 split("String");

Clase StringBuilder
Esta clase proporciona una alternativa mutable, al contrario de la clase String

Principales características:

 Se crea una instancia con la palabra reservada new.


 Tiene muchos métodos para manipular su valor.
 Proporciona un mejor rendimiento porque es mutable
 Se puede crear con una capacidad inicial

String todavía es necesaria porque:

 Puede ser más seguro usar un objeto inmutable


 Un método en la API puede requerir una cadena
 Tiene muchos más métodos que no están disponibles en StringBuilder

Promoción
Se asigna un tipo más pequeño a un tipo más grande

Entre variables primitivas ocurre promoción cuando un tipo de dato de menor capacidad se asigna
a una variable de un tipo con mayor capacidad. Esta asignación ocurre de forma automática sin
recurrir a un mecanismo adicional.
En la figura:

 Un tipo byte se puede asignar a un tipo short,


 Un tipo short se puede asignar a un tipo int,
 Un tipo int se puede asignar a un tipo long,

Casting
Cuando un tipo de dato de mayor capacidad se asigna a una variable de un tipo con menor
capacidad.

Esta asignación no ocurre de manera automática, hay que especificar el tipo que queremos
convertir entre paréntesis. Ejemplo:

• int longToInt = (int)20L;

• short doubleToShort = (short)3.0;


JAVA APLICACIONES WEB
HTML
Referencia:

https://www.codigosinformaticos.com/que-es-html/

HyperText Markup Language

HTML no es un lenguaje de programación, HTML es un lenguaje de marcas de hipertextos


compuesto por etiquetas que son interpretados por el navegador de web de Internet (Google
Chrome, Mozilla Firefox, Opera, etc.) y el resultado es lo que ven los usuarios finales en la pantalla
de nuestros dispositivos.

Modulo EAR
Referencia:

https://www.ibm.com/docs/es/developer-for-zos/9.5.1?topic=overview-java-ee-concepts

En Java EE, un archivo EAR es el ensamblaje o empaquetado de sus archivos JAR (Modulo EJB) y
WAR (Modulo WAR). Se puede acceder a una aplicación EAR desplegada en un contenedor Java EE
como GlassFish.

Modulo WAR
En este Modulo se construye una aplicación web, principalmente aborda la capa de presentación,
en él se define recursos y elementos necesarios para habilitar una interfaz de usuario.

Modulo EJB
Referencia:

https://www.ibm.com/docs/es/developer-for-zos/9.5.1?topic=overview-java-ee-concepts

Se refieren a aplicaciones Java EE estándar o a Enterprise Java EE Beans (EJB). En estos modulos
habitualmente se define la lógica de negocio.

Cuando se compilan generan un archivo JAR


Contenedor web
Referencia:

https://www.facilcloud.com/noticias/tomcat-vs-glassfish/

Sólo alberga Servlets (aplicaciones Java).

Un ejemplo de Contenedor Web es Tomcat

Tomcat carece de módulos que implementan la referencia de J2EE y por lo tanto varias
características de esta Implementación no las soporta. Y por lo tanto es responsabilidad del
desarrollador descargar e implantar en el servidor los componentes, así como también garantizar
su interoperabilidad.

Servidor de aplicaciones
Referencia:

https://www.ibm.com/docs/es/i/7.2?topic=serving-application-servers

Los servidores de aplicaciones son programas de servidor en una red distribuida que proporciona
el entorno de ejecución para un programa de aplicación. Más específicamente, el servidor de
aplicaciones es el componente de tiempo de ejecución principal en todas las configuraciones y
donde una aplicación se ejecuta realmente. El servidor de aplicaciones colabora con el servidor
web para ofrecer una respuesta dinámica y personalizada a una solicitud de cliente.

Ejemplos de Servidores de Aplicaciones:

 GlassFish
 Payara (iniciativa para continuar GlassFish)
 WebLogic(Oracle)
 Wildfly
 Jboss
 Websphere Application Server (WAS)

Diferencia entre GlassFish y Tomcat


Referencia:

https://www.facilcloud.com/noticias/tomcat-vs-glassfish/

GlassFish es un servidor de aplicaciones Java que implementa correctamente la especificación


J2EE; a diferencia de Tomcat que simplemente es un contenedor web de Servlets
Convención
Es un acuerdo entre desarrolladores donde se establecen las mejores prácticas para desarrollar.

Referencia:

https://es.wikipedia.org/wiki/Convenci%C3%B3n_(norma)

Una convención es un conjunto de estándares, reglas, normas o también criterios que son de
aceptación general para un determinado grupo social

Nota: La convención (o la falta de) no afecta a la compilación ni a la ejecución del programa.

Diseño
Referencia:

https://es.wikipedia.org/wiki/Dise%C3%B1o

Es el proceso previo de configuración mental, «prefiguración», en la búsqueda de una solución.

En contexto de programación, el diseño ocurre cuando planificas como solucionar un problema.

Arquitectura
Referencia:

https://jucaripo.com/que-es-la-arquitectura-de-software

En palabras simples la arquitectura de software son patrones o lineamientos que ayudan a la


construcción de un programa (aplicación). Estos patrones permiten tener una guia para los
desarrolladores, analistas y todos los cargos relacionados para lograr cumplir con los
requerimientos de la aplicación.

Patrón de diseño
Referencia: https://www.ecodeup.com/patrones-de-diseno-en-java-mvc-dao-y-dto/

Un patrón de diseño es una solución probada que resuelve un tipo específico de problema en el
desarrollo de software referente al diseño.
MVC
Referencia:

https://www.ecodeup.com/patrones-de-diseno-en-java-mvc-dao-y-dto/

Model View Controller

DAO

DTO/VO
VO: "Objetos de valor"

Microservicios
Son tanto una arquitectura como un modo para desarrollar software que consiste en construir una
aplicación como un conjunto de pequeños 'Servicios independientes entre sí', los cuales se
'ejecutan en su propio proceso' y se comunican con mecanismos
JAVA API´S
API
La API Java es una interfaz de programación de aplicaciones, (API por sus siglas del inglés:
Application Programming Interface) provista por los creadores del lenguaje de programación Java,
que da a los programadores los medios para desarrollar aplicaciones Java.

JDBC

JPA

JPA CRITERIA

Rest
JAVA FRAMEWORKS
https://www.startechup.com/es/blog/the-best-java-frameworks/#:~:text=Los%20frameworks
%20de%20Java%20son%20plataformas%20creadas%20para%20facilitar%20la,crear%20soluciones
%20a%20problemas%20concretos.

Spring
¿Qué es?
Referencia: https://curiotek.com/java-que-es-spring/

Spring nos permite desarrollar aplicaciones de manera más rápida, eficaz y corta, saltándonos
tareas repetitivas y ahorrándonos líneas de código.

Spring framework es muy extenso y crece día a día para ayudar al desarrollo de aplicaciones web.

El framework de Spring es un contenedor de clases java, conocidos como beans, estos beans viven
dentro del contenedor de Spring.

Spring boot
Es una herramienta que nos va a simplificar la creación de nuestras aplicaciones con Spring.

Spring va a ser nuestro contenedor y Spring Boot va a hacer todas esas tareas tediosas de
configuración. Para empezar a trabajar en la aplicación sin preocuparnos por la configuración.

Etiquetas
Para las clases de Entidad,

@NotEmpty

Aparte de validar que la variable no tenga un valor nulo, también valida que no sea una
cadena vacía

@NotNull

Valida que la variable no tenga nulo.

Para el controlador

@Valid

Para especificar que El atributo de un método se tiene que validar, esta etiqueta debe de
esta junto con el argumento "Errors errores"(org.springframework.validation.Errors)
Ejemplo:

@PostMapping("/guardar")

public String guardar(@Valid Persona persona,Errors errores){

if(errores.hasErrors()){

return "modificar";

personaService.guardar(persona);

return "redirect:/";

@Email

Valida que la cadena sea un email.

Hibernate

Struts

JSP

JSF
JAVA CLOUD
¿Qué es el computo en la nube?
Referencia-> https://rockcontent.com/es/blog/computacion-en-la-nube/

La computación en la nube (o cloud computing, en inglés) es una tecnología que permite acceder
remotamente, de cualquier lugar del mundo y en cualquier momento, a softwares,
almacenamiento de archivos y procesamiento de datos a través de Internet, sin la necesidad de
conectarse a un ordenador personal o servidor local.

En otras palabras, la computación en la nube utiliza la conectividad y gran escala de Internet para
hospedar los más variados recursos, programas e información, y permite que el usuario ingrese a
ellos través de cualquier ordenador, tablet o celular.

Si todavía no quedó claro, déjame ejemplificarlo: si alguna vez editaste un documento en Google
Docs, escuchaste música en Spotify o viste una película en Netflix, tuviste contacto directo con la
computación en la nube. Todos ellos son servicios online que no demandan la descarga,
instalación y acceso de ningún tipo de software o archivo en tu ordenador. Solo necesitas un
navegador y una buena conexión a Internet para utilizarlos.

Cloud Computing
Referencia-> https://www.oracle.com/mx/cloud/what-is-cloud-computing/

En términos sencillos, Cloud Computing le permite alquilar sus tecnologías de la información, en


lugar de comprarlas. En lugar de invertir mucho en bases de datos, software y equipos, las
empresas optan por acceder a su capacidad de computación a través de Internet y pagar por lo
que consumen.

Tipos de Cloud Computing


Hay tres tipos de nube diferentes: pública, privada e híbrida. Se diferencian por la cantidad de
gestión que requieren del cliente, así como por el nivel de seguridad suministrado.

Nube pública
En una nube pública, toda la infraestructura informática se encuentra en las instalaciones del
proveedor de la nube, que presta estos servicios al cliente a través de Internet. El cliente no tiene
que mantener tecnologías de la información propias y puede agregar rápidamente más usuarios o
más potencia de cálculo si es necesario. Múltiples inquilinos comparten la infraestructura de TI del
proveedor de la nube.
Nube privada
La nube privada es de uso exclusivo de una organización. Se puede alojar en la ubicación de la
organización o en el centro de datos del proveedor de la nube. La nube privada proporciona un
nivel más alto de seguridad y control.

Nube híbrida
Como su nombre indica, una nube híbrida es una combinación de nubes públicas y privadas. En
general, el cliente aloja sus aplicaciones críticas en sus propios servidores para mayor seguridad y
control, y las aplicaciones secundarias se almacenan en el entorno de un proveedor de nube.

Multinube
La principal diferencia entre nube híbrida y multinube es el uso de varios dispositivos de Cloud
Computing y almacenamiento en una sola arquitectura. Hay que centrarse en añadir algunas
palabras clave en el cuerpo.

Git

También podría gustarte