INTERNATIONAL CERTIFICATION PROGRAM SOFTWARE PROGRAMMER FUNDAMENTS + PYTHON PDA + JAVA SE 17 OCP AND SPRING PROFESSIONAL DEVELOP (Spring Core - Spring Boot)

INTERNATIONAL CERTIFICATION PROGRAM SOFTWARE PROGRAMMER FUNDAMENTS + PYTHON PDA + JAVA SE 17 OCP AND SPRING PROFESSIONAL DEVELOP (Spring Core - Spring Boot)

Módulos

1.1. Conceptos de algoritmo y su importancia  

  • Definición de algoritmos  
  • Estructura de un algoritmo: Entrada, Proceso y Salida  
  • Tipos de algoritmos: iterativos, recursivos y algorítmicos  
  • Ejemplos de algoritmos en la vida real  

1.2. Pensamiento computacional y resolución de problemas  

  • Descomposición de problemas en pasos más pequeños  
  • Reconocimiento de patrones y abstracción  
  • Estructura de la solución: Desarrollo y optimización  
  • Diseño de algoritmos eficientes  

1.3. Práctica: Resolución de problemas simples con pseudocódigo  

  • Modelado de problemas reales con pseudocódigo  
  • Conversiones entre pseudocódigo y diagramas de flujo  
  • Ejercicio práctico: Desarrollo de un pseudocódigo para resolver un problema matemático

2.1. Diagramas de casos de uso  

  • Identificación de actores  
  • Diagramas de escenarios principales y alternativos  
  • Casos de uso extendidos y generales  

2.2. Diagramas de secuencia  

  • Representación de la interacción entre objetos y eventos  
  • Modelado del flujo de datos y secuencia de mensajes  

2.3. Diagramas de actividades  

  • Representación de actividades, decisiones y flujos alternativos  
  • Diagramas de actividad con particiones (swimlanes)

3.1. Tipos de datos y operadores  

  • Tipos de datos primitivos: enteros, reales, booleanos, cadenas de texto  
  • Operadores aritméticos, lógicos, de comparación, asignación y bit a bit  
  • Conversión de tipos de datos (casting)  

3.2. Estructuras de control condicionales y bucles  

  • Sentencias condicionales: if, else, elif, switch  
  • Bucles controlados por contadores: for y while  
  • Bucles controlados por condiciones: do-while  
  • Conceptos de recursión vs iteración  

3.3. Declaración y uso de funciones  

  • Funciones de retorno y sin retorno  
  • Parámetros por valor y por referencia  
  • Funciones anidadas y recursivas  
  • Uso de funciones lambda  

3.4. Práctica: Resolución de problemas con funciones  

  • Ejercicios de descomposición funcional para resolver problemas  
  • Modularización de código para mejorar la reutilización

4.1. Listas, tuplas, diccionarios y conjuntos  

  • Operaciones básicas en estructuras de datos: creación, actualización, eliminación  
  • Métodos y operaciones avanzadas: append, pop, sort, reverse  
  • Diccionarios y manejo de pares clave-valor  

4.2. Algoritmos de ordenación (burbuja, selección)  

  • Implementación paso a paso de algoritmos de ordenación  
  • Complejidad temporal y espacial: O(n^2), O(n log n)  
  • Comparación entre algoritmos de ordenación: eficiencia y uso adecuado  

4.3. Algoritmos de búsqueda (binaria, lineal)  

  • Implementación de búsqueda secuencial y búsqueda binaria  
  • Condiciones necesarias para usar la búsqueda binaria  
  • Comparación de complejidades  

4.4. Práctica: Implementación de algoritmos en Python  

  • Ejercicios de búsqueda y ordenación con listas y diccionarios  
  • Optimización de código de búsqueda para grandes volúmenes de datos

5.1. Conceptos básicos de objetos y clases  

  • Definición de objetos, clases, atributos y métodos  
  • Encapsulamiento, abstracción y modularidad  

5.2. Creación de objetos y métodos  

  • Creación y uso de objetos en Python  
  • Métodos públicos, privados y protegidos  

