Programación profesional desde cero

  • Overview
  • Curriculum
  • Instructor
  • Review

About This Course

Todo lo que un programador moderno debería saber y dominar

Este curso es un curso de Programación desde cero, y resaltamos la palabra programación porque no es un curso de un lenguaje concreto, sino que es un entrenamiento diseñado para forjar a un programador profesional desde la nada absoluta hasta la maestría.

Pasarás de forma progresiva por los distintos paradigmas de programación, aprendiendo:

  • Programación estructurada

  • Programación modular

  • Memoria dinámica

  • Programación Orientada a Objetos

  • Programación de Interfaces Gráficas de Usuario

  • Bases de Datos SQL

A través de este curso el estudiante desarrollará varios proyectos, diseñará sus propios programas, resolverá problemas complejos con pocas herramientas, aprenderá a pensar y a dividir grandes retos en pequeñas partes. Aprenderá también la teoría profunda que todo programador necesita hoy día y la pondrá en práctica inmediatamente a través de los ejercicios y proyectos planteados.

El curso se divide en 5 módulos extremadamente poderosos, cada uno de los cuales extiende y amplifica al módulo anterior. En concreto:

=== Módulo 1: Programación estructurada ===

Un curso de programación en sí mismo, ya que en él el estudiante conocerá todas las herramientas esenciales para crear programas en cualquier lenguaje. Los conceptos son dados de tal forma que el estudiante podrá aplicarlos en cualquier lenguaje moderno a su elección. Los temas que se darán son:

  1. Salida estándar de datos

  2. Entrada estándar

  3. Definición de variables

  4. Tipos primitivos de datos

  5. Tipos estructurados de datos

  6. Diagramas de flujo

  7. Secuencia y selección (IF)

  8. Repetición iterativa (FOR)

  9. Repetición condicional (WHLE y REPEAT - DO...WHILE)

  10. Subrangos

  11. Arreglos lineales estáticos

  12. Arreglos lineales dinámicos

  13. Arreglos bidimensionales

  14. Depurador y ejecución paso a paso

  15. Enumerados y registros

  16. Procedimientos y funciones

  17. Alcance de identificadores (locales y globales)

  18. Pasaje de parámetros por valor (copia) y por referencia (alias)

  19. Archivos de texto y archivos tipados

  20. Proyectos finales

=== Módulo 2: Memoria dinámica y Tipos Abstractos de datos===

Aquí el curso comienza a profundizar en conceptos que muchos programadores desconocen o no dominan (como quienes aprenden Java como primer lenguaje): los punteros. A través de esta herramienta el programador podrá comenzar a crear programas que gestionen la memoria RAM, enfrentándose a los problemas y complejidades que ésto conlleva.

Los Tipos Abstractos de Datos (TADs) introducen todo un concepto nuevo de programación: dividir el programa en módulos individuales y trabajar por separado con cada uno. De este modo el estudiante aprenderá a abstraer datos y a modularizar sus programas, todo lo cual es la base fundamental de la Programación Orientada a Objetos que posteriormente será tratada en profundidad.

  1. El tipo puntero

  2. Solicitud de memoria

  3. Liberación de memoria

  4. Alias

  5. Reprogramación de proyectos a memoria dinámica

  6. Modularización de programas

  7. Creación de unidades

  8. Definición de tipos abstractos

  9. Implementación de operaciones

  10. Uso de TADs en diferentes sistemas

  11. Linkedición

  12. Listas encadenadas simples

  13. Listas doblemente encadenadas

  14. Listas circulares

  15. Colas

  16. Pilas

  17. TADs personalizados

  18. Reprogramación de proyectos usando TADs

=== Módulo 3: Recursividad y el TAD Árbol binario===

Una herramienta muy poderosa y a la vez delicada. El estudiante aprenderá a utilizarla, conocerá sus ventajas y desventajas, entenderá su diferencia con la repetición iterativa, y comprenderá cómo resolver problemas complejos con ella.

El estudiante además conocerá cómo crear una estructura arborescente a través del uso de punteros, y cómo esta estructura resulta útil para ciertos casos. Es una herramienta muy poderosa que no todo programador domina. Siendo una estructura recursiva, se une perfectamente con la recursividad.

  1. Qué es la recursividad

  2. Diferencia entre recursividad e iteración

  3. Recursividad en listas lineales

  4. Recursividad en matrices

  5. Reprogramación de proyectos usando recursividad

  6. Árbol binario de búsqueda

  7. Árbol general

  8. Estructuras arborescentes

  9. Caso de estudio

  10. Proyecto

=== Módulo 4: Programación Orientada a Objetos ===

