Crea y conecta tus primeras aplicaciones nativas para Android e IOS con una Api Rest en CodeIgniter - PHP

- Andrés Cruz

Crea y conecta tus primeras aplicaciones nativas para Android e IOS con una Api Rest en CodeIgniter - PHP

Precio mínimo:

$5.0

Condiciones:

  • Todo el curso de por vida y descarga individual
  • Un único pago para todo el curso
  • Contacto por mensajes

En este curso vamos a aprender a crear nuestras primeras aplicaciones para Android e IOS empleando su ecosistema nativo, las herramientas oficiales para el desarrollo de apps en Android e IOS: Android Studio y xCode los cuales serán nuestros IDEs claves para llevar a cabo el curso.

 

Y no solo esto, también vamos a desarrollar una app web la cual consta de un backend, con un módulo login y una Rest Api, por lo tanto vamos a aprender a crear 3 proyectos completos en un solo curso y cómo relacionarlos entre ellos:

1 Backend, Rest Api y módulo de login

Vas a aprender a crear una app web empleando CodeIgniter, con todo lo que nos ofrece, todos sus helpers y librerías, vas a aprender a crear un módulo de login, para el control de los usuarios administradores y también las secciones de gestión, en otras palabras los CRUDs de todo lo que necesitamos que sea administrable.

Vamos a aprender a instalar templates completos administrativos con Bootstrap 4, construcción, procesamiento y validaciones de formularios y mucho más.

También vamos a construir un módulo de login nosotros mismos, desde cero, que sea sencillo, práctico y funcional.

Vamos a crear nuestra Rest APi en CodeIgniter, instalaremos una librería para CodeIgniter en la cual vamos a crear los métodos GET y POST para sacar nuestra aplicación adelante, este es un elemento fundamental y central para empezar a conectar nuestras aplicaciones.

2 Crear una aplicación para Android con Android Studio para el consumo de la Rest Api

A lo largo del curso presentaremos múltiples secciones en las cuales vamos a ir creando la aplicación para Android, vamos a ir desde lo más básico hasta lo más avanzado; vamos a desarrollar y aprender todo lo que necesitamos para desarrollar una completa app Android que se conecte a nuestra Rest Api para el consumo y envío de datos al servidor.

¿Qué más vamos a aprender?

Vamos a aprender desde dar los primeros pasos con nuestra aplicación en Android, definir nuestras primeras interfaces, dar los primeros pasos con los ejemplos, conocer los elementos básicos o más comunes para desarrollar una app en Android hasta elementos más interesantes, como lo son el RecycleView para crear nuestro primer listado de elementos.

También vamos a emplear Retrofit para conectarnos a nuestra Rest APi y traer los datos mediante JSON.

Crear pantallas/actividades, crear vistas personalizadas, efectos de transición, ventanas de login, registro, navegación entre ventanas y el manejo de nuestro ambiente de desarrollo Android Studio.

3 Crear una aplicación para iOS con xCode

Para la aplicación de iOS con xCode vamos a hacer prácticamente lo mismo que hicimos con nuestra aplicación Android con Android Studio pero orientada a iOS, vamos a emplear los TableView para construir nuestros listados, múltiples ViewControllers para la construcción de nuestras pantallas y toda la lógica, conecciones necesarias para llevar a cabo esta labor.

Y por supuesto la capa para conectar a nuestra Api Rest, para eso empleamos los CocoaPods con nuestra librería Alamofire.

Temática del curso

En este curso nos vamos a enfocar a construir una aplicación completa, una aplicación de listados de películas, con todo lo que esto conlleva, módulo administrativo para la gestión de las películas, módulo de login para todas las aplicaciones, Rest APi para el consumo y envío de datos, listado y presentación de los datos (películas) desde las apps móviles nativas para Android e iOS.

Por lo tanto y como puedes imaginar, este tipo de aplicación de consumo de datos y envío de datos son las solicitadas hoy en día por toda clase de clientes para adaptarla a sus necesidades y por eso un 90% de las aplicaciones solicitadas hoy en día (por mencionar una cifra) son de este estilo, consumo y envío de datos y apps nativas (o no) para los sistemas operativos móviles más demandados en la actualizar como lo son Android e iOS.

Y esto es lo que hace realmente interesante este curso y diferente a otros cursos, es que nos proponemos a desarrollar una aplicación, pero que sea completa para trabajar en distintas capas o niveles, desde lo más básico para dar los primeros pasos hasta lo más avanzado.

Próximas actualizaciones

Aunque este es un curso ya grande de por sí, que de entrada dispone de más de 22 horas y subiendo...

Este curso se irá actualizando periódicamente a lo largo de mucho tiempo, todavía tenemos mucho más de que hablar y mucho más material que incorporar el cual se irá sumando progresivamente, generalmente semanalmente con nuevas secciones y más y mejores elementos para desarrollar nuestras aplicaciones.

  • Potenciar nuestro backend (en desarrollo)
  • Autenticación local en Android e iOS
  • Listado de los usuarios que calificaron películas.
  • Integración con pasarela de pagos para la compra de películas
  • Integración con Core Data (iOS) y SQLite (Android)
  • Envío de mensajes vía Firebase
  • Desarrollar nuestras primeras aplicaciones en Flutter
  • Desarrollar nuestras primeras aplicaciones en Ionic 4
  • Crear nuestro backend, Rest Api con Laravel

Son algunos de los temas principales que vamos a ver y a tratar en futuras actualizaciones; como puedes ver aún tenemos muchísimos temas de interés que te permitirán cubrir prácticamente todo el ecosistema del desarrollo de aplicaciones en sus plataformas más demandadas hoy en día, que son la web y la móvil, presentando variantes y otros ambientes para desarrollar tus aplicaciones.

De esta forma además de aprender a desarrollar en otras plataformas, vas a aprender a crear aplicaciones similares en otros ambientes, de esta forma vas a aprender a lo largo del curso cuál ambiente es mejor para desarrollar tus aplicaciones según las especificaciones de esta, tener opciones y manejar distintos presupuestos según el tipo de aplicación que quiera tu cliente y dar un mayor abanico de opciones para cuando estés ofreciendo tus servicios para desarrollar tus aplicaciones.

Otros elementos que vamos a aprender

Además tendremos comparaciones interesantes que irán saliendo a lo largo en el que desarrollemos nuestras aplicaciones para Android e iOS, veremos virtudes en el desarrollo de unas aplicaciones con respecto a la otra, la facilidad de uso o la cantidad de código necesario que necesitamos para desarrollar cierta sección; todo con el objetivo de desarrollar un proyecto completo, que va desde su web app hasta el desarrollo de las apps móviles.

Pero como todo en la vida y lo normal en el desarrollo de aplicaciones en general, siempre hay temas que pueden ser de tu interés o muy interesantes; por ejemplo el recién salido del horno SwiftUI para construir nuestras aplicaciones para iOS con sintaxis declarativa; para estos casos simplemente vamos a sacar secciones independientes del resto de la temática principal que estamos manejando en el curso que es nuestra app de películas.

Este es un tema que también tratamos en nuestro curso gratuito para dar los primeros pasos en el desarrollo de apps para Android e iOS el cual puedes obtener tambien desde Udemy; pero por supuesto vamos a tratar más en produncidad a lo largo del tiempo en nuestro curso maestro.

Forma de estudio

Este es un curso bastante especial, ya que pocos cursos abarcan esta temática como un todo en el cual en la práctica es desarrollar 3 proyectos diferentes en 3 plataformas y tecnologías completamente distintas.