5.3. Herencia y polimorfismo  

  • Concepto de herencia y reusabilidad de clases  
  • Métodos sobreescritos y polimorfismo  

5.4. Práctica: Modelado de objetos y su interacción  

  • Ejercicio práctico para modelar entidades usando POO

6.1. Tipos de bases de datos (relacionales y no relacionales)  

  • Diferencias clave entre bases de datos relacionales y no relacionales  
  • Ejemplos de bases de datos relacionales (MySQL, PostgreSQL) y no relacionales (MongoDB)  
  • Cuándo usar una base de datos relacional vs una no relacional  

6.2. Componentes de bases de datos: Tablas, filas, columnas  

  • Definición y creación de tablas  
  • Relaciones entre tablas: uno a uno, uno a muchos y muchos a muchos  
  • Tipos de datos en SQL: VARCHAR, INT, DATE, etc.

7.1. Diagramas entidad-relación  

  • Definición de entidades, atributos y relaciones  
  • Creación de diagramas ER para representar modelos de datos  

7.2. Claves primarias y foráneas  

  • Definición de claves primarias y cómo garantizan la unicidad de registros  
  • Claves foráneas y su importancia en la vinculación de tablas  

7.3. Normalización de bases de datos  

  • Concepto de normalización y sus niveles (1FN, 2FN, 3FN)  
  • Ejercicios prácticos para evitar la redundancia en las bases de datos

8.1. Creación de tablas y relaciones  

  • Sintaxis básica de SQL: CREATE TABLE, ALTER TABLE  
  • Definición de restricciones (PRIMARY KEY, UNIQUE, NOT NULL)  

8.2. Consultas SQL: SELECT, INSERT, UPDATE, DELETE  

  • Consultas de lectura: SELECT con filtros, operadores y ordenación  
  • Consultas de inserción, modificación y eliminación de datos: INSERT INTO, UPDATE, DELETE  

