Preparación para la certificación Java SE 17 Developer
Una formación orientada a la aplicación profesional.
Este curso está dirigido a personas que desean aprender y profundizar sus conocimientos en el lenguaje de programación Java y en el desarrollo de aplicaciones en la plataforma Java SE, incluyendo entre otros sus componentes y conceptos principales, las construcciones principales del lenguaje, la utilización de las APIs fundamentales de la plataforma, la gestión de colecciones, el uso de expresiones lambda y el API de Streams, el acceso a base de datos y sistema de ficheros, la concurrencia y la modularización.
Contenido del curso.
Understanding Java Technology and environment
- Describe Java Technology and the Java development
- Identify key features of the Java language
- Describe the Java Development Kit (JDK) and the Java Runtime Environment (JRE)
- Describe the components of object-oriented programming
- Describe the components of a basic Java program
- Compile and execute a Java program
Creating a Simple Java Program
- Create an executable Java program with a main class
- Identify the conventions to be followed in a Java program
- Use single-line and multi-line comments in Java programs
- Use Java reserved words
- Compile and run a Java program from the command line
- Create and import packages
- Import other Java packages to make them accessible in your code
- Describe the java.lang package
Java Platform Module System
- Describe the Modular JDK
- Declare modules and enable access between modules
- Describe how a modular project is compiled and run
Migration to a Modular Application
- Migrate the application developed using a Java version prior to SE 9 to SE 11
- Top-down and bottom-up migration
- Splitting a Java SE 8 application into modules for migration
- Use jdeps to determine dependencies and identify ways to address the cyclic dependencies
Working with Java Data Types
- Declare and initialize variables including a variable using final
- Cast a value from one data type to another including automatic and manual promotion
- Declare and initialize a String variable
Working with Java Operators
- Use basic arithmetic operators to manipulate data including +, -, *, /, and %
- Use the increment and decrement operators
- Use relational operators including ==, !=, >, >=, <, and <=
- Use arithmetic assignment operators
- Use conditional operators including &&, ||, and ?
- Describe the operator precedence and use of parenthesis
Using Decision Statements
- Use the decision making statement (if-then and if-then-else)
- Use the switch statement
- Compare how == differs between primitives and objects
- Compare two String objects by using the compareTo and equals methods
Using Looping Statements
- Describe looping statements
- Use a for loop including an enhanced for loop
- Use a while loop
- Use a do-while loop
- Compare and contrast the for, while, and do-while loops
- Develop code that uses break and continue statements
Arrays and ArrayLists
- Use a one-dimensional array
- Create and manipulate an ArrayList
- Traverse the elements of an ArrayList by using iterators and loops including the enhanced for loop
- Compare an array and an ArrayList
Describing and Using Objects and Classes
- Declare and instantiate Java objects
- Explain object's lifecycles (including creation, dereferencing by reassignment, and garbage collection)
- Define the structure of a Java class
- Read or write to object fields
Creating and Using Methods
- Create methods and constructors with arguments and return values
- Create and invoke overloaded methods
- Apply the static keyword to methods and fields
Applying Encapsulation
- Apply access modifiers
- Apply encapsulation principles to a class
Reusing Implementations Through Inheritance
- Create and use subclasses and superclasses
- Create and extend abstract classes
- Enable polymorphism by overriding methods
- Utilize polymorphism to cast and call methods, differentiating object type versus reference type
- Distinguish overloading, overriding, and hiding
Exception Handling and Assertions
- Describe the advantages of Exception handling and differentiate among checked, unchecked exceptions, and Errors
- Create try-catch blocks and determine how exceptions alter program flow
- Create and invoke a method that throws an exception
- Use the try-with-resources construct
- Create and use custom exception classes
- Test invariants by using assertions
Java Nested Classes and Enumerations
- Create and use inner, nested and anonymous classes
- Create and use final classes
- Create and use enumerations
Java Interfaces
- Create and use interfaces with default methods
- Create and use interfaces with private methods
- Functional Interface and Lambda Expressions
- Define and write functional interfaces
- Create and use lambda expressions including statement lambdas, local-variable for lambda parameters
Built-in Functional Interfaces
- Use interfaces from the java.util.function package
- Use core functional interfaces including Predicate, Consumer, Function and Supplier
- Use primitive and binary variations of base interfaces of java.util.function package
Java Stream API
- Describe the Stream interface and pipelines
- Use lambda expressions and method references
Lambda Operations on Streams
- Extract stream data using map, peek and flatMap methods
- Search stream data using search findFirst, findAny, anyMatch, allMatch and noneMatch methods
- Use the Optional class
- Perform calculations using count, max, min, average and sum stream operations
- Sort a collection using lambda expressions
- Use Collectors with streams, including the groupingBy and partitioningBy operations
Parallel Streams
- Develop code that uses parallel streams
- Implement decomposition and reduction with streams
Java Collections Framework and Generics
- Use wrapper classes, autoboxing and autounboxing
- Create and use generic classes, methods with diamond notation and wildcards
- Describe the Collections Framework and use key collection interfaces
- Use Comparator and Comparable interfaces
- Create and use convenience methods for collections
Java I/O API (Fundamentals and NIO2)
- Read data from and write console and file data using I/O Streams
- Use I/O Streams to read and write files
- Read and write objects by using serialization
- Use the Path interface to operate on file and directory paths
- Use the Files class to check, delete, copy or move a file or directory
- Use the Stream API with Files
Database Applications with JDBC
- Connect to databases using JDBC URLs and DriverManager
- Use PreparedStatement to perform CRUD operations
- Use PreparedStatement and CallableStatement APIs to perform database operations
Java Annotations
- Describe the purpose of annotations and typical usage patterns
- Apply annotations to classes and methods
- Describe commonly used annotations in the JDK
- Declare custom annotations
Localization in Java
- Use the Locale class
- Use resource bundles
- Format messages, dates, and numbers with Java
Java Concurrency and Multithreading
- Create worker threads using Runnable, Callable and use an ExecutorService to concurrently execute tasks
- Use java.util.concurrent collections and classes including CyclicBarrier and CopyOnWriteArrayList
- Write thread-safe code
- Identify threading problems such as deadlocks and livelocks
Todo lo que necesitas saber.
- Desplegar y ejecutar aplicaciones Java utilizando un enfoque modularizado.
- Manipular valores numéricos, de texto, de fecha y hora utilizando datos primitivos y clases de Java.
- Implementar la lógica del programa utilizando variables, arrays, construcciones condicionales y bucles.
- Organizar el código Java mediante clases, interfaces y enumeraciones.
- Crear aplicaciones que aprovechen las características de la programación orientada a objetos del lenguaje Java como la encapsulación, la herencia y el polimorfismo.
- Implementar propagación y gestión de errores.
- Utilizar la API de Java Collections.
- Utilizar expresiones Lambda.
- Procesar información mediante el API de Streams.
- Manipular archivos, directorios y sistemas de ficheros.
- Implementar funcionalidad de entrada/salida (E/S) para leer y escribir datos binarios y de texto.
- Utilizar la API de JDBC para el acceso a base de datos.
- Utilizar la API de Java Concurrency.
- Preparación a los estudiantes hacia la superación de la certificación oficial de Oracle OCP: Java SE 17 Developer, cuyo examen 1Z0-829.
Examen asociado
Reserva tu plaza.
Experiencias que cuentan.
Deja tu valoración
No necesitas registrarte. Indica tu nombre y email, puntúa el curso y comparte tu experiencia.
Oliver—
Este curso fue muy interactivo y motivador. El instructor hizo un gran trabajo al conectar con los estudiantes y mantenerlos comprometidos. Recomiendo este curso a cualquiera que esté buscando un curso desafiante pero gratificante.
Ana—
Merece la pena realizar el curso.
Raúl—
Excelente curso.