Desarrollé el curso en una forma que yo defino cíclico y evolutiva; que en la práctica esto se traduce a que vamos tocando diferentes módulos (desarrollo de las apps Android, iOS y web) en diferentes secciones (en cada una de las secciones nos dedicamos a trabajar en una de las tres aplicaciones), tenemos las primeras secciones en la cual empezamos a desarrollar nuestro backend, nuestro módulo de login y la Rest Api inicial, acto seguido vamos a una nueva sección en la que desarrollamos nuestra primera app para Android que se conecte a esta primera versión de la Api Rest, luego en la siguiente sección empezamos a desarrollar nuestra aplicación para iOS (también tenemos capítulos o secciones para reforzar o conocer los elementos básicos para conocer Kotlin y Swift, que son los lenguajes de programación oficiales para desarrollar nuestras aplicaciones para Android en Android Studio y en iOS con xCode respectivamente) y luego comenzamos otra vez, o volvemos a nuestra app web, con nuestro backend y nuestra Rest APi e iniciamos otra vez con la app para Android y a posterior la de iOS.

Esta es la mejor forma de estudo que yo recomiendo en este tipo de cursos, de esta manera cíclica vamos evolucionando poco a poco en nuestras aplicaciones, desde lo más básico, y paralelamente vamos desarrollando la lógica necesario para analizar mejor nuestros proyectos; de tal manera que vamos refrescando y reforzando conocimientos vistos anteriormente sin necesidad de ver vídeos otra vez, ya que a medida que vamos re-diseñando o agregando nuevos elementos a las aplicaciones en cada una de las pasadas, también vamos dando resumen de lo desarrollado anteriormente.

Finalmente, te dejo una rápida visualización del curso para que te hagas mejor a la idea.

Por aquí tienes el listado completo de clases que vamos a cubrir en el libro y curso:

Introducción

  • 1 Introducción

  • 2 Resumen

    Resumen

  • 3 Presentación del curso

  • 4 Herramientas, IDEs y más elementos necesarios para este curso

  • 5 Introducción

Crear Api Rest en CodeIgniter primera parte

  • 1 Introducción a la sección

  • 2 Definir nuestra base de datos

    Vamos a crear nuestra base de datos inicial para nuestro proyecto y nuestra Rest Api.

  • 3 ¿Por qué CodeIgniter? y Descargar CodeIgniter

    Vamos ha hablar de porqué seleccionamos CodeIgniter para crear nuestra app web y creación de la Rest Api.

  • 4 Instalar y configurar CodeIgniter

    En este vídeo vamos a aprender a instalar CodeIgniter en nuestro servidor y dejarlo funcionando.

  • 5 Conociendo CodeIgniter

    Vamos a aprender sobre los principales elementos en CodeIgniter, lo que tenemos más a la vista, saber para qué nos sirve y poder trabajar con el framework correctamente.

  • 6 Remover el index.php

    Vamos a remover el index.php de la URL de CodeIgniter

  • 7 Descargar librería para la Api Rest

    Vamos a aprender a descargar una librería en CodeIgniter la cual usaremos para configurar nuestra Rest Api.

  • 8 Instalar librería para la Api Rest

    Una vez que tengamos nuestra librería para la Rest Api, lo siguiente que nos interesa es instalarla en nuestro proyecto, para trabajar con ella.

  • 9 Instalar librería para la RestApi con composer

  • 10 Crear nuestros modelos movie y type_movie -Explicar que es un modelo

    Vamos a crear nuestros primeros modelos, que son una de las capas de nuestro MVC que necesitamos en nuestra aplicación para la administración de nuestros datos.

  • 11 Definir CRUD de los modelos parte 1

    Vamos a empezar la creación de nuestro "CRUD" pero para los modelos, los métodos que necesitamos para la gestión de nuestra data.

  • 12 Crear una clase modelo global

    Vamos a crear una clase modelo global, que emplearemos para todos nuestros modelos en nuestra aplicación mediante la herencia.

  • 13 Crear la api rest para las películas

    Vamos a crear nuestra Api, Rest, nuestro primer recurso que iremos trabajando en los próximos vídeos.

  • 14 Crear nuestro primer join con la tabla type_movies

    Vamos a crear nuestro primer Join, que nos servirá para conectarnos a los tipos de películas desde nuestro modelo de películas.

  • 15 Definir los campos para filtrar nuestras películas

    Vamos a pulir más nuestro método para conectarnos a nuestra base de datos desde nuestro modelo para que  pueda realizar búsquedas de películas.

  • 16 Campo de búsqueda de nuestras películas

    Vamos a pulir más nuestra función de nuestra Rest Api (recurso) para que pueda recibir un nuevo campo por el cual podremos buscar películas.

  • 17 Definir métodos CRUDs para el modelo

    Vamos a modificar nuestro modelo y nuestro recurso en nuestra Rest Api para que pueda paginar películas.

  • 18 Búsqueda individual de una película

    Vamos a modificar nuestra Rest Api para que pueda realizar la búsqueda individual de una película.

  • 19 ¿Qué hemos aprendido?

Crear nuestro módulo de login

  • 1 Presentación

  • 2 Crear nuestro controlador de Login y Admin

    Vamos a crear el controlador para manejar la lógica de login, autenticación y demás métodos necesarios para lograr el sistema de login.

  • 3 Instalar nuestro Bootstrap y vista para el login

    Vamos a aprender a instalar Bootstrap en nuestro proyecto para nuestro módulo administrador.

  • 4 Cargar y configurar nuestra sesión

    Vamos a aprender a manejar la librería para la sesión en CodeIgniter, y guardar datos del usuario autenticado.

  • 5 Convertir a hash nuestros password

    Vamos a proteger nuestros passwords para guardarlos en nuestra base de datos mediante un helper en CodeIgniter y una función en PHP.

  • 6 Verificar nuestros password

    Vamos a verificar el hash de los passwords guardados en nuestra base de datos con la contraseña suministrada por el usuario mediante un helper en CodeIgniter y una función en PHP.

  • 7 Creando nuestra vista para el login

    Vamos a crear nuestra vista para el login con HTML y Bootstrap.

  • 8 Crear modelo para el Usuario y función para validar credenciales

    Vamos a crear otro modelo para el manejo de nuestro usuario.

  • 9 Función para cerrar sesión

    Vamos a crear una función para cerrar la sesión de nuestro usuario autenticado.

  • 10 Proteger módulo del admin y carga global de componentes

    Vamos a proteger nuestro módulo administrativo con las funciones de sesión que creamos anteriormente.

  • 11 Ruta para logout

    Vamos a definir una ruta para el logout de nuestro usuario

  • 12 ¿Qué hemos aprendido?

Crear nuestro módulo de gestión en CodeIgniter (Backend)

  • 1 Introducción

  • 2 Definir un template en nuestro core

    Vamos a definir el template para nuestro backend con Bootstrap 4.

  • 3 Descargar y limpiar nuestro template para el admin

    Vamos a descargar nuestro template seleccionado desde github.

  • 4 Instalar el template Bootstrap en nuestro proyecto

    Vamos a instalar nuestro template seleccionado en nuestra aplicación para CodeIgniter.

  • 5 Personalizar nuestro módulo administrador

    Vamos a crear el listado para las películas mediante una tabla.

  • 6 Vista de listado de la película

    Vamos a crear la función que se conecte a nuestro modelo para traer la data del listado.

  • 7 Vista de creación/actualización

    Vamos a crear la vista de formulario que nos servirá para cargar los datos de nuevas películas.

  • 8 Acción de creación de las películas

    Vamos a crea la función en nuestro controlador para cargar nuevas películas.

  • 9 Acción de actualización de las películas

    Vamos a modificar la función de creación de películas para que también pueda editar películas.

  • 10 Devolver datos de usuario al momento de ocurrir un error en el formulario

    Vamos a aprender a manejar los errores de formulario.

  • 11 Carga de imagen

    Vamos a aprender a cargar imágenes en nuestro servidor.

  • 12 Mostrar imagen en el detalle de la tabla

    Vamos a mostrar la imagen cargada en el formulario de creación.

  • 13 Tarea crear vista de detalle de las películas

    Vas a crea la vista de detalle de las películas.

  • 14 Crear vista de detalle de las películas

    Vamos a crea la vista de detalle de las películas.

  • 15 Opción de eliminar

    Vamos a crear la opción de eliminar películas para nuestro listado.

  • 16 Tarea crear CRUD de tipos de películas

    Vas a crear el CRUD para los tipos de películas.

  • 17 Crear CRUD de tipos de películas

    Vamos a crear el CRUD para los tipos de películas.

  • 18 Listado de los tipos de películas en películas

    Vamos a crear un campo de selección por tipo de películas en nuestro formulario de creación y actualización de películas.

  • 19 Mostrar tipo de película en el listado de películas

    Vamos a colocar el tipo de películas en nuestro listado de películas.

  • 20 Asociar tipo de películas en un campo de selección

    Vamos a agregar la opción de tipo de películas en nuestro menú.

  • 21 ¿Qué hemos aprendido?