8.3. Funciones de agregación: COUNT, SUM, AVG  

  • Uso de funciones para calcular agregados sobre conjuntos de datos  
  • Agrupación de datos con GROUP BY y filtrado con HAVING

  • Que es Python
  • Variables y tipos de datos básicos
  • Lectura de entrada de teclado

  • Salidas
  • Recopilación de entradas

  • Instrucción if
  • Instrucciones else, y elif
  • Operadores and y or

  • Cadenas en Python  
  • Métodos de cadenas en Python  
  • Formato de cadenas en Python  
  • Operadores  
  • Números  
  • Conversión de cadenas en número y uso de valores absolutos

  • Presentación de listas  
  • Trabajo con números en listas  
  • Manipulación de datos de lista

  • While
  • For
  • Diccionarios
  • Programación dinámica con diccionarios

  • Funciones
  • Argumentos de funciones
  • Argumentos de palabra clave
  • Argumentos de varible

  • Lambdas
  • Expresiones regulares
  • Comprensión de datos

  • Clases y objetos  
  • Constructor de una clase  
  • Atributos  
  • Herencia  
  • Encapsulación  
  • Polimorfismo

  • Como encontrar errores
  • Controlar excepciones
  • Generación de excepciones

  • Trabajando con el sistema de archivos
  • Directorios y archivos
  • Crear un archivo, manejar archivos

  • Key features of the Java language
  • Java technology and development environment
  • Running and testing a Java program

  • Java classes
  • The Main method
  • Adding a Main method

  • Introducing variables
  • Working with strings
  • Working with numbers
  • Manipulating numeric data

  • Working with conditions
  • Using IF statements
  • Working with a list of items
  • Processing a list of items

  • Working with objects and classes  
  • Defining fields and methods  
  • Declaring, instantiating, and initializing objects  
  • Working with object references  
  • Doing more with arrays

  • Using the String class  
  • Using the Java API docs  
  • Using the StringBuilder class  
  • More about primitive data types  
  • More numeric operators  
  • Promoting and casting variables

  • Using methods  
  • Method arguments and return values  
  • Static methods and variables  
  • How arguments are passed to a method  
  • Overloading a method

  • Access control
  • Encapsulation

  • Relational and conditional operators  
  • More ways to use IF/ELSE constructs  
  • Using switch statements  
  • Using the Netbeans debugger

  • Relational and conditional operators  
  • More ways to use IF/ELSE constructs  
  • Using switch statements  
  • Using the Netbeans debugger

  • Overview
  • Working with subclasses and superclasses
  • Overriding methods in the superclass
  • Creating and extending abstract classes

  • Polymorphism  
  • Polymorphism in the JDK foundation classes  
  • Using interfaces  
  • Local-variable type inference  
  • Using the List interface  
  • Introducing Lambda expressions

  • Overview  
  • Propagation of exceptions  
  • Catching and throwing exceptions  
  • Handling multiple exceptions and errors

  • Packages, JARs, architecture
  • Application modification and requirements

  • The Module system
  • JARs
  • Module declarations
  • Modular JDK

  • Testing code
  • JShell basics
  • JShell in an IDE

  • Functional Interfaces and Lambda Expressions
  • Collections Streams, and Filters
  • Built-in Functional Interfaces

  • Introduction to Modular Programming in Java
  • Services in a Modular Application
  • Migration to a Modular Application

  • Concurrency
  • Parallel Streams
  • Terminal Operations: Collectors
  • Creating Custom Streams

  • I/O (Fundamentals and NIO2)
  • Secure Coding
  • Database Applications with JDBC
  • Localization

  • What is the Collections Framework?
  • Iterators
  • Type-Wrapper Classes
  • What are Generics?

  • Exceptions
  • Error handling
  • Assertion

  • What is the Spring Framework?
  • The DI Container
  • The Spring Framework History and EcoSystem

  • Java configuration and the Spring application context
  • @Configuration and @Bean annotations
  • @Import: working with multiple configuration files
  • Defining bean scopes
  • Launching a Spring Application and obtaining Beans

  • External properties & Property sources
  • Environment abstraction
  • Using bean profiles
  • Spring Expression Language (SpEL)

  • Component scanning  
  • Autowiring using @Autowired  
  • Java configuration versus annotations, mixing  
  • Lifecycle annotations: @PostConstruct and @PreDestroy  
  • Stereotypes and meta-annotations

  • The Spring Bean Lifecycle  
  • The BeanFactoryPostProcessor interception point  
  • The BeanPostProcessor interception point  
  • Spring Bean Proxies  
  • @Bean method return types

  • What problems does AOP solve?
  • Defining pointcut expressions
  • Implementing various types of advice

  • Spring and Test-Driven Development  
  • Spring 5 integration testing with JUnit 5  
  • Application context caching and the @DirtiesContext annotation  
  • Profile selection with @ActiveProfiles  
  • Easy test data setup with @Sql

  • How Spring integrates with existing data access technologies
  • Spring?s JdbcTemplate
  • DataAccessException hierarchy

  • Transaction overview  
  • Transaction management with Spring  
  • Transaction propagation and rollback rules  
  • Transactions and integration with other Spring modules

  • Introduction to Spring Boot Features
  • Value Proposition of Spring Boot
  • Creating a simple Boot application using Spring Initializer website

  • Dependency management using Spring Boot starters
  • How auto-configuration works
  • Configuration properties
  • Overriding auto-configuration
  • Using CommandLineRunner

  • Quick introduction to ORM with JPA  
  • Benefits of using Spring with JPA  
  • JPA configuration in Spring  
  • Configuring Spring JPA using Spring Boot  
  • Spring Data JPA dynamic repositories

  • Introduction to Spring MVC and request processing  
  • Controller method signatures  
  • Using @Controller, @RestController and @GetMapping annotations  
  • Configuring Spring MVC with Spring Boot  
  • Spring Boot packaging options, JAR or WAR

