• Stars
    star
    614
  • Rank 73,061 (Top 2 %)
  • Language
  • License
    Apache License 2.0
  • Created almost 3 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Ruta de aprendizaje desde cero para convertirte en Android Developer

📲 Android Developer Roadmap

Ruta de aprendizaje desde cero para convertirte en Android Developer en 2022

ℹ️ He creado este repositorio para actualizarlo continuamente con recursos de aprendizaje de dentro y fuera de la comunidad.

⚠️ IMPORTANTE: No dudes en sugerir cambios, hacer pull request o crear una nueva issue para compartir tus recursos y así añadirlos al repo con intención de crear una gran guía de estudio.

Introducción

▶️ Antes de empezar te servirá de ayuda ver una introducción detallada donde explico el roadmap y el funcionamiento del repositorio en mi tutorial de YouTube.

Proceso de aprendizaje

Debes entender que aprender programación es una carrera de fondo. Tendrás mejores y peores momentos, pero, ¿sabes qué? ¡Le pasa a todo el mundo!. Al final del trayecto te espera un sector lleno de grandes oportunidades. Te recomiendo que te unas a nuestro servidor de Discord, donde compartimos recursos y nos ayudamos.

Discord

Para mejorar nuestras habilidades publico retos de programación semanales y mensuales en estos dos repositorios. También desarrollamos nuestra aplicación real Twitimer, disponible en Google Play Store y Huawei AppGallery, con todo su código público.

Reto mensual Reto semanal Twitimer

🍏 Este roadmap también lo tienes disponible para desarrollo de aplicaciones en entornos Apple.

Apple Developer Roadmap

Fuentes de información

Recuerda la importancia de desarrollar habilidades para resolver problemas y encontrar información relevante. Puede sonal mal, pero Google es una de nuestras principales herramientas de trabajo, y debemos saber usarlo. Otros lugares que debes conocer son:

Ruta de aprendizaje

El roadmap estará compuesto por algunos recursos oficiales, otros creados por mí, y por los sugeridos desde la propia comunidad como comento al principio de este documento. Por supuesto, esta mi ruta personal para aprender desarrollo de aplicaciones desde cero y dedicarte profesionalmente a ello (en ningún momento quiero que pienses que es la mejor o la única, simplemente es la que yo creo que te puede ayudar).

📈 A continuación tendrás el roadmap formado por un listado de conocimientos a adquirir (así como distintos sitios web donde comenzar su aprendizaje). Este listado se irá actualizando y completando, incluso creando nuevos documentos para agrupar enlaces de interés.

1️⃣ Lenguaje de programación: Kotlin

Debes aprender sus fundamentos, tipos de datos primivos y estructuras, flujo lógico y paradigma de programación orientada a objetos.

2️⃣ Editores de código: Android Studio y Kotlin Playground Online

Puedes usar estos dos editores de código para aprender Kotlin, eso sí, para crear aplicaciones no podrás hacerlo con el editor online.

También debes comenzar a conocer otros conceptos importantes dentro de la ingeniería de software:

  • Expresiones regulares.
  • Recursividad.
  • Notación asintótica.
  • Funciones de orden superior.
  • Porgramación orientada a objetos.

3️⃣ Librerías y Frameworks: Android Views y Jetpack Compose

Es hora de comenzar a trabajar con las librerías de código que nos proporciona Android para crear Apps. Nos centraremos en las especializadas en creación de interfaces de usuario (UI): Android Views y Jetpack Compose (el nuevo framework lanzado en 2021 diseñado para poco a poco sustituir a Android Views).

Otros conceptos importantes a tener en cuenta:

  • XML
  • Programación orientada a estados.
  • Programación imperativa.
  • Programación declarativa.
  • Programación funcional.

4️⃣ Guías de desarrollo y diseño

La documentación oficial de Android es esencial para conocer sus normas, recomendaciones y procesos.

No olvides la importancia de los siguiente conceptos:

  • Comentarios de código.
  • Markdown como lenguaje marcador para generar documentación.

5️⃣ Patrones de diseño

Mecanismos para resolver de forma elegante problemas comunes en programación

Estos son algunos de los principales:

  • Singleton.
  • Factory.
  • Builder.
  • Adapter.
  • Facade.
  • Observer.
  • Iterator.
  • ...

6️⃣ Arquitectura de software: MVC y MVVM

La arquitectura de software de nuestro programa hace referencia a cómo se estructura nuestro programa en capas y cuál es la responsabilidad de cada una de las piezas que conforman nuestra App.

  • MVC (Modelo-Vista-Controlador): Arquitectura básica.
  • MVVM (Modelo-Vista-VistaModelo): Arquitectura más avanzada.

Sigue trabajando estos nuevos conceptos:

  • Principios SOLID.
  • Programación en base a código limpio.

7️⃣ Funcionalidades

Implementaciones de características muy habituales en aplicaciones de todo tipo que debes conocer.

Gestor de dependencias para ayudarnos a trabajar con código de terceros y gestionar el ciclo de vida de la aplicación:

8️⃣ Esenciales

Aprender a desarrollar aplicaciones para entornos Android precisa de otras habilidades esenciales no directamente relacionadas.

  • Aprende Inglés: La mayor parte de la documentación y código se escribe en este idioma.
    • Cambly te permite aprender online con profesores nativos de forma online.
  • Git: Es básico saber trabajar con el gestor de versiones más utilizado.
    • Puedes ayudarte usando clientes gráficos como GitKraken (en vez de hacer todo por línea de comandos).

9️⃣ Pruebas

Debes adquirir habilidades de testing y debug para mantener tu código íntegro y libre de errores.

1️⃣0️⃣ Publicación

