Java en el Backend
El objetivo del curso es que aprendas java desde sus raíces, es decir sin frameworks y puedas sacar el máximo provecho a los recursos de infraestructura de tú propia empresa o proyectos. Aprenderas a desarrollar aplicaciones con las mejores prácticas del ámbito empresarial si ese es tu objetivo.
Al finalizar el curso desarrollaras una aplicación completa que podrás tomar como guía si tienes dudas en tu trabajo, incluso podrás reusar el código de este curso; código que iras construyendo desde cero, utilizaremos gestores de base de datos comerciales del entorno empresarial como Oracle y gestores gratuitos para que puedas emprender tus propios proyectos.
Si nunca has trabajado con Linux este curso también es para ti, ya que instalaremos desde cero nuestro sistema Operativo y te mostrare como configurarlo. Veremos los comando básico-avanzado de Linux para que aprendas a desplazarte entre directorios y conozcas como se deploya (instala) una aplicación en un servidor productivo. Aprenderás a leer logs, crear directorios y modificar archivos desde la consola de Linux.
Crearemos nuestro propio entorno de desarrollo, instalando máquinas virtuales Windows y Linux y lo necesario para desarrollar en Java como el JDK, JRE, NetBeans IDE, MySQL, Oracle 11g.
En este curso vamos a automatizar la ejecución de procesos que corren en el back con ayuda del cron de Linux, para que no tengas que tu hacer esas tareas manualmente. El curso está enfocado en procesos stand-alone también conocidos como procesos batch.
Temario:
Preparación del ambiente. Preparando el ambiente de desarrollo.
Instalaremos:
VirtualBox y guestaddtions
Máquina virtual Linux y Windows
Para Windows importaremos una máquina virtual para desarrolladores.
JDK
JRE
Netbeans
Descarga e instalación de Debian Linux como máquina virtual
Configuraremos los repositorios (source.list en Debian).
Instalación de Gest Addionts
Conforme se vaya requiriendo instalemos las bases de datos MySQL y Oracle.
Repaso general de Java.
El método Main
Variables (y su declaración)
Tipos de datos
Estructuras de control(if, else, for, switch, case, break, do-while, while)
Operadores
Paquetes, Clases, Métodos, Interfaces
Parametros o argumentos
Modificadores de Acceso
POO(Plofimorfismo, Encapsulamiento, Herencia, Interfaces)
Comandos básicos de Linux (el objetivo es que aprendas los comandos básicos que te ayudaran a leer los logs que dejan las aplicaciones empresariales e instalar tu mismo tus aplicaciones)
Movernos entre directorios
Crear y borrar carpetas
Crear, borrar y leer archivos desde consola
Instalación de paquetes (aplicaciones en Linux)
Buscar patrones, Tuberias
Configurar variables(JAVA_HOME)
Servidor SSH para conexión remota
Comprimir y descomprimir achivos, todo desde consola.
Cliente SSH para conectarnos desde Windows.
Procesos Batch o stand-alone. Comenzamos a crear nuestros propios programas en java con ejemplos reales.
Ejecutar un batch(archivo .jar) desde la consola de
Windows
Linux.
Interacción del usuario, leer datos desde consola.
Interacción del usuario, leer datos desde una ventana emergente.
Recibir parámetros desde consola.
Lectura y escritura de archivos
Copiar, borrar, mover archivos desde Java.
Instalación de Docker
Instalar Docker en Debian
Comandos básicos de docker
Instalación de Oracle en Docker
Conectarnos a una base de datos (Oracle y MySQL)
Instalación de MySQL en Debian
Crearemos una base de datos con sus tablas
CRUD desde un Batch
Crear pool de conexiones(Abrir multiples conexiones y reciclarlas)
Usando Threads de Java
Insertando millones de registros usando Pool de Conexiones y Threads
Generando archivos de configuración
Configurando log4j2(logs en nuestras aplicaciones)
Archivos de texto(.properties)
Patrón de diseño Singleton
Programar procesos batch desde el cron de Linux
Conociendo el Cron de Linux
Creando Shell scripts
Automatizar la ejecución de nuestras aplicaciones en el tiempo que definamos.