es momento de Borrar todo lo que nosotros teníamos aquí y Volver a comenzar voy Main paréntesis siempre en este tutorial o en esta introducción de la parte de Dart vamos a estar acostumbrarnos a hacer esto manualmente eso va a generar una cierta memoria muscular siempre lo vamos a comenzar borrando todo y volviendo a definir la función Main y colocándole el valor de retorno ya vamos a hablar más sobre el valor de retorno Pero antes de hablar sobre los valores de retorno hay que ver qué tipos de valores de retorno puedo tener y adicionalmente qué tipos
de variables me permite manejar Dart hay muchas de una vez le digo hay muchas hay unas que son muy comunes una no tan comunes hay unas que son que la gente ni siquiera sabe que existe pero existen como los iterables que es un tipo de dato específico en general hay muchos tipos de datos que conforme ustedes van avanzando vamos a ir viendo cada uno de ellos para comenzar hacemos final String y voy a ponerle el nombre de Pokémon a esta variable noten que estoy poniéndole final diciéndole que no voy a cambiar su valor y muchas
personas Al inicio no saben si poner final o poner constante o dejar solo String mi recomendación es la siguiente déjenlo final y a menos de que ustedes lo cambien Entonces sí pueden quitar final Pero nuevamente Dart les va a decir a ustedes en qué momento están haciendo una asignación nuevamente si ustedes los usan como final es mucho más rápido su utilización en memoria porque no viene la parte de los seres es decir no hay una manera de Establecer un valor en fin se va a llamar dito este Pokémon una vez hecho eso indefinido el Pokémon
aquí me está marcando un Warning ustedes van a ver Muchos warnings a lo largo de que ustedes estén desarrollando Pero lo importante es que ustedes no se asusten los warnes están ahí solo como sugerencias en esta variable yo no la estoy utilizando ven en la línea 3 el valor de la variable local Pokémon no se está utilizando Ah OK entonces para qué voy a definir una variable si no se está utilizando Entonces no se estresen por esos warnings lo ideal es Que obviamente están ahí por algo y tratemos de resolverlos en este caso voy a
usarla de una vez para evitar ese Warning Y ahora yo voy a imprimir en consola mediante el print quiero imprimir un montón de variables es decir quiero hacer un String multilínea con todas las variables que yo voy a estar imprimiendo entonces para hacer eso en dar voy a colocar tres comillas dobles Ok y luego enter enter enter y luego otras tres comillas dobles y esto básicamente le dice a dad que todo lo que yo coloque aquí va a ser mi String multilínea voy a colocar aquí el símbolo de dólar y coloquemos nuestra variable del Pokémon
control enter comandante para ver esto impreso aquí en la consola hay veces que demora un poco pero eso es normal no se estresen tanto por la velocidad es rapidísimo Ok entonces aquí tenemos dito que es nuestro Pokémon vamos a definir otro final int voy a ponerle HP igual a 100 que como ustedes van a poder pensar HP es un entero que no va a cambiar de valor una vez yo lo asigne Pero esto es un entero Qué significa que sea un entero solo números que van entre bueno eso números sin decimales punto ya Dejémoslo así
números sin decimales luego voy a colocar final boole que esto sería un booleano Is A Life va a ser igual a true entonces nuevamente Isa Live ahora es una variable booleana que significa esto que puedo alojar valores de verdadero y falso pero ojo verdadero y falso una cosa Genial que tiene Dart que es que él está siempre pendiente de El null safety es decir siempre está pendiente de Qué valores pueden tener nulo o no Si yo le pusiera un símbolo de interrogación Por ejemplo si yo la dejara así Bueno voy a quitarle aquí el el
final Pero si yo lo dejará así son tres posibles valores que esta variable Juliana puede tener puede tener nulo puede tener true o false Y esto es algo este símbolo de interrogación prácticamente le dice que puede ser nulo el is a Lite obviamente yo no quiero eso ya vamos a ver más sobre null safety que de nuevo haciendo referencia a la documentación y la hoja de atajos que yo les pasé ustedes van a poder ver más de esto por acá símbolo de interrogación dice que esto es válido en null y a pesar de que estoy
diciendo que va a ser una variable entera le quiero asignar el valor de null que sería lo mismo a no poner nada de esto Pero de igual manera es importante que ustedes sepan que dar es bien bien bien meticuloso con los posibles valores nulos que por eso es el safety También tenemos otro tipo de dato que es un listado por ejemplo Puedo ponerle a bilis como las habilidades del Pokémon igualarlo a llaves cuadradas y poner impostor por ejemplo una de las habilidades pero pueden tener varias si yo lo dejo definido de esta manera y no
especifico el tipo de dato Dart lo va a inferir por mí en este caso voy a tomar las habilidades se las voy a colocar Aquí también para que diga que bueno me quite subrayado y van a ver que aquí me da el tipo de dato habilidades habilidades básicamente es un listado de strings genial pero ustedes también pueden definir esto de varias maneras pueden definirlo Así que es un listado de String es una forma de hacerlo básicamente esta llaves cuadradas se conoce como lo que es un genérico y estas llaves de mayor y menor el símbolo
de mayor y menor básicamente especifican el tipo de dato va a contener internamente hay muchas maneras de hacer esto esa sería una hay otra forma de hacerlo que ustedes especifiquen que hacer una lista de String esto también es totalmente válido más de uno dice Bueno y cuál de todas las formas me recomiendas hacer Pues básicamente yo le recomendaría de que la forma con ustedes la usen se queden usandola a lo largo de la aplicación no para evitar estarlo variando de tantas maneras pero ustedes al final del día van a definir Royal Y habilitarlo porque perfectamente
pueden hacer aquí de nuevo eso mismo No no es que sean excluyentes Ok vamos a dejarlo así como una lista de String es bien bien bien común esto para copiarse todo esto Esta línea la voy a pegar y voy a crearme otro listado que se va a llamar sprites voy a quitar la definición aquí al inicio y lo voy a dejar como String para que ustedes vayan teniendo la documentación de diferentes formas voy a copiar esto también lo voy a pegar aquí control enter ejecutémoslo y ahí ya vamos a ver todo nuestro bueno toda nuestra
información en la parte del impostor voy a colocar Bueno en vez de impostor que hace los spray voy a colocar aquí Vito Slash Front punto png coma y luego sería el ditto Slash que se llama Back punto png control enter que solo son String que estoy definiendo ahí adentro para que tengamos algún tipo de funcionalidad Ok y Estos son ciertos tipos básicos todavía hay otros tipos que no son tan básicos Pero son muy usados como lo que son los Maps los sets los lo que son intervalos Y todavía hay otro tipo de datos que vamos
a seguir hablando un poco más de esto en la siguiente clase por ahora por ahora no salen los cambios todavía tenemos cosas que hacer Bueno o si quieren copias de todo vamos a regresar a visual Studio code me voy a poner 02 guión bajo variables punto Dart peguen el código grábenlo o sea grábenlo ahí pero dejen el ejercicio así como está porque en la siguiente clase quiero explicarles un tipo de dato muy muy muy especial que es el dynamic Pero eso en el siguiente vídeo