El estudiante aplicará ahora todos sus conocimientos para aprender este nuevo paradigma y comenzar a ver las estructuras de los programas como objetos. De este modo logrará modularizar aún más su código y comenzar a diseñar programas de forma más rápida y eficiente.

  1. Teoría de objetos

  2. Clases

  3. Creación y destrucción de objetos

  4. Herencia

  5. Polimorfismo

  6. Casteo

  7. Clases abstractas e interfaces

  8. Bloques try y lanzamiento de excepciones

  9. Beans

  10. Diseño básico de software

  11. Bases de UML

  12. Proyectos finales

=== Módulo 5: Interfaces gráficas de usuario ===

Todo lo aprendido en el curso le permitirá al estudiante comprender cómo crear interfaces gráficas de usuario y utilizarlas de forma inteligente, ya que éstas, en cualquier lenguaje moderno, están diseñadas con Objetos (POO). De esta manera el estudiante aprenderá a utilizar la librería LCL de Lazarus, que le permitirá aprender las bases de la creación de interfaces gráficas, manejo de eventos y control de errores.

  1. Creación manual de interfaces y componentes

  2. Creación gráfica mediante el entorno de desarrollo

  3. Ejemplos y aplicaciones

  4. Reprogramación de proyectos para crear interfaces gráficas

  5. Proyecto final

=== Módulo 6: Bases de datos MySQL y SQLite ===

Pasaremos a un punto bien distinto de la programación, ya que el estudiante ahora aprenderá a usar dos herramientas concretas de bases de datos, que es algo que va más allá de la programación en sí pero que a la vez es super necesario.

  1. Conexión de bases de datos a un programa

  2. Análisis y diseño de persistencia

  3. Comandos SQL por consola

  4. Herramientas gráficas MySQL Workbench y SQLite Studio

  5. De tablas a objetos: mapeo de datos

  6. Mantenimiento de bases de datos

  • Programación de proyectos complejos: A lo largo del curso tendrás que implementar y desarrollar diferentes proyectos, que te permitirán entrenar lo aprendido.

  • Entorno de Desarrollo Integrado: Cómo utilizar un IDE moderno para comenzar a desempeñarte en cualquier tecnología de desarrollo de software.

  • Entrada y salida de datos: Aprenderás a mostrar información en pantalla, primero en consola y luego en ventanas, así como a capturarla y procesarla.

Course Curriculum

4 Lectures

2 Lectures

1 Lectures

Instructor

Profile photo of Vladimir Rodríguez
Vladimir Rodríguez

Mi pasión es la enseñanza y sobre todo la potenciación de otras personas. En este sentido me he desarrollado como instructor en ramas de Desarrollo Personal, Éxito y Coaching como lo es la Programación Neurolingüística (PNL), Gestión Emocional y Oratoria de alto impacto. Asimismo me apasionan las tecnologías de la información y la capacidad de crear que estas tienen, por...

Review
4.9 course rating
4K ratings
ui-avatar of Martin Suarez
Martin S.
5.0
7 months ago

excelente presentacion

  • Helpful
  • Not helpful
ui-avatar of Mateo Barreto Zarco
Mateo B. Z.
3.0
8 months ago

me aburri

  • Helpful
  • Not helpful
ui-avatar of Diego Emmanuel Hernandéz Robledo
Diego E. H. R.
5.0
8 months ago

la verdad me ha gustado mucho

  • Helpful
  • Not helpful
ui-avatar of Santi O
Santi O.
5.0
9 months ago

Ché un grandísimo curso. Muchas gracias por la calidad de la enseñanza.

Saludos desde España.

  • Helpful
  • Not helpful
ui-avatar of Vicente Ferrer
Vicente F.
5.0
9 months ago

Es un gran curso, para alguien que no sabe nada... absolutamente NADA de programación es la mejor herramienta!

  • Helpful
  • Not helpful
ui-avatar of Ivanoff Nicolas Nahuel
Ivanoff N. N.
5.0
9 months ago

si lo fue

  • Helpful
  • Not helpful
ui-avatar of Gonzalo Jacques
Gonzalo J.
5.0
9 months ago

Un curso muy completo que cubre una amplia variedad de temas de gran interés, ideal para quienes buscan aprender desde cero o complementar sus conocimientos. El contenido es aplicable en el ámbito laboral, lo que lo hace especialmente útil para quienes desean avanzar profesionalmente.

  • Helpful
  • Not helpful
ui-avatar of Daniel
Daniel
5.0
9 months ago

Porque va directo a lo interesante del tema y no aburre

  • Helpful
  • Not helpful
ui-avatar of Haidan David Jaramillo
Haidan D. J.
5.0
9 months ago

si

  • Helpful
  • Not helpful
ui-avatar of Carlos Alberto García Calderón
Carlos A. G. C.
5.0
9 months ago

Bien

  • Helpful
  • Not helpful
Leave A Reply

Your email address will not be published. Required fields are marked *

Ratings

Courses You May Like

Lorem ipsum dolor sit amet elit
Show More Courses