Repaso y primeros pasos con Kotlin

  • 1 Introducción

  • 2 Tipos de datos en Kotlin

    Vamos a presentar los tipo de datos en Kotlin: enteros, flotantes, String y booleanos.

  • 3 Tipos de datos inmutables

    Vamos a presentar los tipos de datos inmutables o constantes.

  • 4 Tipos de datos nullables

    Vamos a presentar los tipos de datos nullables o que pueden ser nulos.

  • 5 Condicionales

    Vamos a dar un repaso o introducción a los condicionales.

  • 6 When

    Vamos a presentar la estructura de los when, que viene siendo el remplazo de los swich en Kotlin.

  • 7 Los collections: arrays, listas, sets y maps

    Vamos a aprender las estructuras para almacenar colecciones de datos en Kotlin.

  • 8 Ciclo for

    Vamos a presentar como emplear los ciclos en Kotlin, los for.

  • 9 Ciclo while

    Vamos a aprender sobre los ciclos while y do while en Kotlin.

  • 10 Funciones

    Vamos a aprender a emplear las funciones en Kotlin, con parámetros y sin ellos, con datos de retorno y sin ellos.

  • 11 Excepciones

    Vamos a aprender a emplear las excepciones en Kotlin.

  • 12 Funciones lambdas

    Vamos a aprender de otro mecanismo que tenemos para crear funciones, mediante los lambdas.

  • 13 Funciones de Extensión

    Vamos a aprender a emplear las funciones de extensión, que son ideales para extender clases mediante métodos que no se encuentran definidos en la Api de dicha clase.

  • 14 Función let

    Vamos a aprender a manejar los let, ideales para evitar las excepciones por las referencias nulas.

  • 15 Función with

    Vamos a aprender a emplear los with para organizar mejor nuestro código y ganar legibilidad.

  • 16 Siguientes pasos

Api rest en Android con Android Studio

  • 1 Introducción

  • 2 Crear aplicación para Android

    Vamos a iniciar a crear nuestra aplicación para Android y explicar un poco el editor.

  • 3 Dando los primeros pasos con nuestra aplicación en Android Studio

    Vamos a presentar el ambiente de desarrollo de software o IDE oficial que es Android Studio y de crear nuestro proyecto y explicar dicha estructura.

  • 4 Los simuladores en Android

    Vamos a aprender a emplear los simuladores, que son fundamentales y el mejor aliado para probar nuestras aplicaciones en Android.

  • 5 Creando nuestra primera mini aplicación

    Vamos a crear nuestra primera "mini app" en el cual aprenderemos ciertos elementos claves en Android.

  • 6 Definiendo la primera vista de nuestra aplicación

    Vamos a crear nuestra primera vista.

  • 7 Registrar nuestra primera imagen en nuestro proyecto

    Vamos a cargar nuestro primer recurso en nuestra app, una imagen.

  • 8 Conociendo los RecyclerView para crear listados (Adapter)

    Vamos a crear nuestro primer listado, un elemento fundamental para mostrar los listados de las películas en nuestra Rest Api

  • 9 Conectándose a la Rest Api parte 1

    Vamos a instalar la librería para conectarnos mediante HTTP en nuestra aplicación Android.

  • 10 Conectándose a la Rest Api parte 2

    Vamos a empezar a configurar la conexión de nuestra Api Rest en Android, parte 2.

  • 11 Conectándose a la Rest Api parte 3

    Vamos a empezar a configurar la conexión de nuestra Api Rest en Android, parte 3.

  • 12 Conectándose a la Rest Api parte 4

    Vamos a empezar a configurar la conexión de nuestra Api Rest en Android, parte 4.

  • 13 Creando nuestra actividad de detalle

    Vamos a crear la actividad para el detalle de nuestra película.

  • 14 Evento click del CardView del listado de películas

    Vamos a definir el evento click de las cartas para llamar a una nueva actividad.

  • 15 Invocar actividades

    Vamos a aprender a invocar actividades mediante los intents.

  • 16 Llamando a nuestro recurso show en nuestra Api Rest

    Vamos a hacer la invocación del recurso show de nuestra Rest Api para el detalle de nuestra película.

  • 17 MOD REST API – Cargar imágenes en nuestro servidor

    Vamos a cargar datos en nuestra Rest Api para poder trabajar con ella.

  • 18 Picasso para cargar nuestras imágenes en nuestro listado

    Vamos a instalar Picasso, que nos servirá para pintar nuestras fotos en nuestra aplicación.

  • 19 Picasso para cargar las imágenes en la vista de detalle

    Vamos a configurar Picasso ahora en la vista de detalle.

  • 20 Haciendo amigables nuestras interfaces: Shared Element Activity Transition

    Vamos a aprender a emplear un mecanismo para realizar una sencilla y amigable transición entre las imágenes del listado con la de detalle.

  • 21 CoordinatorLayout para coordinar nuestra vista de detalle

    Vamos a introducir un nuevo elemento llamado CordinatorLayout para aplicar ciertas reglas en nuestro Layout.

  • 22 CoordinatorLayout para coordinar nuestro listado

    Vamos con la segunda parte de trabajar con este layout.

  • 23 Definir un campo de búsqueda en el toolbar

    Vamos a colocar un campo de búsqueda en el toolbar de nuestra aplicación.

  • 24 Definir un campo de búsqueda en el toolbar parte 2

    Vamos a seguir con el icono de búsqueda de nuestro toolbar, para darle funcionalidad

  • 25 Colocar un icono para los filtros en el toolbar

    Vamos a colocar un botón para los filtros en el toolbar.

  • 26 Definiendo nuestro Bottom Sheet

    Vamos a crear y configurar un nuevo tipo de elemento para mostrar los filtros de nuestra aplicación.

  • 27 MOD REST API – Filtro por año

    Vamos a configurar los filtros por año.

  • 28 Paginación de las películas

    Vamos a paginar películas en nuestra Rest Api de nuestro listado.

  • 29 Paginación de las películas parte 2

    Vamos a seguir trabajando en la paginación de películas.

  • 30 ¿Qué hemos aprendido?

Introducción en Swift

  • 1 Introducción

  • 2 Primer vistazo a xCode - Playground

    Vamos a crear nuestro proyecto en el Playground de xCode.

  • 3 Presentación Xcode y Tipos de datos en Swift

    Vamos a presentar el IDE Xcode que lo emplearemos para dar los primeros pasos con Swift y a posterior crear nuestra aplicación; ademas, veremos los tipos de datos en Swift.

  • 4 Condicionales

    Veremos el uso de los condicionales en Swift.

  • 5 Tipos de datos opcionales y no opcionales en Swift

    Veremos los tipos de datos opcionales y no opcionales en Swift.

  • 6 Funciones

    Veremos como es la sintaxis de las funciones en Swift, el pase de parámetros y retornos.

  • 7 Siguientes pasos