Ya sólo falta cómo desplegar aplicaciones en la Google Play Store.

🎓 EXTRAS: Aquí te dejo algún recurso extra relacionado con aprendizaje y obtención de certificaciones:

Este es el roadmap básico para convertirse en Apple Developer. No olvides hacer ⭐️ para seguir sus futuras actualizaciones. Ayúdame a mejorar con tu feedback ¡MUCHAS GRACIAS!

Puedes apoyar mi trabajo haciendo "☆ Star" en el repo o nominarme a "GitHub Star". ¡Gracias!

GitHub Star

https://mouredev.com Hola, mi nombre es Brais Moure.

Freelance full-stack iOS & Android engineer

YouTube Channel Subscribers Twitch Status Discord Twitter Follow GitHub Followers

Soy ingeniero de software desde hace más de 12 años. Desde hace 4 años combino mi trabajo desarrollando Apps con creación de contenido formativo sobre programación y tecnología en diferentes redes sociales como @mouredev.

En mi perfil de GitHub tienes más información

Web

More Repositories

1

Hello-Python

Curso para aprender el lenguaje de programación Python desde cero y para principiantes. Más de 30 clases, 25 horas en vídeo, código y grupo de chat. Desde sus fundamentos hasta la creación de un API Backend con base de datos y más...
Python
13,643
star
2

hello-git

Curso para aprender a trabajar con el sistema de control de versiones Git y la plataforma GitHub desde cero y para principiantes. Elaborado durante las emisiones en directo desde Twitch de MoureDev.
3,447
star
3

retos-programacion-2023

Ejercicios de código semanales en 2023 de la comunidad MoureDev para practicar lógica en cualquier lenguaje de programación.
Python
2,633
star
4

Weekly-Challenge-2022-Kotlin

Ejercicios de código semanales en 2022 de la comunidad MoureDev para practicar lógica en cualquier lenguaje de programación.
Kotlin
1,615
star
5

mouredev

Hola 👋 Soy Brais Moure 💻 Freelance full-stack dev 📲 iOS & Android engineer ♥️ Swift & Kotlin 📖 YouTube, Twitch, Discord & Elgato partner 👥 Microsoft MVP & GDG 👾 Geek & Friki
1,339
star
6

one-day-one-language

Cómo dar en un día tus primeros pasos en cada lenguaje de programación. Introducción, configuración e instalación, usos habituales, fundamentos, sintaxis y próximos pasos.
Java
944
star
7

Monthly-App-Challenge-2022

Retos mensuales de la comunidad MoureDev para crear pequeñas aplicaciones en base a requisitos para añadir a tu portafolio.
689
star
8

Code-Challenges

Retos de programación para mejorar nuestras habilidades
546
star
9

Apple-Developer-Roadmap

Cómo convertirte en Apple Developer (iOS, iPadOS, macOS, watchOS, tvOS)
456
star
10

Weekly-Challenge-2022-Swift

Retos semanales de la comunidad MoureDev para practicar Swift & iOS.
Swift
389
star
11

Twitimer-Android

App Android correspondiente al proyecto twitimer.com de la comunidad MoureDev
Kotlin
366
star
12

Twitimer-iOS

App iOS correspondiente al proyecto twitimer.com de la comunidad MoureDev
Swift
237
star
13

Pokemon-JetpackCompose

Ejemplo de App Android con Kotlin, Jetpack Compose, Retrofit y consumo de la API REST de Pokémon
Kotlin
95
star
14

KotlinDesdeCero

Kotlin
92
star
15

Pokemon-SwiftUI

Ejemplo de App iOS con Swift, SwiftUI, Alamofire y consumo de la API REST de Pokémon
Swift
74
star
16

KotlinDesdeCeroNivelMedio

Kotlin
69
star
17

nerdeame-ios

Swift
65
star
18

SwiftDesdeCero

Swift desde cero para principiantes
Swift
59
star
19

MyAndroidWebView

Tutorial Kotlin: Creando un WebView en Android y Android Studio | Español | MoureDev by Brais Moure YouTube channel
Kotlin
44
star
20

iOS12Calculator

Tutorial para aprender a crear una réplica de la app "Calculadora" de iOS 13 con Swfit 5.1 y Xcode 11.
Swift
42
star
21

StarWarsXcodeTheme

Star Wars: A Dark(side) or Light(side) theme for Xcode
37
star
22

Hello-Dynamic-Island

Tutorial de integración de la nueva Dynamic Island en un proyecto con SwiftUI
Swift
36
star
23

LottieTwitterLikeAndroidTutorial

Kotlin
34
star
24

Memory-Game

Resolución reto de programación mensual Rviewer x MoureDev (Mayo 2022)
Swift
34
star
25

SkeletonViewTutorial

Swift
32
star
26

S-Pen-Demo

Kotlin
28
star
27

NuevoEnSwift5

Swift
24
star
28

SwiftUIButtonExtension

TUTORIAL Swift 4 - EXTENSIONES y ANIMACIONES en iOS | Español | MoureDev by Brais Moure
Swift
20
star
29

MyWKWebView

Tutorial Swift 4: Creando un WebView (WKWebView) en iOS | Español | MoureDev by Brais Moure YouTube channel
Swift
15
star
30

retos-programacion-mini

Python
5
star
31

adeviento-web

Proyecto web asociado al "Calendario de aDEViento" de la comunidad. Una actividad en la que del 1 al 24 de diciembre se sortea un regalo relacionado con el aprendizaje de programación y desarrollo de software.
2
star
32

portafolio-template

Portafolio web "perfecto" para programadores. Plantilla minimalista configurable a nivel gráfico y de contenido.
2
star
33

roadmap-retos-programacion

Retos de programación 2024. Muy pronto...
1
star