|
via Udemy |
Go to Course: https://www.udemy.com/course/programacion-fullstack-y-escritorio-desde-cero-a-profesional/
If you're looking to launch yourself into the world of programming with a comprehensive, practical, and industry-focused course, I highly recommend the Coursera "Fullstack Programming and Web Development" specialization. This course is meticulously designed to guide beginners from zero knowledge to a proficient level, enabling you to create applications, work as a freelancer, or land a programming job. **What Makes This Course Stand Out?** - **Structured Learning Path:** Unlike many courses that try to teach multiple languages superficially, this program offers a clear roadmap covering essential technologies and concepts. It begins with foundational programming in Pascal and JavaScript, then gradually progresses through data structures, object-oriented programming, web development, databases, and modern frameworks. - **Hands-On Projects:** The course emphasizes practical application. You'll work on projects such as creating graphical user interfaces, web pages with HTML, CSS, and JavaScript, and backend development with Node.js and SQL databases. This ensures you're not just learning theory but also building a portfolio of real-world work. - **Versatility and Market Relevance:** The curriculum includes current industry staples like React, Bootstrap, TypeScript, and Node.js. Mastery of these tools will make you highly employable and able to develop both desktop and web applications, with the potential to work freelance or as part of a team. - **Developer Skills for the Future:** By completing this course, you'll gain knowledge in concepts like object-oriented programming, data structures, database management, and modern UI development. These are critical skills in the current tech landscape. **Summary of Key Units:** - Programming basics with Pascal and JavaScript - Data structures and algorithms - Modular and object-oriented programming - Web development with HTML, CSS (via Bootstrap), and JavaScript (including DOM, jQuery, and TypeScript) - Front-end frameworks like React - Back-end development with Node.js, Express, and databases (MySQL, SQLite) - Creating graphical interfaces for desktop applications - Version control, deployment, and project management **My Final Recommendation:** This course is highly demanding, requiring dedication and effort, but the payoff is immense. You'll emerge with a solid understanding of both front-end and back-end development, ready to create professional applications, work on freelance projects, or prepare for software engineering roles. **Why Wait?** Embark on this learning journey today and transform from a complete beginner into a versatile programmer equipped with the skills demanded by the modern tech industry.
¿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 aplicacionesTrabaja 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.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: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 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:Arreglos linealesArreglos bidimensionales o matricesArreglos dinámicosArreglos como objetos en JavaScriptAlgoritmos de búsqueda y ordenaciónEl 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: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 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.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ó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 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 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 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 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á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 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 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-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 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 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.