Api rest en iOS con Xcode

  • 1 Presentación

  • 2 Crear un proyecto en Xcode y primeros pasos

    Vamos a crear nuestro proyecto en Xcode para empezar a crear nuestra app para iOS que se conectará a nuestra Api Rest.<br /> <br /> Ademas presentaremos el IDE que emplearemos para desarrollar aplicaciones en iOS.

  • 3 Creando un TableView para los listados

    Vamos a crear nuestros TableView que son los RecyclerView de Android, para mostrar listados.

  • 4 Crear modelo movies

    Vamos a crear nuestro primer modelo en nuestro proyecto, para las películas.

  • 5 Instalar el manejador de dependencias para Swift

    Vamos a instalar nuestro manejador de dependencias en nuestro proyecto Swift.

  • 6 Celdas personalizadas en nuestra TableView

    Vamos a crear unas celdas personalizadas para nuestra TableView.

  • 7 Auto Layout

    Vamos a introducir los Auto Layout en Swift, para crear apps adaptativas.

  • 8 Extra: refuerzo AutoLayout

    Vamos a dar un refuerzo u otro ejercicio sobre el Auto Layout.

  • 9 Definir nuestros métodos para decodificar la data del json de la película

    Vamos a crear terminar de definir la definición de nuestra clase que decodifica la data recibida del servidor para las películas.

  • 10 Verificar error en la petición

    Vamos a verificar que no existan errores en la petición a nuestro servidor.

  • 11 Vista de detalle de nuestra aplicación

    Vamos a crear el View Controller para el detalle de las películas.

  • 12 Segue para pasar de un View Controller a otro

    Vamos a crear nuestro primer Seque que permite comunicarnos con otros View Controllers.

  • 13 Definir archivo para los recursos y petición vista de detalle

    Vamos a crear un nuevo archivo para registrar los recursos en nuestra aplicación.

  • 14 Scroll para nuestra vista de detalle

    Vamos a definir un Scroll para mostrar el contenido del detalle de las películas.

  • 15 Cargar imagen del servidor en la vista de detalle

  • 16 Cargar imagen del servidor en la vista de listado

  • 17 Paginación de películas

    Vamos a paginar películas desde el listado.

  • 18 Recargar solamente las celdas afectadas

    Vamos a seguir trabajando en la paginación de las películas.

  • 19 Crear nuestro modal para el filtrado de las películas

    Vamos a crear un nuevo View Controller para aplicar los filtros.

  • 20 Crear un unseque para el modal

    Vamos a crear un Seque para el modal, y de esta manera conectar nuestras aplicaciones.

  • 21 Crear un unseque para el modal

    Vamos a crear un Seque para el modal, y de esta manera conectar nuestras aplicaciones.

  • 22 Aplicar filtros a nuestra petición

    Vamos a filtrar la data mediante el modal de filtro que creamos anteriormente.

  • 23 Pasar datos al modal del filtro

    Vamos a aprender a pasar datos entre los Seque.

  • 24 Agregar el icono del filtro

    Vamos a agregar un icono para el filtrado de nuestra data.

  • 25 ¿Qué hemos aprendido?

Crear Api Rest en CodeIgniter segunda parte

  • 1 Presentación

  • 2 Definir nuevas tablas

    Vamos a definir las nuevas tablas y columnas para la segunda parte de nuestra Rest Api.

  • 3 Los modelos para los favoritos y las calificaciones

    Vamos a crear los modelos de las tablas que definimos anteriormente.

  • 4 Crear los recursos para los favoritos, las calificaciones y tipos de películas

    Vamos a crear los recursos en nuestra Api Rest para los favoritos y calificaciones.

  • 5 Crear controlador y recurso para el login para la Rest Api

    Vamos a crear un nuevo controlador en nuestra Api Rest para el login.

  • 6 Crear recurso para el registro para la Rest Api

    Vamos a crear un nuevo controlador en nuestra Api Rest para el registro.

  • 7 Probar recursos de la Api Rest

    Vamos a probar los recursos que definimos anteriormente.

  • 8 Actualizar estructura de favoritos y calificaciones

    Vamos a definir un nuevo recurso para que nuestro usuario pueda mandar peticiones Post para los favoritos y las calificaciones.

  • 9 Recursos para los favoritos y calificaciones de las películas y de los usuarios

    Vamos a crear un recurso para obtener las calificaciones y los favoritos.

  • 10 Devolver los favoritos y calificaciones en el detalle de la película

    Vamos a modificar el recurso de las películas (show) para obtener las calificaciones y los favoritos de las películas y el usuario autenticado.

  • 11 Imagen promocional para nuestra aplicación

    Vamos a crear la sección del módulo administrador, la tabla y el recurso en nuestra Api Rest para la película promocional.

Api rest en Android con Android Studio segunda parte

  • 1 Introducción

  • 2 Crear vista para el login

    Vamos a crear una nueva vista, un nuevo layout por definición que la emplearemos para la sección del login.

  • 3 Cargar logo de nuestra aplicación

    Vamos a instalar un plugin para generar todos los tamaños de nuestras imágenes, para el logo.

  • 4 Agregar modelo de favoritos y calificaciones en nuestros serializers

    Vamos a agregar los modelos de favoritos y calificaciones en nuestra aplicación, ademas de toda la lógica para poder emplear los favoritos que nos devuelve la petición de nuestro servidor.

  • 5 Agregar modelo de calificaciones en nuestros serializers segunda parte

  • 6 Definir iconos sociales en la vista de detalle

  • 7 Shared Preference en Android

    Vamos a ver un nuevo tipo de elemento que se conoce como los share preferens que nos servirán para almacenar datos del usuario de manera persistente.

  • 8 Realizar el login de nuestra aplicación

    Vamos a terminar de armar el login en nuestra aplicación, crear los métodos para realizar la petición y terminar nuestra actividad.

  • 9 Vista de registro de la aplicación

    Vamos a definir la sección de registro de nuevos usuarios en nuestra aplicación tomando como base la sección de login.

  • 10 MOD REST API: Establecer calificación de la película

    Vamos a modificar nuestra Rest Api para que nos genere el promedio de la película.

  • 11 Opción de compartir

    Vamos a generar una opción para compartir básica en nuestra vista de detalle.

  • 12 Definir el título del toolbar en la vista de detalle

    Vamos a colocar en el título de detalle de nuestra aplicación el nombre de la película seleccionada.

  • 13 Definir imagen promocional en el listado

    Vamos a colocar la imagen promocional en el listado de nuestra aplicación.

  • 14 Establecer favoritos de las películas del usuario autenticado

    Vamos a mostrar si la película seleccionada es o no un favorito para un usuario autenticado.

  • 15 Mandar petición de favorites y unfavorites

    Vamos a crear la función para que nuestro usuario pueda enviar una petición de favorito a nuestro servidor.

  • 16 Vista de detalle del usuario autenticado

    Vamos a crear una vista de detalle de nuestro usuario autenticado en reemplazo del login en el caso de que nuestro usuario esté autenticado en la app.

  • 17 Cambiar iconos faltantes

    Vamos a definir unos nuevos iconos en nuestra aplicación.

  • 18 Cambiar iconos faltantes

    Vamos a definir unos nuevos iconos en nuestra aplicación.

  • 19 Definir el rating bar

    Vamos a aprender y dar los primeros pasos con el componente de Rating Bar para calificar nuestras películas.

  • 20 Darle funcionalidad al rating bar

    Vamos a desarrollar el evento para detectar el cambio de estado de nuestro Rating Bar y enviar la petición a nuestro servidor.

  • 21 Conexión a la Rest Api para los tipos de películas

    Vamos a crear la conexión a nuestra Rest Api

  • 22 Definiendo nuestro Spinner/Select

    Vamos a definir el elemento Spinner para filtrar por tipos de películas

  • 23 Crear nuestro spinner adapter

    Vamos a crear el adaptador para pasar la data a nuestro spinner.

  • 24 ¿Qué hemos aprendido?

