Ruta de estudio con ejercicios para mejorar tu lógica de programación y aprender cualquier lenguaje. Gratis, a tu ritmo y en comunidad.
¿Estás participando en los retos? Ahora puedes consultar el ranking de usuarios y lenguajes según su número de contribuciones.
- Cada semana se publica un nuevo reto y se corrige en directo desde Twitch el ejercicio de la semana pasada.
- En la sección "Eventos" de nuestro servidor de Discord encontrarás el día y horario por país de los directos.
- Puedes utilizar cualquier lenguaje de programación, y encontrar tanto mis correcciones como las de la comunidad en el directorio de cada reto.
- ¿Quieres participar? Te lo explico en la sección Instrucciones en este mismo documento.
- Los retos siguen un orden basado en su ruta de estudio pero si ya tienes conocimientos puedes resolverlos de manera totalmente independiente. Simplemente revisa su nivel de dificultad.
- Una vez se haya cumplido la semana de publicación del reto, podrás consultar mi corrección y las de la comunidad en cualquier lenguaje de programación.
Consulta la web para más información.
Lunes 15 de julio de 2024 a las 20:00 (hora España) desde Twitch
Consulta el horario por país y crea un recordatorio
# | Ejercicio | Corrección | Vídeo | Comunidad |
---|---|---|---|---|
00 | SINTAXIS, VARIABLES, TIPOS DE DATOS Y HOLA MUNDO | 📝 | 👥 | |
01 | OPERADORES Y ESTRUCTURAS DE CONTROL | 📝 | 👥 | |
02 | FUNCIONES Y ALCANCE | 📝 | 👥 | |
03 | ESTRUCTURAS DE DATOS | 📝 | 👥 | |
04 | CADENAS DE CARACTERES | 📝 | 👥 | |
05 | VALOR Y REFERENCIA | 📝 | 👥 | |
06 | RECURSIVIDAD | 📝 | 👥 | |
07 | PILAS Y COLAS | 📝 | 👥 | |
08 | CLASES | 📝 | 👥 | |
09 | HERENCIA Y POLIMORFISMO | 📝 | 👥 | |
10 | EXCEPCIONES | 📝 | 👥 | |
11 | MANEJO DE FICHEROS | 📝 | 👥 | |
12 | JSON Y XML | 📝 | 👥 | |
13 | PRUEBAS UNITARIAS | 📝 | 👥 | |
14 | FECHAS | 📝 | 👥 | |
15 | ASINCRONÍA | 📝 | 👥 | |
16 | EXPRESIONES REGULARES | 📝 | 👥 | |
17 | ITERACIONES | 📝 | 👥 | |
18 | CONJUNTOS | 📝 | 👥 | |
19 | ENUMERACIONES | 📝 | 👥 | |
20 | PETICIONES HTTP | 📝 | 👥 | |
21 | CALLBACKS | 📝 | 👥 | |
22 | FUNCIONES DE ORDEN SUPERIOR | 📝 | 👥 | |
23 | SINGLETON | 📝 | 👥 | |
24 | DECORADORES | 📝 | 👥 | |
25 | LOGS | 📝 | 👥 | |
26 | SOLID: PRINCIPIO DE RESPONSABILIDAD ÚNICA | 📝 | 👥 | |
27 | SOLID: PRINCIPIO ABIERTO-CERRADO | 📝 | 👥 | |
28 | SOLID: PRINCIPIO DE SUSTITUCIÓN DE LISKOV | 🗓️ 15/07/24 | 👥 |
Haz un FORK del proyecto y trabaja con Git para ir sincronizando las actualizaciones.
- En el proyecto tienes un directorio para cada ejercicio en la carpeta Roadmap. Dentro de cada directorio encontrarás un fichero llamado ejercicio.md con el enunciado de cada reto.
- Si quieres compartir tu propia solución de un ejercicio con la comunidad, crea un fichero de código con tu nombre y extensión, y realiza una PULL REQUEST contra el repositorio.
- El fichero de código debe situarse dentro del directorio del reto, en la carpeta correspondiente al lenguaje de programación utilizado (si no existe la carpeta del lenguaje, créala con todas sus letras en minúsculas). Por ejemplo, si has resuelto el reto #00 utilizando el lenguaje de programación Python y tu usuario de GitHub se llama "mouredev", tu corrección deberá estar en "Roadmap/#00/python/mouredev.py". El título de la Pull Request también debe seguir este formato: "#[número] - [lenguaje_utilizado]". En el ejemplo anterior sería "#00 - Python". Se rechazarán las Pull Request que no sigan este formato o contengan ficheros adicionales.
- Cada SEMANA (consulta el día en el ejercicio correspondiente) realizaré una transmisión en directo desde Twitch corrigiendo el reto, revisando soluciones de la comunidad y publicando un nuevo ejercicio.
- Si necesitas ayuda o quieres comentar cualquier cosa sobre los retos semanales, tienes el canal "reto-semanal” en nuestro servidor de Discord (también el día y horario de corrección en la sección "Eventos").
- Puedes proponer Pull Request con propuestas o correcciones sobre ejercicios del resto de la comunidad si estos poseen errores. De esta manera colaboraremos para crear un repositorio cada vez más valioso.
- Si se te solicita un cambio/corrección en una Pull Request, y al cabo de 2 semanas no se muestra nueva actividad, se cerrará esa petición para mantener el repositorio limpio. Por supuesto, puedes volver a enviar la Pull Request cuando quieras.
Si tienes dudas con el nombre del directorio de algún lenguaje, intenta consultar el nombre que se ha empleado en ejercicios anteriores. Algunos ejemplos que puedes llegar a dudar:
- c#, no csharp
- c++, no cplusplus
- go, no golang
- javascript, no js
- Realiza un FORK del repositorio de retos semanales desde GitHub.
- CLONA ese repositorio a tu máquina local
git clone [TU-REPOSITORIO]
. - (Opcional) Crea una RAMA para la solución y desplázate a ella
git checkout -b [EL-NOMBRE-DE-TU-RAMA]
. - Añade el fichero de tu solución al STAGE
git add [FICHERO-DE-TU-RETO]
. - Haz COMMIT con el mensaje de la solución
git commit -m "#[NÚMERO-RETO] - [LENGUAJE-UTILIZADO]"
. - Haz PUSH
git push [EL-NOMBRE-DE-TU-RAMA]
(puede ser la "main" o la que creaste en el paso 3) - En el repositorio principal debes ir a la rama y hacer PULL REQUEST.
- CONTRIBUTE.
- CREATE PULL REQUEST (cubre la plantilla que te aparecerá).
- Si el proceso de entrega se ha realizado de forma correcta, se añadirá tu corrección al repositorio. En caso contrario, se te notificarán los cambios a realizar o los motivos del rechazo.
He creado un curso completo gratis para aprender a trabajar con Git y GitHub desde cero.
Consulta los 101 retos de programación resueltos y las 12 aplicaciones para tu portfolio que ya hemos desarrollado.
Soy ingeniero de software desde 2010. Desde 2018 combino mi trabajo desarrollando Apps con la creación de contenido formativo sobre programación y tecnología en diferentes redes sociales como @mouredev.