Programación FullStack y Escritorio desde CERO a PROFESIONAL

Sé programador profesional con JavaScript, HTML-CSS, jQuery, Node.js, Electron y React, todo en paralelo con Pascal.

Ratings: 4.66 / 5.00




Description

¿Alguna vez has intentado aprender a programar y no sabes ni por dónde empezar? Hay tantísimas opciones, una extenuante cantidad de opiniones en internet y un sinfín de actualizaciones que es normal quedarse estancado/a. Incluso cuando tienes claro tu objetivo, hay tantas tecnologías que sirven para ello que no sabrás cuál elegir, cuál es más fácil, más eficiente o cuál tiene mayor oportunidad laboral. Es así que te ofrecemos lo siguiente:

  • Crea tus propias aplicaciones

  • Trabaja como FREELANCER o emprendedor vendiendo tu software

  • Postúlate a un empleo en el mundo real

  • Saca el máximo provecho de este curso

  • Capitaliza este contenido con excelentes beneficios.

Este curso nace justamente como solución al problema de no saber por dónde comenzar ni qué ruta seguir: hemos trazado una hoja de ruta profesional que te dará las bases imprescindibles y necesarias para que entres al mundo de la programación, e incluso al mercado laboral, con un solo curso. Pero claro, no se trata de enseñar mil lenguajes en un solo lugar, eso sería un despropósito, sino que se trata de enseñar las tecnologías esenciales más usadas hoy día para que puedas convertirte en un/a programador/a FULLSTACK e inclusive de ESCRITORIO, comprendiendo a fondo todo lo necesario para saber luego por dónde especializarte en caso de que quieras hacerlo.

Pero lo más importante es que con lo que aprenderás aquí podrás postularte a empleos reales en el mundo laboral e incluso trabajar por tu cuenta como freelancer, vender tu software a clientes reales y trabajar en proyectos de mediano y gran porte. Empezarás sin saber nada y llegarás a conocer muchísimo más de lo que puedas imaginar, todo en un entrenamiento altamente intensivo y demandante, a través de teoría bien explicada y prácticas bien diseñadas.

Veamos en detalle los temas que verás. Cada una de las unidades siguientes abarcarán varios módulos completos, por lo que habrá más de una veintena (20) de módulos.


|| ===== UNIDAD 1: PROGRAMACIÓN ESTRUCTURADA EN 4 LENGUAJES ======||

Iniciarás la ruta trabajando con dos lenguajes principales (Pascal y JavaScript), y dos complementarios (C++ y Java). De este modo abarcarás el espectro de lo que es programar lenguajes compilados, semi-interpretados y puramente interpretados, con todas las variaciones que ello conlleva.

Pascal será el lenguaje base que usaremos para introducir y estudiar cada tema, ya que es muy potente, moderno (a pesar de lo que piensan varios) y poderoso para el aprendizaje; y JavaScript será la contraparte, la oveja negra, quién mostrará una cara de la programación muy diferente a lo que proponen lenguajes más estructurados como Pascal, Java o C++.

Los temas que veremos serán:

  1. Entrada y salida estándar de datos

  2. Variables, constantes y tipos primitivos

  3. Programación secuencial

  4. Selección mediante IF

  5. Diagramas de flujo

  6. Encadenación IF

  7. Case y Switch

  8. Iteración con FOR

  9. Iteración condicional con WHILE y DO-WHILE (REPEAT)

  10. Proyectos de aplicación y desarrollo de software

|| ===== UNIDAD 2: ARREGLOS  ======||

A partir de aquí abandonaremos a C++ y Java, ya que has aprendido las estructuras esenciales de ellos así como de Pascal y JavaScript. El curso continuará con Pascal como lenguaje base y JavaScript como referente para el mundo Web, incluyendo un poco de HTML. En esta unidad trabajarás:

  1. Arreglos lineales

  2. Arreglos bidimensionales o matrices

  3. Arreglos dinámicos

  4. Arreglos como objetos en JavaScript

  5. Algoritmos de búsqueda y ordenación

  6. El Juego de la Vida de John Conway

|| ===== UNIDAD 3: PROGRAMACIÓN MODULAR ======||

A partir de este punto empezarás a crear programas más grandes y complejos, por lo que comenzarás a trabajar con subprogramas (procedimientos y funciones), y todo lo que ello conlleva. El entrenamiento se intensificará en este punto. Los temas concretos serán:

  1. Funciones fuertemente tipadas

  2. Funciones con tipos dinámicos

  3. Procedimientos fuertemente tipados

  4. Procedimientos dinámicos

  5. Pasaje de parámetros por copia

  6. Pasaje de parámetros por referencia

  7. Las vicisitudes del pasaje de parámetros en JavaScript

  8. Alcance de identificadores

  9. Registros

  10. Tipos de datos estructurados

  11. Modularización de código

  12. Encapsulamiento básico

  13. Manipulación de archivos

  14. Conceptos de Bases de Datos

  15. Conceptos de diseño de software

  16. Punteros y memoria dinámica

  17. Listas encadenadas o simplemente enlazadas

  18. Tipos Abstractos de Datos

  19. Operaciones primitivas

  20. Selectoras, asignadoras, predicados, constructores y destructores

  21. Creación de módulos en JavaScript

  22. Uso de varias páginas HTML

  23. TADs LinkedList, Stack y Queue

  24. Árbol Binario de Búsqueda

  25. Algoritmos de búsqueda y recorrido

  26. Recursión computacional

|| ===== UNIDAD 4: PROGRAMACIÓN ORIENTADA A OBJETOS ======||

Todo lo visto hasta el momento es como la preparación para poder desempeñar la orientación a objetos. Este tema aplica absolutamente, y en gran profundidad, todo lo visto anteriormente. Es uno de los conceptos más demandados en el mercado laboral y extremadamente necesario si quieres aprender luego a usar cualquier tecnología, lenguaje, framework, etc.

  1. Los temas que veremos, esencialmente serán:

  2. Definición y estructura de los objetos

  3. Definición de clases

  4. Modificadores de acceso

  5. Encapsulamiento avanzado

  6. Propiedades

  7. Clases internas

  8. Campos y operaciones estáticas

  9. Patrón de diseño SINGLETON

  10. Importación y exportación de componentes

  11. Modelos de objetos en JavaScript

  12. Prototype en JavaScript

  13. Herencia

  14. Polimorfismo

  15. Casteo de tipos (down-cast y up-cast)

  16. Interfaces

  17. Clases abstractas

  18. Genéricos

  19. Captura y lanzamiento de excepciones

  20. Promesas

  21. JSON

  22. Operaciones de resurrección

  23. Bases de UML y diseño de software

  24. Mantenimiento y escalabilidad de código

|| ===== UNIDAD 5: INTERFACES GRÁFICAS DE USUARIO  ======||

En este módulo aplicaremos todo lo visto hasta el momento para crear interfaces gráficas modernas para aplicaciones de escritorio. Sin embargo, todo lo que verás y entrenarás aquí lo aplicarás luego, casi de forma idéntica, para la Web, ya que JavaScript utiliza un modelo de eventos y gestión de componentes similar al que usarás en Pascal.

1. Creación de ventanas

2. Campos y formularios complejos

3. Eventos e interacción del usuario

4. Manipulación de componentes

5. Validación de información de ingreso

6. Diálogos simples y modales

7. Botones y componentes de acción

8. Menús principales y menús contextales

9. Tablas y filtros

10. Pasaje de información entre ventanas y cuadros

11. Estructuración de información al usuario

12. Generación dinámica de componentes en tiempo real

13. Uso de acciones

14. Paneles con pestañas

15. Iconos y decoraciones

16. Barras de carga y splash-screen

17. Creación de GUIs complejas

|| ===== UNIDAD 6: HTML y JavaScript ======||

A partir de este punto tienes todas las bases de la programación para escritorio y un entrenamiento exhaustivo en el uso de una gran variedad de herramientas. Realmente ya eres todo/a un/a programador/a, pero aún estás lejos de llegar a lo que el mercado laboral demanda. El mundo Web es la pata que falta, y a partir de aquí lo completaremos, ya que eres todo/a un/a experto/a en JavaScript pero falta diseñar Webs dinámicas, vistosas y responsivas, así como utilizar APIS y programar del lado de servidor.

Lo que veremos, a grandes rasgos es:

1. Estructuras básicas de HTML5

2. Enlazamiento interno de páginas

3. Enlazamiento externo entre páginas

4. Barras de progreso

5. Tablas, filas, columnas, celdas y estructuración

6. Creación de formularios complejos

7. Gestión de formularios y eventos

8. Elementos META

9. Elementos de estructuración semántica de página

10. Imágenes

11. Favicon

12. Mapas

13. Picture

14. Figure y Figcaption

15. Eventos con JavaScript

16. Documentación oficial

17. Programación multihilo con Workers

18. Cuadros de diálogo

19. Uso de frames internas

20. Audio y video

21. Uso de acciones

22. Creación de GUIs complejas

23. Drag and Drop

24. HTML Canvas

25. Creación de juegos de ejemplo

|| ===== UNIDAD 7: CASCADE STYLE SHEETS (CSS) ======||

Una vez que sabes trabajar a fondo y al máximo con HTML es momento de trabajar la visualización, el adorno, la estilización de una página. CSS es extenso y tiene varias cosas que trabajar, ya que es capaz, además de gestionar cómo se en las cosas, de dotar a HTML de ciertas funcionalidades extra muy interesantes.

Lo que verás en este módulo, a grandes rasgos es:

1. Estilos incrustados básicos

2. Estilos importados

3. Listas de colores y color-picker

4. Selectores

5. Definición de clases de estilos

6. Fuentes básicas

7. Importación de fuentes externas y uso de íconos

8. Posicionamiento absoluto y z-index

9. Posicionamiento relativo y span

10. Fondos y colores alfa

11. Dimensiones y alineaciones

12. Modelo de cajas

13. Menús desplegables

14. Barras de navegación

15. Sombras de texto y cajas

16. Bordes y márgenes

17. Animaciones

18. Transiciones y transformaciones

19. Cajas flexibles

20. Diseño multicolumna

21. Consultas @media

22. ToolTips

23. Menú contextual

24. Panel con pestañas

25. Uso de variables CSS

26. Selectores de atributos

27. Pseudoclases

28. Pseudoelementos

29. Condiciones

30. CSS dinámico desde JavaScript

|| ===== UNIDAD 8: DOM Y BOM ======||

Este módulo regresará a JavaScript y te mostrará cómo gestionar dinámicamente todos los componentes HTML, pudiendo ahora realizar verdadera magia con una página Web. El uso del DOM será, a partir de ahora, la base principal que usarás para el resto de tecnologías que aprenderás.

|| ===== UNIDAD 9: XML ======||

Es un lenguaje, o más bien un formato, que te permitirá organizar la información y configuraciones de una manera más automatizada y profesional. Es importante que conozcas las bases, ya que aunque no lo usarás tanto manualmente, la amplia mayoría de tecnologías crean formatos XML para configurar las aplicaciones y proyectos, por lo que es vital que sepas comprender este formato.

|| ===== UNIDAD 10: JQUERY ======||

JQuery es una biblioteca de JavaScript rápida, pequeña y rica en funciones. Hace que cosas como el recorrido y la manipulación de documentos HTML (uso del DOM), el manejo de eventos, la animación y Ajax sean mucho más simples con una API fácil de usar que funciona en una multitud de navegadores. Con una combinación de versatilidad y extensibilidad, jQuery ha cambiado la forma en que millones de personas escriben JavaScript.

Hay quienes afirman que esta biblioteca está en declive, pero de momento no hemos visto tal cosa, siguen siendo muy demandada e incluso cuando buscas cómo solucionar cosas en JavaScript puro salen ejemplos con jQuery. El mercado laboral aún lo demanda y además te puede facilitar la vida en muchas cosas, por lo que aprenderás a usar esta biblioteca.

|| ===== UNIDAD 11: TYPESCRIPT ======||

TypeScript es un lenguaje de programación fuertemente tipado que se basa en JavaScript, lo que le brinda mejores herramientas a cualquier escala. Básicamente es una extensión de JavaScript transformándolo en un lenguaje fuertemente tipado, como Pascal, C++, Java y cualquier otro, dotándolo de todos los beneficios de diseño que implica tener tipos de datos explícitos, entre muchísimas otras cosas.

Este lenguaje, al extender el JavaScript nativo es ampliamente demandado, fácil de aprender y recomendable. El mercado laboral lo demanda, te facilita la vida y es extremadamente necesario que lo conozcas, sea cual sea el camino que vayas a tomar a futuro.

|| ===== UNIDAD 12: NODE.JS ======||

Esta tecnología permite crear aplicaciones con JavaScript fuera del navegador, en concreto, podrás crear aplicaciones de escritorio (sí, como con Pascal o C++), así como aplicaciones del lado de servidor (que es su uso más requerido hoy en día). Aprender a utilizar Node te brindará un salto cuántico en tus capacidades y en tu valoración al mercado, tanto laboral como si trabajas por tu cuenta. Además, es la herramienta que nos permitirá saltar hacia la creación de aplicaciones de servidor.

Los temas que verás serán los siguientes:

1. Entorno de ejecución Node

2. Creación de aplicaciones de consola con JavaScript

3. Manipulación de archivos

4. Acceso al sistema operativo

5. Empaquetado de aplicaciones para su distribución

6. Introducción a NodeGUI

7. Uso de Electron para crear aplicaciones gráficas

8. Empaquetado de aplicaciones gráficas con Electron Forge

9. Paquete HTTP y creación de servidores básicos

10. Métodos GET, POST, PUT y DELETE

11. Uso del paquete Express para creación de servidor

12. Creación de API Rest

13. Uso de sockets para comunicación cliente-servidor

|| ===== UNIDAD 13: BASES DE DATOS RELACIONALES SQL ======||

Como gran tema final es imprescindible que sepas usar bases de datos relacionales. Para ello usaremos MySQL y SQLite. Este módulo te enseñará lo indispensable que debes conocer para manipular bases de datos SQL, conectarlas a tus aplicaciones y usarlas como métodos de persistencia. También recibirás nociones básicas de diseño. De este modo luego podrás decidir si quieres profundizar con un curso completo de SQL o no, o bien, puedes incluso ver opciones NO-SQL, como MongoDB y otras.

Los temas que verás son:

1. Concepto de base de datos relacional

2. Creación de bases de datos y tablas

3. Carga de datos desde un archivo

4. Consultas básicas y compuestas

5. Ordenación y limitación de resultados.

6. Cálculos simples y Funciones de uso común: MAX, COUNT, AVG, MIN, SUM

7. Modificación y eliminación de registros

8. Eliminación de tablas y bases de datos

9. Modificación de la estructura de una tabla (ALTER)

10. Funciones y formato de fecha

11. Trabajando con dos tablas y consultas combinadas

12. Conectar Pascal a MySQL

13. Conectar NodeJS a MySQL

|| ===== UNIDAD 14: BOOTSTRAP ======||

Bootstrap es un marco de desarrollo (framework) front-end (de cara al cliente o páginas Web visibles en el navegador) gratuito y de código abierto para la creación de sitios y aplicaciones web. Diseñado para permitir el desarrollo receptivo de sitios web móviles, Bootstrap proporciona una colección de sintaxis para diseños de plantillas. Se basa más que nada en CSS permitiendo un diseño mucho más ágil y rápido. En este módulo conocerás las bases para dominar este framework.

|| ===== UNIDAD 15: React ======||

Para crear un sitio o aplicación web que ofrezca funcionalidades complejas es necesario contar con tecnología que posibilite el desarrollo de software óptimo y eficaz. Desde controlar el clic en un botón, hasta animar el logo de una empresa, los desarrolladores/as buscan constantemente mejores herramientas para construir interfaces altamente interactivas, y una de ellas es la librería React.

Es una librería de código abierto que se utiliza principalmente para construir interfaces; es decir, es una tecnología enfocada en la interactividad. Está orientada al front-end (parte del software que el usuarios utiliza) y su adopción ha ido aumentado en los últimos años.

En este módulo te presentaremos las bases de React para que puedas utilizarla y luego, si te interesa, profundizar al máximo, ya sea con cursos específicos o por tu propia cuenta de modo autodidacta.

What You Will Learn!

  • Aprender programación desde cero
  • Paradigma de programación estructurada
  • Paradigma de programación modular
  • Paradigma de programación orientada a objetos
  • Patrones de diseño
  • Algoritmos más demandados por el mercado
  • Bases de C++ y Java
  • Todos los paradigmas en lenguaje Pascal
  • Todos los paradigmas en lenguaje JavaScript
  • HTML5 completo
  • Cascade Style Sheets (CSS)
  • Modelado de sistemas
  • Lenguaje de estructuración XML
  • Creación de páginas Web dinámicas
  • Plataforma NodeJS
  • Librería jQuery
  • Framework React
  • Framework Electron
  • Biblioteca Bootstrap

Who Should Attend!

  • Toda persona que quiera entrar al mundo de la programación al máximo nivel y no sepa por dónde empezar
  • Toda persona que quiera aprender a crear páginas Web
  • Toda persona que quiera aprender programación a fondo
  • Quienes quieran dominar HTML-CSS y JavaScript pero además volverse programadores profesionales
  • Quienes quieran saber cómo crear servidores Web
  • Quién quiera encontrar trabajo en el mercado laboral
  • Quién quiera trabajar como Freelancer