Api rest en iOS con Xcode segunda parte

  • 1 Presentación

  • 2 Definir la vista para el login

    Vamos a crear la vista para el login de nuestra aplicación.

  • 3 Definir el View Controller para el login

    Vamos a crear el View Controller para el login, y las peticiones asociadas.

  • 4 Alert Controller para mostrar mensajes informativos

    Vamos a conocer un nuevo tipo de elemento como lo son los Alert Controller.

  • 5 Guardar preferencias de usuario

    Vamos a conocer como podemos guardar datos de usuario de manera persistente, los datos del usuario autenticado.

  • 6 Vista de detalle para el usuario autenticado

    Vamos a definir una vista de detalle para nuestro usuario autenticado.

  • 7 Invocar seques de manera programática

    Vamos a invocar seques de manera programática mediante nuestro View Controller.

  • 8 Cerrar sesión desde la vista de detalle

    Vamos a implementar el cierre de sesión de nuestro usuario autenticado.

  • 9 Creando nuestro Toast Message para nuestra app

    Vamos a crear un equivalente del Toast Message en Android en iOS.

  • 10 Realizar el Pop de los View Controllers

    Vamos a terminar las vistas para el detalle del login, para que cuando nuestro usuario inicie sesión correctamente sea enviado a la vista del listado.

  • 11 Definir el View Controller para el registro parte 1

    Vamos a crear el módulo de registro de nuestro usuario.

  • 12 Definir el View Controller para el registro parte 2

    Vamos a terminar la sección de registro.

  • 13 Modificar el modelo de detalle para las películas

    Vamos a terminar de componer la vista de detalle de nuestra app, para que aproveche los nuevos datos que le enviamos.

  • 14 Pasar el identificador del usuario en la petición del detalle de la película

    Vamos a pasarle el id del usuario autenticado a nuestra Rest Api para la vista de detalle de nuestra aplicación.

  • 15 Generar iconos para nuestra aplicación

    Vamos a generar algunos iconos para nuestra aplicación

  • 16 Establecer iconos para nuestra aplicación

    Ahora vamos a establecer los iconos en nuestra aplicación, incluido los sociales en la vista de detalle de las películas.

  • 17 Petición Post para el Favorito

    Vamos a generar la petición de tipo Post para nuestros favoritos.

  • 18 Mostrar calificación y favorito al detalle de la película

    Vamos a mostrar la calificación y establecer si el usuario indicó que esa película es o no un favorito.

  • 19 Opción para compartir el contenido de una película

    Vamos a desarrolla la opción para compartir en nuestra aplicación.

  • 20 Definir el image set para nuestro logo

    Vamos a generar un set de iconos para nuestra aplicación.

  • 21 Instalar Cosmos, para las calificaciones (Raiting)

    Vamos a instalar una librería para manejar el raiting de nuestras películas.

  • 22 Configurar Cosmos en nuestro View Controller

    Vamos a darle funcionalidad a nuestro rating, enviar las peticiones a nuestro

  • 23 Crear el listado de tipos de películas para el filtro

    Vamos a crear la conexión a nuestra Rest Api para poner a trabajar nuestro filtro por tipos de películas.

  • 24 Crear el listado de tipos de películas para el filtro parte 2

    Vamos a crear el filtro por tipos de películas, el pickerview.

  • 25 Crear la conexión del filtro entre el ViewController de listado y del filtro

    Vamos a crear la conexión entre el ViewController de nuestro listado y el ViewController del filtro.

  • 26 Reparar error en la paginación de la tabla

    Vamos a reparar el error que tenemos con la paginación de la tabla

  • 27 Selección anterior en el filtro

    Vamos a dejar seleccionada por defecto la última opción que seleccionó nuestro usuario en el tipo de películas.

Extra: Re-definición de layouts, animaciones y más en Swift

  • 1 Introducción

  • 2 Animaciones para los botones sociales

    Vamos a trabajar con las animaciones de nuestros botones sociales.

  • 3 Cambiar el diseño de la vista de detalle

    Vamos a definir una nueva vista para mostrar el detalle de nuestras películas.

  • 4 Cambiar el diseño de la vista de listado

    Vamos a definir una nueva vista para mostrar el listado general de nuestras películas.

  • 5 Conectar la vista nueva de detalle

    Vamos a conectar nuestra nueva ventana de detalle de películas a nuestro ViewController.

Extra: Primeros pasos con SwiftUI

  • 1 Introducción

  • 2 Primeros pasos con xCode 11 y Swift UI: Los Textos y los Stack

    Vamos a crear nuestro primer proyecto y trabajar con los componentes de texto y vistas contenedoras.

  • 3 Primeros pasos con xCode 11 y Swift UI: Los Textos y los Stack

    Vamos a crear nuestro primer proyecto y trabajar con los componentes de texto y vistas contenedoras.

  • 4 Introducción a las imágenes en SwiftUI

    Vamos a conocer como trabajar con las imágenes en SwiftUI.

  • 5 Crear un listado

    Vamos a crear nuestro primer listado en SwiftUI

  • 6 Navegar entre vistas y personalizar data de componentes

    Vamos a aprender a navegar entre distintos componentes

  • 7 Empezando con los State de SwiftUI

    Vamos a aprender a trabajar con los state para manejar datos de nuestra aplicación, veremos que su uso es muy similar al de las variables con un extra que lo explicamos en el siguiente vídeo.

  • 8 Los State y el re-calculo de nuestro body

    Vamos a conocer otra característica o la característica principal de los state que es para el recalculo de nuestras vistas según las condiciones que establezcamos en las mismas.

  • 9 Las animaciones con withAnimation y los state

    Vamos a conocer un componente que funciona perfecto con los state para animar los componentes de nuestra vista que tengan condiciones establecidas con los mismos.

  • 10 Las animaciones y los state

    Vamos a conocer cómo podemos trabajar con las animaciones y los state.

  • 11 Listas y navegación entre componentes

    Vamos a poner en práctica parte de lo que hemos visto hasta el momento y vamos a crear una lista y un componente de navegación.

  • 12 Componente de detalle para nuestro navigationList

    Vamos a crear un nuevo componente el cual estará vinculado con un item de nuestro navigationList.

  • 13 Crear tarjeta para la descripción en la vista de detalle

    Vamos a crear un contenedor que servirá para colocar la descripción de nuestro detalle.

  • 14 Los TextField y los State

    Vamos a conocer cómo podemos trabajar con las animaciones y los state.

Potenciando nuestra app web

  • 1 Introducción

  • 2 Cambios de diseño de la nuestra aplicación

    Vamos a aplicar unos sencillos cambios en nuestra interfaz para hacerla un poco más amena.

  • 3 Redirecciones

    Vamos a colocar las redirecciones necesaria en nuestro backend al momento de crear registros y en el index.

  • 4 Modal de confirmación al momento de eliminar categorías

    Vamos a crear un modal para borrar las categorías

  • 5 Ajax para eliminar registro

    Ahora vamos a modificar nuestra función de borrar categorías para que funcione correctamente con una llamada ajax y crear la función de ajax.

  • 6 Tarea Modal para eliminar películas

    Vamos a crear el modal y el ajax para el listado de películas.

  • 7 Botón de crear nueva película en modo edición

    Vamos a crear un botón como atajo directo para crear una película

  • 8 Cambiar el nombre de la imagen

    Vamos a aprender a personalizar el nombre de la imagen que cargamos al servidor

  • 9 Redimensionar imágenes

    Vamos a aprender a redimencionar nuestras imágenes al momento de realizar la carga de la misma en el servidor

  • 10 Eliminar imagen de la película

    Vamos a crear un enlace para borrar las películas

  • 11 Redimensionar imágenes

    Vamos a aprender a redimencionar nuestras imágenes al momento de realizar la carga de la misma en el servidor

  • 12 Arreglos ventana de login

    Vamos a realizar varios arreglos en la vista de login

  • 13 Plugin de mensajes para los mensajes de sesión

    Vamos a configurar un plugin de mensajes para nuestra aplicación, que al momento de crear, actualizar o eliminar un registro muestre un mensaje.

Manejando la autenticación en la Rest Api y las apps móviles

  • 1 Introducción

  • 2 Definiendo la base de datos y el modelo para los tokens de autenticación

    Vamos a crear la estructura de nuestra aplicación de la Rest Api para que soporte la autenticación por tokens.

  • 3 Generar token de autenticación

    Vamos a crear una función para que genere tokens aleatorios.

  • 4 Configurando el módulo de login con el token auth y los recursos de tipo POST

    Vamos a configurar todo lo que hemos hecho hasta este punto con el token de autenticación con nuestra Rest Api, específicamente los módulos de login, que devuelva el token de auth y que los recursos de tipo Post reciban dicho token.

  • 5 Eliminar el token de autenticación al cerrar la sesión

    Vamos a eliminar el token que empleamos para manejar la sesión en nuestras apps móviles al momento de que al momento de que un tiempo prudencial se cumpla.

  • 6 Recurso para verificar si el usuario autenticado en la apps móviles

    Vamos a crear un recurso que permitirá indicar si la sesión del usuario expiró o no en base al token de autenticación.

  • 7 Actualizar token de sesión usuario

    Vamos a modificar un recurso REST para que permita actualizar el token de auth de nuestro usuario.

  • 8 Configurando nuestra app Android para el token auth

    Vamos a configurar nuestra app Android para que reciba el Token, además de que el envío a las peticiones Post envíe el token

  • 9 Cerrar la sesión del usuario cuando el token está vencido en Android

    Vamos a crear un método que se conecta a la Rest Api si el usuario está autenticado para que verifique si el token a expirado o no, si el token expiró cierra la sesión en la app Android.

  • 10 Recibir el token de auth en el login en la app de iOS

    Vamos a recibir el token de auth desde una app en iOS.

  • 11 Mandando el token en las peticiones Post de iOS

    Vamos a vamos a mandar el token para las peticiones de nuestros Post.

  • 12 Eliminar el token al cerrar la sesión

    Vamos a eliminar el token al cerrar la sesión

  • 13 Cerrar la sesión del usuario cuando el token está vencido en iOS

    Vamos a crear un método que se conecta a la Rest Api si el usuario está autenticado para que verifique si el token a expirado o no, si el token expiró cierra la sesión en la app iOS.

Crear Api Rest en CodeIgniter tercera parte

  • 1 Introducción

    Introducción

  • 2 Modificando la respuesta del recurso Post de las calificaciones

    Vamos a modificar la respuesta de recurso que recibe las calificaciones del usuario para que devuelva la calificación en vez de un ok.

  • 3 Devolviendo un listado de usuario en base a la película seleccionada

  • 4 Definir un recurso para el upload del avatar del usuario

    Vamos a definir un nuevo recurso en nuestra Rest Api que nos permitirá subir una imagen (avatar) desde nuestra app móvil a nuestro servidor.

  • 5 Devolver el avatar en la Rest Api del usuario

    Vamos a modificar el recurso de login y registro para que devuelva el login del usuario.

  • 6 Devolver información del usuario en las calificaciones (detalle películas)

    Vamos a modificar el método de nuestro modelo que se encarga de devolver las respuesta del usuario para que incluya la respuesta de nuestro usuario.

Api rest en Android con Android Studio tercera parte

  • 1 Manejo de los permisos de la galería (archivos) en Android

    Vamos a aprender a cómo podemos solicitar un permiso a nuestro usuario de tipo de selección de un archivo desde nuestro dispositivo.

  • 2 Solicitar permisos al usuario

    Vamos a enviar el modal para solicitar un permiso a nuestro usuario.

  • 3 Respuesta del usuario del permiso seleccionado

    Vamos a solicitar mediante un modal que ejecuta el SO de Android cuando no tenemos nuestro permiso de selección de archivos media.

  • 4 Desplegar la galería para seleccionar la imagen

    Vamos a lanzar la galería para que nuestro usuario pueda seleccionar una imagen.

  • 5 Procesar imagen seleccionada por el usuario

    Una vez que ya tenemos la imagen que seleccionó el usuario de la galería, lo siguiente que tenemos que hacer es obtener referencia a esa imagen y procesarla para que luego podamos enviarla a nuestro servidor.

  • 6 Enviar la imagen a la Rest Api mediante Retrofit

    Ya tenemos procesada la imagen que seleccionó nuestro usuario, lo siguiente que vamos a hacer es enviarla a nuestro servidor mediante Retrofit.

  • 7 Mostrar avatar del usuario en el perfil de la app

    Como paso final, vamos a mostrar el avatar del usuario que lo vamos a mantener el nombre del a imagen en las preferencias de usuario para tal fin.

Api rest en iOS con Xcode tercera parte

  • 1 Solicitar permisos al usuario para desplegar la galería iOS

    Vamos a aprender a desplegar la app de galería de iOS para seleccionar una imagen y de pintarla en nuestro dispositivo.

  • 2 Enviar la imagen a la Rest Api mediante Alamofire

    Vamos a aprender a enviar un archivo que en este caso es una imagen a nuestro servidor.

  • 3 Guardar los datos en los UserDefaults

    Vamos a guardar la imagen de nuestro usuario en los UserDefaults de nuestra aplicación y de pintar el avatar en la sección de usuario.

  • 4 Errores en la carga del avatar y código enviar cualquier tipo archivo

    Capturar posibles errores en el procesamiento del archivo o imagen enviado a nuestro servidor.

  • 5 Crear modal de calificaciones para las películas

    Vamos a crear el ViewController de tipo modal y aplicarle los constraint o restricciones para que muestre el contenido correctamente.

  • 6 Implementar el collectionView parte 1: datos genéricos

    Vamos a implementar los métodos de nuestro CollectionView con data genérica para ver parte del diseño final de nuestra app.

  • 7 Configurar nuevos campos para los Codable de las calificaciones

    Vamos a configurar nuestro Modelo de calificaciones para que se adapte a los nuevos datos que nos brinda nuestra Rest Api.

  • 8 CollectionView: Avatar y nombre del usuario en el carrusel de calificaciones

    Vamos a crear un carrusel mediante un collectionView para ver los usuarios que calificaron la película.

  • 9 Cerrar modal de las calificaciones de los usuarios

    Vamos a cerrar el modal que definimos anteriormente mediante un botón.

  • 10 Demo: cambios y reestructura para la vista de detalle y vista calificaciones

    Vamos a mostrar y explicar unos cambios visuales hechos en la app empleando ya conceptos y técnicas vistas anteriormente a lo largo del curso.

  • 11 Demo: cambios y reestructura para la app

    Vamos a mostrar y explicar unos cambios visuales hechos en la app empleando ya conceptos y técnicas vistas anteriormente a lo largo del curso.

Hola mundo en Dart

  • 1 Introducción

  • 2 Tipos de datos

    Vamos a presentar los tipos de datos en Dart, que son los mismos que en cualquier lenguaje de programación pero de esta manera vamos familiarizándonos con la sintaxis en Dart.

  • 3 Condicionales

    Vamos a conocer los condicionales en Dart, cuyo uso es básico es idéntico que en cualquier lenguaje de programación.

  • 4 Listas y tipos dinámicos

    Vamos a crear una lista dinámica, estática y conocer un poco más los tipos dinámicos en Dart.

  • 5 Funciones

    Vamos a explicar como es el uso de las funciones en Dart, también explicaremos el uso de los parámetros con nombre.

  • 6 Clases y constructores

    Vamos a ver el uso de las clases en Dart, cómo podemos crear un objeto y los constructores con nombre y sin nombre.

  • 7 Gets Sets y tipos privados

    Vamos a seguir trabajando con las clases en Dart, y ahora le llega el turno a los tipos get y set, que al igual que ocurre en Kotlin, su uso es opcional.

  • 8 Herencia en nuestras clases

    Vamos a conocer el uso de la herencia en las clases en Dart.

  • 9 El uso de los Future para hacer peticiones asíncronas

    Vamos a conocer el uso de los Futures que serán un elemento fundamental cuando queramos realizar peticiones a nuestra Rest Api.

  • 10 Propiedades y métodos static

    Vamos a conocer como funcionan los static en Dart.

  • 11 Funciones de flecha

    Vamos a conocer como podemos emplear la herencia múltiple en Dart.

  • 12 Los mixin en Dart

    Vamos a conocer las funciones de flecha.

Null Safety en Dart

  • 1 Introducción y entender el porqué del Null Safety en Dart

    Vamos a hablar un poco sobre las ventajas que tiene emplear este esquema de Null Safety en Dart y las implicaciones del mismo.

  • 2 Null Safety en Flutter 2 y en Dart 2.12 (y superiores) + actualizar Flutter y co

    Vamos a hablar sobre como puedes comprobar que versiones de Dart y Flutter estás empleando y cómo puedes actualizar a nuevas versiones.

  • 3 Emplear tipos nulos: (op ?) forzar valores nulos (op !) y condicionales

    Vamos a empezar con los ejercicios y conocer los operadores por excelencia para trabajar con los Nul Safety.

  • 4 Trabajando con tipos nulos

    Vamos a realizar algunos ejercicios para practicar los tipos de datos que pueden ser nulos con los que no en base a operadores.

  • 5 Argumentos con nombre y el atributo required

    Vamos a conocer el uso del atributo required cuando estamos trabajando con clases o funciones y los argumentos con nombre.

  • 6 Argumentos opcionales

    Vamos a trabajar con los argumentos opcionales, valores por defecto y el null safety.

  • 7 Uso de las variables late y nos finals

    Vamos a trabajar con las variables de tipo late que las empleamos cuando tenemos un valor que NO puede ser nulo y le queremos dar un valor "después".

  • 8 Resolviendo ejercicios 1

    Vamos a resolver algunos ejercicios de la página oficial.

  • 9 Resolviendo ejercicios 2

    Vamos a resolver algunos ejercicios de la página oficial.

Aspectos generales de Dart y Flutter

  • 1 ¿Qué es Flutter?

  • 2 Los widgets como componentes fundamentales en Flutter

  • 3 Requerimientos técnicos

  • 4 Instalaciones necesarias: Android Studio, git y VSC

    Vamos a instalar Flutter en nuestra PC y configurar el Path del sistema.

  • 5 Instalando Flutter en MacOS y Windows

    Vamos a instalar Flutter en nuestra PC y configurar el Path del sistema.

  • 6 Configurar Flutter en Windows: VS

    Vamos a configurar C++ para Desktop en Windows.

  • 7 Extra: Instalar Flutter en una Mac con M1

    Extra: Instalar Flutter en una Mac con M1

  • 8 Configurando Flutter en nuestro equipo Mac o Windows y el VSC

    Vamos a configurar nuestro equipo para que una vez tengamos instalado Flutter, ahora podamos emplearlo sin problemas en nuestro equipo.

  • 9 Crear un emulador en Android Studio

    Vamos a crear un emulador en Android Studio que es el que vamos a emplear para el curso.

  • 10 Atajo de teclado en VSC

    Vamos a conocer algunos atajos de teclado que te recomiendo si desarrollas en VSC.

  • 11 Crear una aplicación mediante la línea de comandos

    Atajo de teclado en VSC

  • 12 Crear una aplicación mediante Visual Studio Code

    Vamos a conocer como podemos crear un proyecto en Flutter mediante VSC.

  • 13 Elementos básicos de una aplicación

    Vamos a presentar la estructura base de un proyecto en Flutter.

  • 14 Seleccionar dispositivo al momento de desarrollar

    Vamos a aprender a seleccionar un dispositivo para desarrollar.

Creando nuestra aplicación con Flutter

  • 1 Primeros pasos en Flutter: Entendiendo la estructura y primer widget

    Vamos a crear nuestros primeros widgets, que serán de los más simples, de tipo texto y derivados y con esto vamos a ir aprendiendo como funciona un proyecto en Flutter y el uso de los widgets.

  • 2 MaterialApp para crear nuestras aplicaciones con el Material Design

    Vamos a emplear el MaterialApp en nuestra aplicación, como elemento raíz para que podamos emplear características del Material Design.

  • 3 Conociendo los Widgets de Column y Row

    Vamos a conocer un par de widgets fundamentales para cualquier diseño que queramos hacer, los cuales nos servirán como stack o pilas para colocar nuestro contenido (widgets).

  • 4 El Widget de los Card

    Vamos a dar los primeros pasos con las cartas en Flutter como elemento contenedor con un estilo heredado.

  • 5 El Widget de los TextField

    Vamos a trabajar con los TextField para manejar la petición del usuario y contraseña, además veremos algunos agregados para personalizar más este widget como su estilo y más textos de ayuda.

  • 6 El Widget de RaisedButton

    Vamos a trabajar un poco con el botón de RaisedButton en Flutter, su definición, color, contenido y método onpress.

  • 7 Crear una página nueva para el Login

    Vamos a crear una nueva página para manejar nuestra vista de login.

  • 8 Colocar en métodos separados los elementos del formulario

    Vamos a colocar en métodos aparte la definición de nuestros widgets de texto y botones.

  • 9 Crear las rutas en nuestro main.dart

    Vamos a crear la sección de navegación de nuestra app.

  • 10 Crear página para el listado de películas

    Vamos a crear una página más la cual emplearemos para mostrar el listado de las películas.

  • 11 Instalar paquete para las peticiones

    Vamos a instalar un paquete que nos permitirá realizar peticiones http a nuestra Rest Api.

  • 12 Crear modelo de Movie

    Vamos a crear una clase modelo para las películas con parte de nuestras propiedades.

  • 13 El Widget de los ListView

    Vamos a conocer otro tipo de widget que es un equivalente al RecyclerView en Android clásico pero con algunas diferencias.

  • 14 Crear proveedor de contenido

    Vamos a crear parte de nuestro proveedor de contenido, los métodos que nos permitirán enviar la petición y procesar la respuesta.

  • 15 Crear proveedor de contenido parte 2

    Vamos a desarrollar el siguiente método para nuestro manejador de contenido, el que nos permite mapear la respuesta a una Movie.

  • 16 Crear un FutureBuilder

    Vamos a inspeccionar un poco todo lo que hemos creado y vamos a llamar nuestro método asíncrono desde nuestra página y ver si todo funciona.

  • 17 Crear un FutureBuilder parte 2

    Con todo listo, ahora vamos a ver un nuevo tipo de Widget, uno que recibe un Future y a posterior podemos crear nuestro listado de películas.

  • 18 Opcional: Función map para convertir el listado de películas a listado de widget

    Vamos a ver otra posible implementación para construir nuestro listado de Widgets empleando los map.

  • 19 Colocar el resto de los campos en el modelo Movie

    Vamos a definir el resto de los campos para nuestro modelo de movies.

  • 20 Importar recursos (una imagen) al proyecto

    Vamos a configurar una carpeta assets y cargar una imagen tipo loading en nuestra app.

  • 21 El Widget de la imagen y cargar imágenes del assets

    Vamos a ver un nuevo tipo de Widget, uno para definir una imagen con un recurso estático.

  • 22 Cargar una imagen del servidor: FadeInImage

    Vamos a conocer otro tipo de widget que también permite pintar imágenes con el agregado que es ideal para pintar imágenes que se carguen de Internet ya que también cuentan con un placeholder.

  • 23 Creando un Statefulwidget en reemplazo de nuestro Statelesswidget

    Vamos a cambiar el tipo de Widget de un Statelesswidget a un Statefulwidget para poder agregar data dinámica en nuestro listado de películas.

  • 24 Crear botón flotante en nuestro Scaffold

    Vamos a crear un nuevo tipo de widget el cual es otro botón pero en esta oportunidad es un botón flotante el cual vamos a emplear para hacer la prueba de agregar una película al listado de manera dinámica.

  • 25 Crear películas de manera dinámica en nuestro Statefulwidget

    Vamos a poner a funcionar el experimento con nuestro Statefulwidget y vamos a poder crear películas para nuestro listado de manera dinámica cuando presionemos el botón; además vamos a entender para qué funciona la opción de Restart.

  • 26 Demo: reemplazar el ListView con una Column

    Vamos a hacer otro pequeño experimento en el cual vamos a intentar convertir nuestro ListView de películas a un Colunm.

  • 27 Crear página de detalle de la película

    Vamos a crear la página base para el detalle de la película.

  • 28 Definir el método onClick (onTap) para los items de las películas

    Vamos a aprender a emplear el evento Click/Tap en cualquier tipo de widget.

  • 29 Navegación a la página de detalle

    Vamos a aprender a navegar entre distintas páginas con rutas con nombre.

  • 30 Demo: Implementar propiedad name en las páginas

    Vamos a ver una sencilla demostración para ver cómo podemos definir nuestra propiedad name en nuestras páginas de otra forma empleando una interfaz.

  • 31 Proveedor de contenido para el detalle de la película

    Vamos a desarrollar en el proveedor de películas para el detalle de la película.

  • 32 CustomScrollView y los "Sliver" para mostrar el detalle de la película

    Vamos a ver varios nuevos widgets para crear el efecto del toolbar expandible que desarrollamos en nuestra app con Android Studio y Kotlin.

  • 33 Definir el modelo para el promedio de las calificaciones de las películas

    Vamos a definir el modelo que para cuando traemos el detalle de la película, pueda consumir el promedio de las calificaciones.

  • 34 Definir modelo para las calificaciones para el detalle de las películas

    Vamos a definir el modelo que para cuando traemos el detalle de la película, pueda consumir las calificaciones.

  • 35 Definir modelo para los favoritos para el detalle de las películas

    Vamos a definir el modelo que para cuando traemos el detalle de la película, pueda consumir los favoritos.

  • 36 Introducción a manejo de temas en Flutter

    Vamos a ver una introducción al manejo del tema en Flutter.

  • 37 Mejorando la apariencia de nuestro listado con los Card

    Vamos a empezar a trabajar con la apariencia de nuestra aplicación y para los items del listado de películas vamos a definirlo como elemento contenedor un Card y veremos otras de sus propiedades

  • 38 Mejorando la apariencia de nuestro listado con los Card: Image

    Vamos a ver otras propiedades del widget de tipo Image que nos permitirá mostrar múltiples imágenes con unas mismas dimensiones.

  • 39 Mejorando la apariencia de nuestro listado con los Card: Text

    Vamos a ver otras propiedades del los widgets de tipo Text en Flutter; específicamente el estilo.

  • 40 Mejorando la apariencia de nuestro listado con los Card: ListTile

    Vamos a ver otro tipo de widget que se empareja muy bien los los ListView y los Card para presentar información de manera organizadas en tarjetas.

  • 41 Banner de opciones para el detalle de la película

    Vamos a construir las opciones para la vista de detalle que son el botón para compartir, favoritos y calificaciones.

  • 42 Crear menu lateral: Drawer

    Vamos a crear nuestro menú lateral mediante un widget en nuestro scaffold en Flutter.

  • 43 Crear cabecera y opciones para el menú lateral

    Vamos a personalizar nuestro menú lateral que hasta ahora solo es un panel blando con un header y opciones; todos estos componentes serían widgets.

  • 44 Crear estructura personalizada para los ítems del menú

    Vamos a crear una estructura personalizada para manejar los ítems de nuestro menú.

  • 45 Navegación en los Ítems del menú lateral

    Vamos a aprender a movernos entre las distintas opciones del menú lateral.

  • 46 Ítem seleccionado según la página

    Vamos a marcar o dejar activo en nuestro menú lateral, la opción que corresponda según la página actual de nuestra aplicación.

  • 47 Establecer imagen para la cabecera del menú lateral

    Vamos a establecer nuestra imagen promocional como fondo para el header de nuestro Drawer.

  • 48 El SingleChildScrollView para crear el scroll bajo demanda

    Vamos a conocer un nuevo tipo de widget para habilitar el scroll bajo demanda.

  • 49 Crear un contenedor para establecer un fondo

    Vamos a crear un contenedor con un color sólido que iremos personalizando a posterior.

  • 50 Introducción a los gradientes lineales

    Vamos a dar la introducción a los gradientes y crear nuestro primer gradiente en Flutter.

  • 51 Variando el alineado de los gradientes lineales

    Vamos a ver una variación del alineado para los gradientes Lineales.

  • 52 Presentación de los gradientes radiales

    Vamos a presentar los gradientes de tipo radiales, que son básicamente circunferencias y las diferencias con los lineales.

  • 53 Gradientes lineales y la propiedad stops

    Vamos a trabajar un poco más con los gradientes de tipos lineales y evaluar la propiedad stops con más colores.

  • 54 Definir un diseño de degradado para nuestro diseño

    Vamos a aprender a emplear los degradados para el diseño de nuestra vista de login.

  • 55 Los Stack para apilar elementos encima de otros

    Vamos a emplear un nuevo widget para apilar otros widgets como si fueran cartas.

  • 56 Crear un contenedor con forma circular

    Vamos a crear un contenedor de forma circular para nuestro diseño y colocarlo como fondo.

  • 57 Mejorar el aspecto del formulario de login

    Vamos a mejorar unos sencillos aspectos en la vista de formulario, agregar padding, estilo para el botón, etc.

  • 58 Transición de opacidad al entrar en el módulo: AnimatedOpacity y delayed

    Vamos a crear una sencilla transición cada vez que el usuario entre en la ventana de login, para que pase de completamente invisible a visible variando la opacidad con una animación.

  • 59 Crear modelo de usuario

    Vamos a crear el modelo de usuario con la data que recibimos desde la rest api.

  • 60 Crear proveedor de datos para el usuario

    Vamos a crear el proveedor de contenido para hacer la petición de login a la rest api.

  • 61 Crear el controlador para manejar los cambios del texto

    Vamos a crear unos controladores para obtener el texto de los campos de tipo file del login.

  • 62 Realizar el login mediante una función

    Vamos a implementar la función de login para enviar la petición de nuestro formulario desde la página de login.

  • 63 Mostrar un diálogo al no ser válido los datos de usuario

    Vamos a aprender a crear un modal para mostrar información.

  • 64 Opcional: Crear un toast para mostrar los mensajes de errores

    Vamos a colocar un toast para mostrar información.

  • 65 Corregir el overflow al momento de mostrar el teclado en el login

    Vamos a corregir rápidamente el problema del overflow que tenemos al desplegar el teclado en la ventana de login.

  • 66 Cerrar teclado programáticamente

    Vamos a aprender a cerrar el teclado programáticamente.

  • 67 Guardar los datos en las preferencias de usuario: Instalar paquete

    Vamos a instalar una dependencia para manejar los datos de usuario de manera persistente.

  • 68 Guardar los datos en las preferencias de usuario: Crear modelo

    Vamos a crear la estructura para manejar los datos del usuario.

  • 69 Preferencias de usuario: Crear un singleton

    Vamos a crear una clase singleton para manejar una instancia única de los datos del usuario a lo largo de la app.

  • 70 Guardar los datos del login en el UserPreference y mostrar en el menú lateral

    Vamos a hacer un sencillo ejercicio para ver si los desarrollos anteriores funcionan y vamos a mostrar la opción de login si el usuario no está autenticado, caso contrario la opción de perfil en el menú Drawer.

  • 71 Mostrar resto de los datos en el menú lateral

    Vamos a mostrar los datos iniciales provenientes del login en el menú lateral.

  • 72 Página perfil: estructura inicial y ruteo

    Vamos a crear la estructura inicial de la página de perfil para mostrar algunos datos y definir el ruteo.

  • 73 Página perfil: mostrar datos iniciales

    Vamos a colocar algunos datos y definir algunos elementos de la interfaz.

  • 74 Cerrar sesión

    Vamos a desarrollar la funcionalidad para cerrar la sesión.

  • 75 Al autenticar volver a la página de login

    Vamos a mandar a la página de perfil cuando el usuario inicie sesión.

  • 76 Página para registrar

    Vamos a crear la página de registrar un usuario.

  • 77 Botón para registrar en la página de login

    Vamos a crear un botón para registrar en la página de login.

  • 78 Listado: Crear nuestro listado paginado

    Vamos a explicar cómo vamos a crear el listado paginado.

  • 79 Listado: Crear nuestro listado paginado parte 2

    Vamos a crear un listado paginado.

  • 80 Listado: Colocar widget de carga

    Vamos a mostrar un widget de carga cuando estamos cargando datos.

Andrés Cruz

Desarrollo con Laravel, Django, Flask, CodeIgniter, HTML5, CSS3, MySQL, JavaScript, Vue, Android, iOS, Flutter

Andrés Cruz En Udemy

Acepto recibir anuncios de interes sobre este Blog.