This training program is designed to provide participants with a set of essential technical skills in software development, covering from the foundations of programming to advanced technologies in Python, Java Se 17 and Spring Boot. The course prepares students to obtain international certifications of high recognition in the industry, such as:

  • Programmer Fundament Software (SOFTF-001)
  • Python Developer Associate (PDA)
  • Java Se 17 OCP (Oracle Certified Professional) (1Z0-829)
  • Spring Professional Develop (2v0-72
  • 22)
  • The training is oriented to those who seek to develop applications in Windows/Linux environments, providing the basis for the implementation of scalable and safe business solutions
  • Through the practical Learning Method methodology, participants will apply the concepts acquired in real scenarios through laboratories, simulations and business projects

At the end of training, students will be able to:

  • Fundamentals of programming and python
  • Understand the principles of structured programming and its application in Python
  • Implement control structures and data structures in Python
  • Use POO (object -oriented programming) for the creation of modular and reusable applications
  • Connect applications to databases through ORMS and SQL queries in Python
  • Apply methodologies for efficient code development and best practices in Python
  • Development in Java Se 17
  • Program in Java is 17, applying the Poo paradigm
  • Implement exception management, collections, threads and concurrence in Java
  • Apply database management techniques with JDBC and JPA
  • Design modular and scalable architectures, applying good software design practices
  • Prepare for the Certified Professional (OCP) certification in Java
  • 17
  • Spring Boot and Business Applications Development
  • Configure and use Spring Boot and Spring Core with Java Config and Annotations
  • Implement solutions with Spring Data (JPA, JDBC, Hibernate) for database management
  • Build APIS Rest in Java using Spring Boot and Webclient
  • Apply security mechanisms in business applications with Spring Security
  • Implement microservices and applications distributed in business environments with Spring Boot
  • Practical approach:
  • Students will apply these concepts through laboratory environments and development of real projects, ensuring that their training is applicable to the labor market and the corresponding certification exams

To participate in this course, students must have:

  • Basic knowledge of computer science and experience in the use of operating systems
  • General understanding of programming logic, although previous experience in specific languages ​​is not required

INTERNATIONAL CERTIFICATION PROGRAM SOFTWARE PROGRAMMER FUNDAMENTS + PYTHON PDA + JAVA SE 17 OCP AND SPRING PROFESSIONAL DEVELOP (Spring Core - Spring Boot) Applies
INTERNATIONAL CERTIFICATION PROGRAM SOFTWARE PROGRAMMER FUNDAMENTS + PYTHON PDA + JAVA SE 17 OCP AND SPRING PROFESSIONAL DEVELOP (Spring Core - Spring Boot) 201 hours

Learning Methodology

The learning methodology, regardless of the modality (in-person or remote), is based on the development of workshops or labs that lead to the construction of a project, emulating real activities in a company.

The instructor (live), a professional with extensive experience in work environments related to the topics covered, acts as a workshop leader, guiding students' practice through knowledge transfer processes, applying the concepts of the proposed syllabus to the project.

The methodology seeks that the student does not memorize, but rather understands the concepts and how they are applied in a work environment.

As a result of this work, at the end of the training the student will have gained real experience, will be prepared for work and to pass an interview, a technical test, and/or achieve higher scores on international certification exams.

Conditions to guarantee successful results:
  • a. An institution that requires the application of the model through organization, logistics, and strict control over the activities to be carried out by the participants in each training session.
  • b. An instructor located anywhere in the world, who has the required in-depth knowledge, expertise, experience, and outstanding values, ensuring a very high-level knowledge transfer.
  • c. A committed student, with the space, time, and attention required by the training process, and the willingness to focus on understanding how concepts are applied in a work environment, and not memorizing concepts just to take an exam.

Pre-enrollment

You do not need to pay to pre-enroll. By pre-enrolling, you reserve a spot in the group for this course or program. Our team will contact you to complete your enrollment.

Pre-enroll now

Infinity Payments

Make your payment quickly, safely and reliably


- For bank transfer payments, request the details by email capacita@aulamatriz.edu.co.

- If you wish to finance your payment through our credit options
(Sufi, Cooperativa Unimos or Fincomercio), click on the following link:
Ver opciones de crédito.

