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.
Aproveche las habilidades de ingeniería de software que aprendió en “Programación Java: solución de problemas con software” aprendiendo nuevas estructuras de datos.
Utilice estas estructuras de datos para crear programas más complejos que utilicen las funciones orientadas a objetos de Java. Al final del curso, escribirás un programa de encriptación y un programa para romper tu algoritmo de encriptación.

Después de completar este curso, podrá:
1. Leer y escribir datos desde / hacia archivos;
2. Resolver problemas relacionados con archivos de datos;
3. Realizar análisis cuantitativos de datos (por ejemplo, encontrar máximos, mínimos, promedios);
4. Almacene y manipule datos en una matriz o ArrayList;
5. Combine varias clases para resolver problemas más grandes;
6. Utilice iterables y colecciones (incluidos mapas) en Java.
Lo que aprenderás:
- Bienvenidos
- ¡Bienvenido a “Programación Java: matrices, listas y datos estructurados”! Nos complace que esté comenzando nuestro curso para aprender a escribir programas en Java, uno de los lenguajes de programación más populares del mundo.
En este módulo introductorio, escuchará una descripción general de este curso y se le presentarán los recursos de apoyo disponibles.
- Criptografía: mantener la información en secreto
- En este módulo, aprenderá los conceptos básicos de la criptografía, la ciencia de mantener la información privada y segura.
Aprenderá sobre sistemas criptográficos más simples, que se utilizaron desde el Imperio Romano hasta principios del siglo XX. Aprenderá cómo implementar estos cifrados, así como también cómo descifrarlos.
Para resolver estos problemas, trabajará más con el procesamiento de cadenas, pero también aprenderá acerca de las matrices, una forma de almacenar una secuencia indexable de elementos.

Podrá: (1) combinar cadenas mediante concatenación; (2) construya cadenas dentro de un programa Java usando StringBuilder; (3) utilizar matrices para almacenar y manipular colecciones de datos; (4) refactorice sus programas para mejorar la organización utilizando principios orientados a objetos; (5) y practique el diseño de algoritmos efectivos.
- GladLibs: Historias de plantillas
- Después de completar este módulo, podrá (1) programar un contador de frecuencia de palabras para analizar cualquier archivo de texto de entrada, (2) seleccionar y sustituir palabras de una lista en una plantilla de documento usando ArrayList y HashMap, (3) para cree nuevas listas para usar en plantillas, (4) para reconocer el código frágil y (5) para mejorar el código con un diseño flexible y orientado a objetos.
Obtendrá estas habilidades en el marco del desarrollo de una historia generada aleatoriamente que llamamos GladLibs.
Puede descubrir que los leones calvos cambian la vida de las personas, o que los dinosaurios esponjosos hacen las cosas en un santiamén.
¡Esperamos que se divierta desarrollando sus habilidades con Java esta semana!
- Registros del servidor web: de registros a visitas
- En este módulo, aprenderá cómo los registros del servidor web almacenan información sobre los visitantes de un sitio web, y escribirá programas para acceder a información como la dirección IP del usuario, la fecha y hora de acceso, y más.
Con los programas Java que escribe en este módulo, podrá (1) leer información de un registro del servidor web, (2) contar el número de visitantes únicos a su sitio web y (3) contar el número de veces que cada uno visitante utiliza su sitio web.
- MiniProyecto: cifrado de Vigenère
- En este módulo, desarrollará un programa para descifrar el cifrado Vigenère, una versión más compleja del cifrado Caesar.
Mejorará su programa en tres etapas: primero descifrar los mensajes en los que conoce el idioma y la longitud de la clave, luego agregar la capacidad para manejar mensajes con una longitud de clave desconocida, luego extender el programa para manejar mensajes en una variedad de idiomas posibles.

A través de este proyecto, podrá (1) usar HashSet y HashMap de manera efectiva, (2) expandir un algoritmo desde la resolución de un problema más simple hasta manejar problemas más amplios y complejos, y (3) diseñar y modificar el código del programa que involucra un colección más compleja de clases, métodos y datos.
¿Cómo obtengo el curso?
Este curso es ofrecido desde la plataforma de Coursera, es un curso que puedes obtener de manera gratuita bajo ciertas condiciones.
La primera opción es elegir la opción de “Curso gratuito sin certificado”, de esta manera podrás acceder al contenido del curso y finalizarlo, pero no podrás obtener un certificado de finalización avalado por la plataforma.
La segunda opción es elegir “auditar curso”, con esta opción podrás acceder al contenido de video del curso, pero no podrás realizar los exámenes ni obtener el certificado de finalización. Si no ves la opción de auditar curso, debes verificar en la parte de abajo usando el scroll (en forma de link).
Las opciones varían dependiendo el curso, pero con cualquiera de las dos podrás acceder gratuitamente al contenido. Por si fuera poco, algunos cursos tienen la opción de ayuda económica, con los cuales puedes solicitar dicho apoyo y ser acreedor de un curso de pago.
Para obtener el curso de manera gratuita da clic en el siguiente botón: