Última actualización: 10/2022Course Language EspañolCourse Caption Español [automático]Course Length 85:13:07 to be exact 306787 seconds!Number of Lectures 292
This course includes:
85 horas hours of on-demand video
2 article
Full lifetime access
Acceso en dispositivos móviles y TV
Certificate of completion
8 additional resources
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
DescripciónSi quieres entrar en el mundo de la programación sin saber nada y transformarte en alguien competente, con bases sólidas, conocimiento de las tecnologías más demandadas, y capacidad de entrar al mercado laboral o trabajar por tu propia cuenta, este es el curso para ti.Hemos trazado una ruta de aprendizaje progresivo, con una curva que avanza poco a poco introduciendo cada concepto, desde lo más básico hasta lo más complejo. Empezarás sin saber nada, creando aplicaciones simples, hasta lograr crear tus propios servidores Web, aplicaciones de escritorio o servicios de datos. A grandes rasgos aprenderás lo siguiente:Crea tus propias aplicacionesDesarrolla servidores WebDiseña interfaces gráficas de usuarioTrabaja como FREELANCER o emprendedor vendiendo tu softwarePostúlate a un empleo en el mundo realSaca el máximo provecho de este cursoCapitaliza este contenido con excelentes beneficios.El curso contendrá más de una veintena de proyectos que te permitirán dominar cada tema, entrenándote de forma intensiva. Este es el curso definitivo que te ahorrará el tener que tomar diferentes cursos por doquier sin saber exactamente a qué atenerte. A continuación te presentamos un resumen de cada unidad didáctica:UNIDAD 1: PROGRAMACIÓN ESTRUCTURADA EN 4 LENGUAJESIniciará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:Entrada y salida estándar de datosVariables, constantes y tipos primitivosProgramación secuencialSelección mediante IFDiagramas de flujoEncadenación IFCase y SwitchIteración con FORIteración condicional con WHILE y DO-WHILE (REPEAT)Proyectos de aplicación y desarrollo de softwareUNIDAD 2: ARREGLOSA 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:Arreglos linealesArreglos bidimensionales o matricesArreglos dinámicosArreglos como objetos en JavaScriptAlgoritmos de búsqueda y ordenaciónEl Juego de la Vida de John ConwayUNIDAD 3: PROGRAMACIÓN MODULARA 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:Funciones fuertemente tipadasFunciones con tipos dinámicosProcedimientos fuertemente tipadosProcedimientos dinámicosPasaje de parámetros por copiaPasaje de parámetros por referenciaLas vicisitudes del pasaje de parámetros en JavaScriptAlcance de identificadoresRegistrosTipos de datos estructuradosModularización de códigoEncapsulamiento básicoManipulación de archivosConceptos de Bases de DatosConceptos de diseño de softwarePunteros y memoria dinámicaListas encadenadas o simplemente enlazadasTipos Abstractos de DatosOperaciones primitivasSelectoras, asignadoras, predicados, constructores y destructoresCreación de módulos en JavaScriptUso de varias páginas HTMLTADs LinkedList, Stack y QueueÁrbol Binario de BúsquedaAlgoritmos de búsqueda y recorridoRecursión computacionalUNIDAD 4: PROGRAMACIÓN ORIENTADA A OBJETOSTodo 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.Los temas que veremos, esencialmente serán:Definición y estructura de los objetosDefinición de clasesModificadores de accesoEncapsulamiento avanzadoPropiedadesClases internasCampos y operaciones estáticasPatrón de diseño SINGLETONImportación y exportación de componentesModelos de objetos en JavaScriptPrototype en JavaScriptHerenciaPolimorfismoCasteo de tipos (down-cast y up-cast)InterfacesClases abstractasGenéricosCaptura y lanzamiento de excepcionesPromesasJSONOperaciones de resurrecciónBases de UML y diseño de softwareMantenimiento y escalabilidad de códigoUNIDAD 5: INTERFACES GRÁFICAS DE USUARIOEn 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 ventanas2. Campos y formularios complejos3. Eventos e interacción del usuario4. Manipulación de componentes5. Validación de información de ingreso6. Diálogos simples y modales7. Botones y componentes de acción8. Menús principales y menús contextales9. Tablas y filtros10. Pasaje de información entre ventanas y cuadros11. Estructuración de información al usuario12. Generación dinámica de componentes en tiempo real13. Uso de acciones14. Paneles con pestañas15. Iconos y decoraciones16. Barras de carga y splash-screen17. Creación de GUIs complejasUNIDAD 6: HTML a fondo y JavaScriptA 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 HTML52. Enlazamiento interno de páginas3. Enlazamiento externo entre páginas4. Barras de progreso5. Tablas, filas, columnas, celdas y estructuración6. Creación de formularios complejos7. Gestión de formularios y eventos8. Elementos META9. Elementos de estructuración semántica de página10. Imágenes11. Favicon12. Mapas13. Picture14. Figure y Figcaption15. Eventos con JavaScript16. Documentación oficial17. Programación multihilo con Workers18. Cuadros de diálogo19. Uso de frames internas20. Audio y video21. Uso de acciones22. Creación de GUIs complejas23. Drag and Drop24. HTML Canvas25. Creación de juegos de ejemploUNIDAD 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ásicos2. Estilos importados3. Listas de colores y color-picker4. Selectores5. Definición de clases de estilos6. Fuentes básicas7. Importación de fuentes externas y uso de íconos8. Posicionamiento absoluto y z-index9. Posicionamiento relativo y span10. Fondos y colores alfa11. Dimensiones y alineaciones12. Modelo de cajas13. Menús desplegables14. Barras de navegación15. Sombras de texto y cajas16. Bordes y márgenes17. Animaciones18. Transiciones y transformaciones19. Cajas flexibles20. Diseño multicolumna21. Consultas @media22. ToolTips23. Menú contextual24. Panel con pestañas25. Uso de variables CSS26. Selectores de atributos27. Pseudoclases28. Pseudoelementos29. Condiciones30. CSS dinámico desde JavaScriptUNIDAD 8: DOM Y BOMEste 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.Bases del DOMNavegación en el árbol de objetosFormulariosAplicación de CSS en el DOMSelectores de consultas y colecciones de elementosLa clase Element y la interfaz HTMLElementCreación de elementos HTML personalizadosEl BOMUNIDAD 9: XMLEs 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.Estructura de un documento XML bien formadoÁrbol XMLXML DOMXML ParserXML DTDXML Schema UNIDAD 10: JQUERYJQuery 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: TYPESCRIPTTypeScript 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.JSEsta 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 Node2. Creación de aplicaciones de consola con JavaScript3. Manipulación de archivos4. Acceso al sistema operativo5. Empaquetado de aplicaciones para su distribución6. Introducción a NodeGUI7. Uso de Electron para crear aplicaciones gráficas8. Empaquetado de aplicaciones gráficas con Electron Forge9. Paquete HTTP y creación de servidores básicos10. Métodos GET, POST, PUT y DELETE11. Uso del paquete Express para creación de servidor12. Creación de API Rest13. Uso de sockets para comunicación cliente-servidorUNIDAD 13: BASES DE DATOS RELACIONALES SQLComo 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 relacional2. Creación de bases de datos y tablas3. Carga de datos desde un archivo4. Consultas básicas y compuestas5. Ordenación y limitación de resultados.6. Cálculos simples y Funciones de uso común: MAX, COUNT, AVG, MIN, SUM7. Modificación y eliminación de registros8. Eliminación de tablas y bases de datos9. Modificación de la estructura de una tabla (ALTER)10. Funciones y formato de fecha11. Trabajando con dos tablas y consultas combinadas12. Conectar Pascal a MySQL13. Conectar NodeJS a MySQLUNIDAD 14: BOOTSTRAPBootstrap 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: ReactPara 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.¿Para quién es este curso?Toda persona que quiera entrar al mundo de la programación al máximo nivel y no sepa por dónde empezarToda persona que quiera aprender a crear páginas WebToda persona que quiera aprender programación a fondoQuienes quieran dominar HTML-CSS y JavaScript pero además volverse programadores profesionalesQuienes quieran saber cómo crear servidores WebQuién quiera encontrar trabajo en el mercado laboralQuién quiera trabajar como FreelancerVer másVer menos
Course Content:
Sections are minimized for better readability, click the section title to view the course content
9 Lectures | 02:12:36
Presentación del curso
20:21
Video de presentación y esquema de trabajo.
Instalación de Lazarus y creación del HolaMundo
13:58
Veremos cómo descargar el IDE Lazarus y el compilador Free-Pascal para trabajar con el lenguaje Pascal. La instalación es sumamente sencilla ya que está todo en uno.
Instalación de VisualStudio y creación del HolaMundo
11:19
OPCIONAL: Veremos cómo descarga e instalar el IDE Visual Studio configurado para trabajar con C++, lo cual ya descarga e instala el compilador para dicho lenguaje. Esto es opcional y solo lo usaremos al inicio del curso.
OPCIONAL: Instalación de VisualStudio Code
14:47
Para quién no quiera o no pueda usar Visual Studio, en esta clase veremos cómo utilizar Visual Studio Code y configurarlo para trabajar con C++. Esto se hace de forma mucho más manual que con Visual Studio, pero como pro, VSCode es mucho más liviano.
Instalación JRE y JDK
12:35
En esta clase veremos cómo instalar el JRE (Java Runtime Environment), que es el software necesario para ejecutar cualquier programa escrito en Java, así como el JDK (Java Development Kit), que contiene todos los paquetes necesarios para escribir programas en Java, así como incluye también al compilador de dicho lenguaje. Este kit será luego incluido en el IDE que se utilizará para programar en Java.
Instalación de ApacheNetbeans
06:39
En esta clase veremos cómo instalar Apache Netbeans, el entorno de desarrollo para crear programas en Java, pero también es el que usaremos a lo largo de todo el curso para trabajar en HTML, CSS y JavaScript, por lo que es importante que lo instales.
HolaMundo en Java
21:01
Crearemos el programa "Hola Mundo" en Java para verificar que todas las configuraciones quedaron correctamente establecidas y que todo funciona bien.
Tipos de lenguajes
13:23
Dado que verás el uso de varios lenguajes (Pascal, Java, JavaScript y C++), debes conocer de qué tipo es cada uno, ya que esto será crucial a lo largo de todo el curso.
HolaMundo en HTML
18:33
Crearemos el programa "Hola Mundo" en HTML usando Netbeans, aunque estrictamente hablando no hace falta utilizar ningún IDE para lograrlo.
38 Lectures | 08:12:09
Salida estándar en Pascal
12:00
Pascal será nuestro lenguaje base de referencia, en él aprenderemos todos los conceptos y luego los trasladaremos a las demás tecnologías. Empezaremos pues, mostrando información básica al usuario por medio de la consola (salida estándar).
Salida estándar en C++
13:04
Al igual que en Pascal veremos cómo mostrar datos al usuario en la consola del sistema en C++.
Salida estándar Java
28:01
Visto lo visto en Pascal y C++, haremos lo mismo con Java.
Salida básica en HTML
08:35
HTML no tiene una consola (aunque JavaScript sí), por lo que mostrar información en un documento HTML es relativamente sencillo. Veremos aquí cómo hacerlo.
Salida en varias líneas de texto con Pascal
10:15
Conociendo lo básico es momento de empezar a complejizar la salida poco a poco mostrando varias líneas de información al usuario.
Salida en varias líneas con Java
10:33
Imprimiremos varias líneas de texto en la consola de Java.
Entrada de datos y variables en Pascal
28:12
La entrada de datos al programa implica el uso de variables, así que veremos ese nuevo concepto para empezar a lograr que nuestros programas se vuelvan poco a poco más útiles y avanzados.
Entrada de datos y variables en C++
16:30
Veamos cómo declarar variables en C++ y cómo leer información desde la consola del sistema.
Entrada de datos y variables en Java
14:22
En Java, leer datos desde la consola se vuelve un poquito más complejo que lo que ocurre en Pascal o C++ porque Java utiliza objetos para ello (en concreto usa la clase Scanner), y aún estamos muy lejos de aprender orientación a objetos. Sin embargo, es posible que aprendas a leer información y aplicar en Java los mismos conceptos vistos en Pascal y C++.
Entrada de datos y variables en JavaScript
28:48
Es momento de introducir JavaScript, el lenguaje de programación que dota a HTML de dinamismo (ya que HTML es estático y no conforma realmente un lenguaje de programación como tal). Verás cómo declarar variables en JavaScript y cómo leer información desde el navegador Web. Aprenderás que en este lenguaje las cosas cambian bastante en relación a lo visto en Pascal, Java y C++, ya que JavaScript no utiliza tipos de datos estáticos cómo sí ocurre en las otras tecnologías.
Variables numéricas enteras en Pascal
06:49
Profundizaremos en el uso de variables y conoceremos más tipos de datos, en concreto tipos numéricos, para que vayas aprendiendo cómo se trabaja con la información en cualquier programa. Sabiendo esto en Pascal será fácil trasladarlo al resto de lenguajes.
Cálculos matemáticos simples en Pascal
10:42
Haremos algunos cálculos matemáticos sencillos en Pascal para dotar de utilidad a lo visto con los tipos de datos numéricos.
Cálculos matemáticos simples en C++
05:23
Ahora que aprendiste a usar tipos numéricos y a hacer cálculos en Pascal veremos cómo lograr lo mismo en C++.
Lectura de enteros en Java
19:17
Realizaremos lo mismo que hicimos en Pascal y C++ ahora en Java. Todo resultará muy familiar.
Cálculos sencillos en JavaScript
03:55
En JavaScript todo será muy similar a lo visto en otros lenguajes, con pequeñas salvedades.
Concepto de acumulación en Pascal
07:48
Aprenderás a hacer que una variable numérica pueda variar su valor aumentándolo según sea necesario (el mismo concepto sirve para disminuir). Piensa en un juego que va acumulando puntos, o que pierdes vidas, pues eso es lo que aprenderás a hacer.
Concepto de acumulación en C++
10:33
Lo que aprendiste en Pascal será casi idéntico aquí en C++.
Números reales (de punto flotante) en Pascal
23:24
No es lo mismo trabajar con números enteros que con números reales, por lo que aprenderás aquí a utilizar el tipo REAL de Pascal.
Números reales (de punto flotante) en C++
13:03
El tipo REAL tiene su homólogo en C++, así como en Java. Verás aquí cómo funciona.
Números reales (de punto flotante) en Java
20:09
Aplicarás los mismos conceptos vistos en Pascal y C++ con números reales pero ahora en Java.
Constantes en Pascal
15:49
Las constantes son como "variables" que no cambian de valor, manteniéndolo justamente constante. Su utilidad al principio no es muy notoria, pero en la medida en que avancemos en el curso verás que las usaremos para todo.
Constantes en C++
12:38
Veamos cómo utilizar constantes en C++.
Constantes (variables finales) en Java
07:05
En Java las constantes se conocen como variables finales, aunque su funcionamiento es igual que en Pascal y C++.
Constantes y números reales en JavaScript
12:28
Veamos todo lo visto en Pascal, Java y C++ ahora en JavaScript, donde las cosas cambian un poco pero la esencia sigue siendo la misma.
Prácticas de entrada y cálculos con Pascal
10:31
Practiquemos un poco con la entrada estándar y la realización de cálculos sencillos en Pascal.
Lectura simultánea de variables en Pascal
15:02
Veamos cómo leer más de una variable a la vez y, por ende, más de un dato en simultáneo desde la consola con Pascal.
Profundizando el uso de READ en Pascal
10:22
Entendamos a fondo el uso de READ en Pascal.
Uso de comentarios y documentación en Pascal
07:33
Empezaremos a utilizar comentarios y a documentar el código en Pascal, luego veremos cómo hacer esto mismo en el resto de lenguajes.
Tipos de división matemática en Pascal
14:50
Este punto es clave: veremos la diferencia entre la división matemática entera y la división real, entiendo cómo realizar la operación de módulo o cálculo de resto. Esto conllevará a algunas diferencias entre un lenguaje y otro, por lo que es importante que prestes atención.
Comentarios y divisiones matemáticas en C++
10:37
Veamos cómo usar comentarios en C++ y cómo además aplicar la división entera y la división real en este lenguaje.
División entera y real en Java
17:58
Veamos cómo realiza Java la división entera y la división real.
Divisiones matemáticas en JavaScript y comentarios JS-HTML
09:16
La división entera y real en JavaScript es un poquito más complicada que en los otros lenguajes, pero nada que no puedas comprender si prestas la debida atención. Como hemos dicho en otras oportunidades, la esencia siempre es la misma, cambia un poco la mecánica que hay detrás.
Lectura de caracteres en Pascal
07:19
Trabajaremos un poco con caracteres (el tipo CHAR), que resultará muy útil a futuro.
Secuencias de escape y lectura de caracteres en C++
12:35
Veamos cómo trabajar con caracteres en C++ y el uso de secuencias de escape, concepto que no existe como tal en Pascal pero que sí puede ser emulado, cuestión que verás a futuro.
Secuencias de escape en Java
07:49
Veamos las secuencias de escape en Java, que son idénticas a las de C++ y también a las de JavaScript.
Inferencia de tipos en C++
05:34
Reciéntemente se ha introducido en C++ el concepto de inferencia de tipos, que sirve para declarar variables sin indicar explícitamente su tipo de datos. Es lo que JavaScript hace todo el tiempo, ya que los datos en este lenguaje son dinámicos. Este concepto también existe en Java.
Inferencia de tipos en Java
07:55
Veamos cómo utiliza Java la inferencia de tipos que vimos en C++. JavaScript siempre está infiriendo tipos, así que el concepto es nativo en dicho lenguaje.
Caracteres de escape en JavaScript
15:25
Veamos cómo usar los caracteres de escape en JavaScript. Spoiler: es igual que en C++ y Java.
21 Lectures | 04:22:36
Sentencia IF en Pascal
13:17
A partir de ahora los programas se vuelven más interesantes porque será posible tomar diferentes caminos dependiendo de condiciones que nosotros como programadores/as definiremos. Veamos cómo utilizar la sentencia IF en Pascal y traslademos eso luego al resto de lenguajes.
Diagrama de flujo
13:34
Esquematizar siempre es de gran ayuda, y es independiente del lenguaje que estés utilizando. Es importante que aprendas las bases de crear diagramas de flujo, porque implica "pensar antes de hacer", planificar y ver a largo plazo.
Sentencia IF en C++
14:24
Veamos cómo utilizar IF en C++.
Sentencia IF en Java
14:31
Veamos el IF en Java, que es idéntico al de C++.
Sentencia IF en JavaScript
05:27
Veamos cómo utilizar IF en JavaScript, que es igual al visto en Java y en C++.
Diagrama de concatenación IF
05:49
Diagramemos una concatenación de IF para entender lo que hay detrás, y luego llevemos eso a nuestros lenguajes de programación.
IF concatenado en Pascal
14:24
Concatenar IF es algo muy común y, de hecho, necesario. Veamos cómo lograrlo en Pascal.
Aplicación práctica de concatenación IF en Pascal
18:50
Hagamos un ejercicio de concatenación IF en Pascal para luego pasar a otros lenguajes.
IF concatenado en C++
18:36
Ahora veamos cómo es la sintaxis de C++ para concatenar un IF con otro.
IF concatenado en Java
15:11
Veamos cómo hace Java para concatenar IF.
IF concatenado en JavaScript
14:20
JavaScript tiene una sintaxis idéntica a Java y C++ para crear IF concatenados, aún así no está de más ver cómo funciona.
Selección múltiple en Pascal con CASE-ELSE
15:40
Hay una sentencia que permite usar IF concatenados pero sin escribir IF. En Pascal dicha sentencia se llama CASE, luego en el resto de lenguajes se llama SWITCH, y aunque su sintaxis cambia y algo de su mecánica también, en esencia es todo lo mismo.
Selección múltiple en C++ con SWITCH
09:12
Ahora CASE se llama SWITCH, y además requiere una instrucción extra llamada break para funcionar tal como vimos en Pascal. Veamos cómo aplica esto en C++.
Selección múltiple en Java con SWITCH
14:03
Lo visto en C++ es idéntico aquí en Java.
Selección múltiple en JavaScript con SWITCH
06:59
C++, Java y JavaScript funcionan de forma idéntica en su sentencia SWITCH, asimismo veremos un ejemplo en JS para que no queden dudas.
Tipo BOOLEAN y operadores lógicos en Pascal
17:49
El tipo BOOLEAN se vuelve imprescindible, y aunque complejiza un poco las cosas, es quién te dota de la capacidad de generar condiciones complejas para la toma de decisiones en tus programas. Veamos cómo usar este tipo de datos en Pascal.
El tipo BOOL y operadores lógicos en C++
17:42
El tipo BOOLEAN visto en Pascal ahora se llama bool, pero funciona igual.
El tipo BOOLEAN y operadores lógicos en Java
13:19
El tipo bool ahora vuelve a ser boolean, pero también funciona igual que en Pascal y C++.
Booleanos y operadores lógicos en JavaScript
02:55
Aquí no hay un nombre para el tipo de datos, pero sigue siendo un booleano que puede valer TRUE o FALSE según sea necesario. Veamos un ejemplo de uso en JavaScript.
Operadores comparativos en Java
11:38
Veamos algunos operadores comparativos de Java para ir cerrando el concepto de selección.
Anidación IF en todos los lenguajes
04:56
Veamos ejemplos de anidación IF en todos los lenguajes abarcados por este curso.
20 Lectures | 04:03:00
Secuencia FOR en Pascal
21:59
La iteración es el último pilar de la Programación Estructurada, y es lo último que veremos en los 4 lenguajes para luego quedarnos solo con Pascal y JavaScript (y obviamente HTML y CSS). Comenzaremos con la sentencia FOR en Pascal para luego pasar a usarla en C++, Java y JavaScript.
Caso práctico en Pascal: el juego de adivinar un número
14:50
Crearemos un pequeño programa en el que intentas adivinar un número secreto en una cantidad finita de intentos.
Anidación FOR en Pascal
13:34
Veamos cómo anidar una instrucción FOR dentro de otra y las implicancias que esto tiene.
Sentencia FOR en C++
21:18
El funcionamiento de FOR en C++ es idéntico a lo visto en Pascal, pero su sintaxis cambia bastante. Veamos cómo funciona esta sentencia.
Sentencia FOR en Java
18:24
Como Java está basado en C++, la sintaxis de las estructuras básicas es idéntica, así que el FOR se escribe y utiliza de forma equivalente.
Sentencia FOR en JavaScript
10:44
Lo que viste en C++ y Java será idéntico aquí, salvo por el uso de VAR o LET, cuestiones que se volverán muy importantes a futuro.
Generación de números aleatorios en Pascal
06:54
Veamos cómo lograr obtener números al azar en Pascal mediante la función RANDOM y el procedimiento RANDOMIZE.
Generación de números aleatorios en C++
14:33
Obtener números aleatorios en C++ es bastante distinto a lo visto en Pascal, pero nada que desentone mucho.
Generación de números aleatorios en Java
12:53
Veamos cómo hace Java para obtener números al azar.
Generación de números aleatorios en JavaScript
04:54
En JavaScript es todo bastante distinto, por lo que es importante que veas exactamente cómo obtener números aleatorios en este lenguaje.
OBLIGATORIO: Proyecto 01 - Adivinador 2.0
05:58
En esta clase te propongo un proyecto sencillo que debes realizar obligatoriamente en Pascal y en JavaScript, y opcionalmente en Java y C++. Verás la descripción en el video y tendrás un PDF con el detalle minucioso de lo que debes realizar.
Bucle condicional WHILE en Pascal
12:53
Aprenderás ahora a generar bucles condicionales cuyas repeticiones no son finitas ni predefinidas como ocurre con FOR. Veamos primero que nada el uso de WHILE.
Bucle condicional WHILE en C++
10:02
Conociendo WHILE en Pascal es sumamente fácil adaptarlo a la sintaxis de C++.
Bucle condicional WHILE en Java
11:18
Como de costumbre, en Java las bases del lenguaje son idénticas a C++, y WHILE no es la excepción.
Bucle condicional WHILE en JavaScript
06:47
En JavaScript todo funciona idéntico a C++ y Java en lo que a sentencias básicas refiere.
Bucle condicional REPEAT en Pascal
06:53
La sentencia REPEAT cumple el mismo papel que WHILE con una sutil diferencia: se ejecuta siempre al menos una vez. Además, la condición de un REPEAT siempre es opuesta a la de un WHILE, por lo que hay que invertirla para pasar de una sentencia a otra.
Bucle condicional DO-WHILE en C++
06:23
No hemos visto ningún otro lenguaje con una sentencia REPEAT, sino que te encontrarás con DO-WHILE. Sigue cumpliendo la misma condición de ejecutarse al menos una vez, pero para pasar de un WHILE a un DO-WHILE no hace falta invertir la condición. Veamos cómo funciona esto en C++.
Bucle condicional DO-WHILE en Java
10:00
En Java tienes un DO-WHILE idéntico al que hay en C++.
Bucle condicional DO-WHILE en JavaScript
02:33
En JavaScript tienes el mismo DO-WHILE que en C++ y en Java.
OPCIONAL: Proyecto 02 - Adivinador 3.0
30:10
Este proyecto es opcional ya que te invita a investiga un poco el funcionamiento de cada lenguaje y a utilizar tu creatividad para adaptar el funcionamiento de consola hecho en Pascal al funcionamiento de navegador de JavaScript. También debes ver cómo obtener logaritmo en base 2 en cada lenguaje. Como programador/a siempre estarás enfrentando situaciones como estas: se debe lograr algo pero no se sabe cómo, así que hay que buscar respuestas en internet o incluso publicar preguntas a ver si alguien sabe cómo solucionar un problema concreto.
22 Lectures | 04:50:31
Tipos primitivos y subrangos en Pascal
11:54
Veamos en más detalles los tipos primitivos en Pascal.
Arreglos en Pascal
17:32
Dejando atrás a C++ y Java, es momento de aprender a usar tipos de datos estructurados, siendo el primero el arreglo.
Arreglos en JavaScript
19:42
Los arreglos en JavaScript funcionan de manera similar a Pascal en su sintaxis, pero internamente son muy diferentes.
Búsqueda lineal en arreglos en Pascal
09:45
Aprendamos a buscar elementos dentro de un arreglo.
Búsqueda en arreglos en JavaScript
14:32
Hagamos búsquedas en JavaScript.
Ejemplo práctico de arreglos en Pascal: buscando caracteres
07:48
Practiquemos un poco más con arreglos lineales antes de pasar a las matrices.
Ejemplo práctico de arreglos en JavaScript: caracteres repetidos
08:44
Lo visto en Pascal pero ahora en JavaScript.
Arreglos dinámicos en Pascal
07:02
En JavaScript todo arreglo es dinámico, pero en Pascal no, por lo que hay distinción entre los arreglos estáticos y los dinámicos. Veamos un poquito esto.
Arreglos bidimensionales (tablas) en Pascal
09:38
Veamos cómo crear matrices o arreglos de dos dimensiones.
Arreglos bidimensionales (tablas) en JavaScript
10:27
En JavaScript las cosas son un poquito diferentes cuando de tablas o matrices se trata.
Números aleatorios sin repetir en un arreglo en Pascal
20:54
Entrenemos un poco el uso de arreglos y su recorrido.
Números aleatorios sin repetir en una tabla en JavaScript
21:46
Repitamos el proceso en JavaScript.
Depurador en Lazarus
10:25
Aprendamos a usar el depurador, un herramienta crucial para detectar, buscar y reparar errores en nuestros códigos.
Depurador en Netbeans y Chrome
15:34
Aprende también a usar el depurador de NetBeans en conjunto con el de Chrome.
Lectura paso por paso en Pascal
38:55
Leer caracteres uno a uno no es una tarea tan sencilla como parece.
Generación de letras aleatorias en JavaScript
12:00
Podemos generar números al azar pero... ¿letras?
Acumulación en un String en JavaScript
04:18
Aprende a acumular o concatenar cadenas en JavaScript para generar salidas más interesantes.
OBLIGATORIO: Proyecto 03 - Truco de las 21 cartas en Pascal y JavaScript
08:44
Crearemos la primera versión del truco de cartas que adivina la carta que el jugador tiene en mente de un total de 21 presentadas. En esta oportunidad trabajaremos con caracteres; a futuro agregaremos imágenes pero aun no es el momento. Este proyecto es obligatorio.
OBLIGATORIO: Proyecto 04 - MasterMind 1.0
18:22
Esta clase propone un proyecto extremadamente retador pero imprescindible, ya que es el camino para desarrollar verdaderamente tus cualidades y capacidades como programador/a.
OBLIGATORIO: Proyecto 05 - MasterMind 2.0
06:10
Este proyecto propone una "pequeña" variación al proyecto anterior, lo cual hará que trabajes con el código que ya escribiste teniendo que modificarlo y mejorarlo. Es un acercamiento al "mantenimiento de código".
Recorriendo arreglos con FOR-IN en Pascal
09:02
Ahora que sabes trabajar con arreglos podemos ver una variante del bucle FOR específicamente pensada para recorrer arreglos con una sintaxis más simple.
Recorriendo arreglos con FOR-OF en JavaScript
07:17
Análogo al FOR-IN de Pascal, JavaScript tiene FOR-OF para recorrer arreglos.
15 Lectures | 04:12:43
Procedimientos en Pascal
16:56
Comienza aquí el aprendizaje sobre modularización de código y el trabajo con subprogramas, herramienta que de ahora en más será indispensable. Iniciarás aprendiéndolo en Pascal dado lo robusto de este lenguaje, ya que en JavaScript las cosas son más simples y eso propicia el no comprender de fondo lo que ocurre realmente.
Parámetros en Pascal
10:53
Hablar de subprogramas es hablar de parámetros o argumentos. Veamos qué son y para qué sirven.
Funciones en Pascal
12:25
Las funciones son como los procedimientos salvo que retornan valores al final. Veamos cómo funcionan y para qué sirven.
Alcance de identificadores en Pascal
10:58
Los subprogramas introducen un nuevo concepto que debe ser comprendido: el alcance en los identificadores (nombres) que utilizamos en el código, ya que ahora aparecerán elementos locales y globales, así como contextos o bloques.
Ejemplo de función booleana en Pascal
18:53
Usemos las funciones que arrojan valores boolean ya que tienen una utilidad particular.
Pasaje de parámetros por referencia en Pascal
12:36
Este concepto es crucial y JavaScript no provee un marco en el cual aprenderlo correctamente. Comprenderás las diferencias entre pasajes de parámetros y dominarás las referencias, ya que aunque JavaScript no permite usarlas de forma explícita, implícitamente las estarás manipulando. Pascal será entonces el marco ideal para comprender este tema.
Declaración adelantada con FORWARD en Pascal
09:51
Este concepto es solo aplicable a Pascal, ya que JavaScript posee una característica llamada levantamiento, que permite declarar cualquier elemento en cualquier parte del código independientemente de dónde será utilizado (o casi). Sin embargo, comprender cómo Pascal funciona (y también Java, C++ y otros lenguajes), te permite utilizar buenas prácticas como programador/a,
Ejemplos prácticos en Pascal
12:30
Comprendamos a fondo el uso de subprogramas con ejemplos prácticos.
Sobrecarga en Pascal
11:18
La sobrecarga es la capacidad del lenguaje de utilizar el mismo identificador para diferentes operaciones, siempre y cuando su firma tenga variaciones. En Pascal esto es plenamente posible, al igual que en Java, C++ y otros lenguajes fuertemente tipados, pero no lo es tanto en JavaScript como verás en clases posteriores.
Procedimientos en JavaScript: teoría y práctica
31:59
Ahora que tienes pleno dominio de procedimientos en Pascal, es hora de introducirlos en JavaScript.
Funciones en JavaScript: teoría y práctica
43:42
Comprenderás que en JavaScript todo son funciones en realidad, pero sin embargo podemos usarlas como procedimientos cuando retornan un valor undefined (en Java o C++ por ejemplo este valor es void). Asimismo hay cuestiones importantes a comprender del uso de funciones en JavaScript.
Alcance de identificadores en JavaScript
11:54
Veamos cómo funciona el alcance en JavaScript, así como la introducción de la palabra reservada let.
Pasaje de parámetros en JavaScript
24:17
Hay una enorme diferencia en el pasaje de parámetros que propone JavaScript respecto al que propone Pascal. En JS no podrás usar referencias, aunque sin embargo siempre estarán allí. Lo comprenderás a fondo cuando trabajemos con punteros, sin embargo ahora es momento de entender ciertas cuestiones importantes.
Tipos de funciones en JavaSript
19:17
JavaScript propone varios tipos de sintaxis para definir funciones, veamos los pros y contras de cada cual y conozcamos los que existen.
Proyecto MasterMind 2.5
05:14
Este proyecto propone modificar el código del programa MasterMind aplicando el uso de subprogramas. El funcionamiento de cara al usuario seguirá siendo el mismo, sin embargo internamente la estructura de tu programa estará ahora modularizada.
9 Lectures | 02:46:40
Enumeraciones en Pascal
21:43
Es momento de comenzar a trabajar más profundamente con tipos de datos estructurados. Ya viste los arreglos, pero ahora es momento de ir avanzando en este camino. En JavaScript no existen las enumeraciones, pero aún así encontraremos mecanismos para emular este comportamiento, por lo que es importante que lo domines en Pascal para comprender lo que hay de fondo.
Aplicando enumerados en juego de Adivinador
11:07
Entender los conceptos mediante ejemplos prácticos es importante, así que trabajemos con enumeraciones.
Registros en Pascal
23:14
Los registros son el primer tipo de datos estructurado que presentará la precuela de lo que son los objetos. Claro, falta muchísimo recorrido para llegar allí, pero a partir de aquí comenzaremos a construir dicha teoría.
Usando registros en juego de Adivinador
24:34
Apliquemos el uso de registros de forma práctica modificando el Adivinador.
Registros y enumerados en JavaScript
27:06
En JavaScript no existen los registros del mismo modo que en Pascal o que el tipo struct en C++, por lo que emularemos dicho comportamiento usando las herramientas que JS pone a nuestra disposición.
Arreglos con tope en Pascal
13:09
Una forma ingeniosa de tener listas "dinámicas" en un programa.
Arreglos con tope en JavaScript
22:13
Los arreglos de JavaScript son de por sí dinámicos, por lo que no tiene sentido la aplicación vista anteriormente en Pascal, aunque hay cosas interesantes por hacer.
Arreglos avanzados en JavaScript
14:56
Veamos más en detalle el poder de los arreglos en JavaScript.
Proyecto MasterMind 3.0
08:38
En este proyecto el MasterMind se volverá más interesante, ya que ahora invertiremos los papeles y tú serás el pensador, teniendo tu programa que adivinar el código en base a las notas que recibirá por tu parte.
10 Lectures | 02:55:59
Creación de unidades en Pascal
32:27
Es momento de comenzar a dividir el programa en archivos independientes. En Pascal se logra mediante unidades, en JavaScript de momento lo haremos de manera simple con scripts independientes, lo cual verás en la clase siguiente.
Separación de código en JavaScript
11:54
Aunque esto no es modularización propiamente dicha, genera la ilusión de serlo y además permite un trabajo mucho más organizado con programas cada vez más grandes en JavaScript, sin embargo no permite usar scripts que usen subprogramas, variables o constantes definidos en otros, y eso es una limitación enorme. No podemos, tal como se hace en Pascal, importar cosas de un archivo JavaScript a otro, al menos no de momento, sin embargo esto te permitirá iniciar con un trabajo modular que se extenderá luego.
Enlazar archivos HTML
06:02
En la Web no todo se trata de crear diferentes archivos de scripts, es crucial poder usar diferentes archivos HTML, es decir, diferentes páginas.
Proyecto MasterMind4.0
07:09
Este proyecto será sumamente sencillo, ya que constará únicamente de unir las dos funcionalidades desarrolladas en todos los proyectos anteriores, de forma que el usuario pueda elegir si quiere jugar como Adivinador o como Pensador.
Caso de estudio: Juego de la Vida Pascal - Presentación (1/4)
13:09
Caso de estudio: Juego de la Vida Pascal - Estructura (2/4)
14:37
Caso de estudio: Juego de la Vida Pascal - Implementación inicial (3/4)
25:55
Caso de estudio: Juego de la Vida Pascal - Implementación final (4/4)
17:17
Caso de estudio: Juego de la Vida en HTML-JavaScript
25:58
Proyecto Buscaminas
21:31
10 Lectures | 04:35:52
Funcionamiento del módulo
01:13
Introducción a los archivos en Pascal
19:42
Creando, leyendo y modificando archivos en Pascal
26:20
Manipulación de archivos de texto plano en Pascal
48:41
Creando un procesador de textos básico
58:18
Archivos con tipo estructurado en Pascal
20:37
Tipado avanzado de archivos en Pascal
19:14
Creando una base de datos simple en Pascal
24:39
Eliminar registros de un archivo estructurado en Pascal
26:10
Creando un SGBD (DBMS) manual
30:58
7 Lectures | 01:39:24
LocalStorage en JS
15:29
Creando registros en LocalStorage
16:42
Crear un formulario básico para registrar personas
19:43
Formatear registros como una tabla de base de datos
16:30
InnerHTML y uso básico de tablas HTML
19:43
Creando un procesador de textos básico en el navegador
05:27
Proyectos: Una base de datos simple en JS y Pascal
05:50
10 Lectures | 03:04:51
Conceptos previos sobre punteros y memoria dinámica
01:59
Punteros
21:06
Punteros a registros: la precuela de los objetos
18:21
Lista simple encadenada (linked list)
20:14
Añadir nodos a una lista simple encadeanda
19:57
Eliminar nodos de una lista encadenada
29:09
Usando punteros en NotePad
20:02
Stress testing
13:48
Punteros en JavaScript
23:46
Listas encadenadas en JavaScript
16:29
21 Lectures | 10:12:39
Modularización en Pascal con unidades
23:42
Tipos Abstractos de Datos
01:03:55
Módulos en JavaScript
31:34
Plantillas de Strings en JavaScript
08:42
Expresiones regulares en Pascal y JavaScript
34:39
Caso de estudio: Gestión de cursos - Requerimientos
21:58
Caso de estudio: definiendo persistencia y tipos básicos
53:46
Caso de estudio: implementación de operaciones
23:46
Caso de estudio: diseño de colecciones
10:35
Caso de estudio: implementación de colecciones
51:47
Caso de estudio: gestores de salida y mensajes
36:02
Caso de estudio: UDBMS
33:59
Caso de estudio: controlador y programa principal
58:47
Proyecto: Gestión de cursos
58:43
TAD Docente
23:14
TAD LinkedList
15:17
TAD Pila y Cola (Stack y Queue)
10:18
TAD Árbol Binario de Búsqueda
16:52
Eliminar nodos de un ABB
34:21
Proyecto: mejorando Gestión de Cursos
00:17
Proyecto: TADs en JavaScript
00:25
3 Lectures | 01:16:38
Recursividad
26:58
Pila de llamadas en recursión
28:58
Recursividad en JavaScript
20:42
13 Lectures | 04:19:44
Orientación a objetos y JavaScript
03:45
Programación Orientada a Objetos
26:01
Definición de clases de objetos (class)
17:33
Modificadores de acceso (encapsulamiento)
08:18
Listas encadenadas usando clases
29:27
Clases internas y primitivas de listas encadenadas
19:08
Automatizando enumeraciones
08:20
Propiedades en vez de get y set
20:22
Usando clases en Adivinador
48:45
Programa principal de Adivinador con clases
27:46
Campos estáticos de una clase
29:25
Patrón de diseño SINGLETON
10:52
Proyecto BattleShip (batalla naval)
10:02
4 Lectures | 01:45:41
Modelos de objetos en JavaScript
24:43
Modularización de Adivinador en JS
49:38
Campos estáticos y uso de Prototype en JS
20:29
Patrón SINGLETON en JavaScript
10:51
11 Lectures | 04:03:54
Encapsulamiento y herencia
17:11
Herencia y casteo de tipos (type castig)
21:09
Interfaces
21:55
Uso avanzado de interfaces
32:12
Generalizando objetos en una colección
23:08
Polimorfismo
14:27
Clases abstractas
17:41
Genéricos
25:37
Genéricos en colecciones
16:19
Captura de excpeciones
29:57
Lanzamiento de excepciones
24:18
3 Lectures | 01:02:07
Herencia y polimorfismo limitado de JavaScript
19:01
Captura y lanzamiento de excepciones en JavaScript
14:12
JSON
28:54
20 Lectures | 07:38:36
Hola mundo
15:17
Campos de texto
24:06
Creando un formulario simple
26:08
Uso de foco y tabulación en componentes
12:39
Áreas de texto
31:31
Botones de radio y cajas de check
50:49
Listas desplegables
14:29
Listas múltiples
16:12
Cuadros de diálogo predefinidos
28:53
Diálogos de apertura y guardado
18:15
Cuadros de diálogo avanzados
16:44
Paneles
12:36
Menús
18:47
Tablas
25:57
Imágenes
23:37
Generación dinámica de componentes
52:14
Acciones en vez de eventos
35:59
Listas filtrables
21:18
Proyecto: calculadora
05:38
Proyecto: Gestión de Cursos GUI
07:27
14 Lectures | 04:04:51
Reglas horizontales y viñetas (listas)
13:46
Enlazado externo de una página (links)
18:54
Enlazado interno de una página (anclas)
07:02
Barras de progreso
15:37
Tablas
15:47
Elementos de formularios
33:24
Eventos esenciales de formularios, campos de contraseña y ocultos
26:47
Elementos meta esenciales
05:49
Elementos de estructuración de página
26:03
Formateo de texto
20:19
Imágenes
19:13
Mapas de imágenes
33:03
Elemento picture
04:23
Favicon del sitio
04:44
7 Lectures | 01:21:35
Documentación oficial de HTML
05:13
Workers y programación multihilo
19:44
Cuadros de diálogo
10:33
Ventanas internas con IFrame
07:58
Video
12:33
Audio
02:42
Drag & Drop
22:52
6 Lectures | 02:21:56
Introducción a canvas
08:13
Arcos, sombras y más
13:56
Mover figura dentro del canvas con el teclado
20:50
Dibujar imagen dentro de canvas
11:07
Prototipo de juego básico (con uso de texto)
45:11
Haciendo scroll de una imagen en DIV y en CANVAS
42:39
19 Lectures | 04:09:05
Introducción a CSS: formas de aplicar estilos en una página
19:22
Selectores básicos
10:39
Selectores de ID y clases de estilos
12:01
Fuentes
15:29
Posicionamiento de elementos
20:54
Uso de capas con Z-INDEX
08:49
Fondos con color y con imágenes
20:11
Modelo de cajas
17:03
Alineación de componentes
05:06
Menú desplegable
12:29
Barra de navegación
14:57
Sombreado y estilizado práctico
23:28
Relleno con degradé
07:58
Usando imágenes como bordes
08:06
Transiciones
07:42
Transformaciones
05:51
Menú contextual personalizado
20:53
Tooltip
08:26
Panel tabulado
09:41
0
(0 course ratings)
1
0/0
2
0/0
3
0/0
4
0/0
5
0/0
JOIN OUR WHATSAPP GROUP TO GET LATEST COUPON AS SOON AS UPDATED
If you like to get inspired by great web projects, you should check out Made with Javascript. If you have a project that you wish to share with the world, feel free to submit your project on Made with Javascript Club website.
Free Online Tools And Converters for your use
URL Encoder
Input a string of text or a URL and encode the entered string
La ruta definitiva para aprender a programar desde cero, tanto en escritorio como en la Web
FAQ: Udemy Free course Most frequent questions and answers
Does Udemy offer Free Udemy coupons?
Yes, Udemy is the largest online education platform, with the broadest selection of video-on-demand courses and qualified instructors available to meet your needs. At theprogrammingbuddy.club we curate the latest udemy coupons, their expiry, and the number of uses left of these udemy coupons.
How to get free Udemy courses?
There are two ways to get free Udemy courses:
Go to udemy.com and search for your desired course category. Then select free from the filter options.
You can also get paid courses for free if you have a coupon. You can head to theprogrammingbuddy.club, where you can get a daily udemy paid course for free.
How to get Udemy Certificates for free?
Udemy offers certification on completion of each course. In order to receive a certificate of completion from Udemy, you need to complete your course 100%. There is a simple hack, you can open a video and jump on the timeline to complete a lecture.
To download the certificate from Udemy, you need to head over to your account on a desktop browser. Udemy certificates can't be accessed on the mobile app.
Do Udemy courses expire?
No, once you enroll, you will have lifetime access to the course. You can complete the course on your schedule.
Why are the Udemy instructors giving away free Udemy Coupons?
Every instructor has worked for hours on each of their courses. As new courses get launched, the instructors have no way to get their course in front of an audience to get some feedback. So, instructors share free coupons for their courses to get feedback from the students. We attheprogrammingbuddy.club work with these instructors to get their courses available to our buddies.
Is Udemy safe to use?
Yes, payments on Udemy are safe. It is no different than paying for other services on an application or website and inputting your payment information before receiving your goods. Just be sure to keep your account secure, do not share your udemy accounts.
Can Udemy courses get you a job?
Earning a skill is more valuable than earning a job these days. Skills are your most valuable asset. They can help you qualify for jobs you want and get promoted to more advanced positions within your organization. Unfortunately, it is difficult for many people to balance taking courses with work and family obligations. We have had many students, who have taken just Udemy courses, started a job as well as started freelancing with the skills they have learned.