Documentos de Académico
Documentos de Profesional
Documentos de Cultura
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.
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
https://www.redhat.com/es/topics/middleware/what-is-ide
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.
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:
Notas adicionales:
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");
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:
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:
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:
https://www.codigosinformaticos.com/que-es-html/
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.
https://www.facilcloud.com/noticias/tomcat-vs-glassfish/
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.
GlassFish
Payara (iniciativa para continuar GlassFish)
WebLogic(Oracle)
Wildfly
Jboss
Websphere Application Server (WAS)
https://www.facilcloud.com/noticias/tomcat-vs-glassfish/
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
Diseño
Referencia:
https://es.wikipedia.org/wiki/Dise%C3%B1o
Arquitectura
Referencia:
https://jucaripo.com/que-es-la-arquitectura-de-software
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/
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
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")
if(errores.hasErrors()){
return "modificar";
personaService.guardar(persona);
return "redirect:/";
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/
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