To continue you must

Or if you don't have an account you must

Description

This training program is designed to provide participants with a set of essential technical skills in software development, covering from the foundations of programming to advanced technologies in Python, Java Se 17 and Spring Boot. The course prepares students to obtain international certifications of high recognition in the industry, such as:

  • Programmer Fundament Software (SOFTF-001)
  • Python Developer Associate (PDA)
  • Java Se 17 OCP (Oracle Certified Professional) (1Z0-829)
  • Spring Professional Develop (2v0-72
  • 22)
  • The training is oriented to those who seek to develop applications in Windows/Linux environments, providing the basis for the implementation of scalable and safe business solutions
  • Through the practical Learning Method methodology, participants will apply the concepts acquired in real scenarios through laboratories, simulations and business projects

Objectives

At the end of training, students will be able to:

  • Fundamentals of programming and python
  • Understand the principles of structured programming and its application in Python
  • Implement control structures and data structures in Python
  • Use POO (object -oriented programming) for the creation of modular and reusable applications
  • Connect applications to databases through ORMS and SQL queries in Python
  • Apply methodologies for efficient code development and best practices in Python
  • Development in Java Se 17
  • Program in Java is 17, applying the Poo paradigm
  • Implement exception management, collections, threads and concurrence in Java
  • Apply database management techniques with JDBC and JPA
  • Design modular and scalable architectures, applying good software design practices
  • Prepare for the Certified Professional (OCP) certification in Java
  • 17
  • Spring Boot and Business Applications Development
  • Configure and use Spring Boot and Spring Core with Java Config and Annotations
  • Implement solutions with Spring Data (JPA, JDBC, Hibernate) for database management
  • Build APIS Rest in Java using Spring Boot and Webclient
  • Apply security mechanisms in business applications with Spring Security
  • Implement microservices and applications distributed in business environments with Spring Boot
  • Practical approach:
  • Students will apply these concepts through laboratory environments and development of real projects, ensuring that their training is applicable to the labor market and the corresponding certification exams

To participate in this course, students must have:

  • Basic knowledge of computer science and experience in the use of operating systems
  • General understanding of programming logic, although previous experience in specific languages ​​is not required

offers

INTERNATIONAL CERTIFICATION PROGRAM SOFTWARE PROGRAMMER FUNDAMENTS + PYTHON PDA + JAVA SE 17 OCP AND SPRING PROFESSIONAL DEVELOP (Spring Core - Spring Boot) Applies
INTERNATIONAL CERTIFICATION PROGRAM SOFTWARE PROGRAMMER FUNDAMENTS + PYTHON PDA + JAVA SE 17 OCP AND SPRING PROFESSIONAL DEVELOP (Spring Core - Spring Boot) 201 hours

Learning Methodology

The learning methodology, regardless of the modality (in-person or remote), is based on the development of workshops or labs that lead to the construction of a project, emulating real activities in a company.

The instructor (live), a professional with extensive experience in work environments related to the topics covered, acts as a workshop leader, guiding students' practice through knowledge transfer processes, applying the concepts of the proposed syllabus to the project.

The methodology seeks that the student does not memorize, but rather understands the concepts and how they are applied in a work environment.

As a result of this work, at the end of the training the student will have gained real experience, will be prepared for work and to pass an interview, a technical test, and/or achieve higher scores on international certification exams.

Conditions to guarantee successful results:
  • a. An institution that requires the application of the model through organization, logistics, and strict control over the activities to be carried out by the participants in each training session.
  • b. An instructor located anywhere in the world, who has the required in-depth knowledge, expertise, experience, and outstanding values, ensuring a very high-level knowledge transfer.
  • c. A committed student, with the space, time, and attention required by the training process, and the willingness to focus on understanding how concepts are applied in a work environment, and not memorizing concepts just to take an exam.

Pre-enrollment

You do not need to pay to pre-enroll. By pre-enrolling, you reserve a spot in the group for this course or program. Our team will contact you to complete your enrollment.

Download Syllabus