Skip to content

Instantly share code, notes, and snippets.

@kenyk7
Last active November 15, 2022 13:37
Show Gist options
  • Save kenyk7/f9770c754401fa440754214e8bb35450 to your computer and use it in GitHub Desktop.
Save kenyk7/f9770c754401fa440754214e8bb35450 to your computer and use it in GitHub Desktop.
Dart Intro -> Variables, Funciones

Dart

Dart es un lenguage de programación para crear aplicaciones de forma rápida para cualquier plataforma.

Link de pruebas: https://dartpad.dev/

Mini Curso Youtube: https://www.youtube.com/playlist?list=PLCKuOXG0bPi3AcjQGqT_Ft1wT1mi3Qvrs

Ver vídeos del 1,2,3,4,6 y 7 unicamente.

Definir variables

Se definen con los siguientes palabras reservadas: var, de tipo(String, int, etc), const, final

String, int: de tipo

Recomendado en vez de var, para variables que van a cambiar en algún momento de la ejecución del programa

const: Constante

Variable con valor fijo o que no va a cambiar en la ejecución del programa

final: Calculada

Variable que su resultado depende de otras variables

var: genérico

Aplica para cualquier tipo en general: de tipo, const o final

// Variables: var(tipo), const, final
// String, int: de tipo: Se le puede asignar un nuevo valor
// const: Valor fijo
// final: Valor calculado
// var: genérico, aplicable en todos los casos anteriores

// var hello = 'Hola desde var';
String hello = 'Hola desde variable de tipo';

const int n1 = 10; // int: no es necesario y el tipo va siempre antes de nombre de la variable
const n2 = 50;

void main() {
  final result = n1 + n2;
  print(result);
  print(hello);
}

Tipos de variables

Tipos más usados: String, int, double(int), bool, List<{tipo}>, otros

// Tipos de variables: String, int, double(int), bool, List<{tipo}>, otros
// String: es un texto normalmente va entre comillas
// int/double: números enteros y números decimales
// bool: para definir si algo es verdadero(true) o falso(false)
// List<...>: usado para agrupar valores de cierto tipo: "Agrupar variables de un mismo tipo"

String hello = 'variable string';

int n1 = 10;

double nDecimal = 10;
const nDecimal2 = 10.0; // double por inferencia

bool isOpen = true; // true, false

const List<double> lista = [1, 2, 3, 10.0];

void main() {
  final result = n1 + nDecimal2;
  print(result);
}

Funciones

// función con parámetros posicionales: max 3 parámatros recomendable
void saludar(String name, String lastName) {
   print('Hola $name $lastName');
   print(name);
}

// función con parámetros de nombre
void saludar2({required String name, String lastName = 'Romero'}) {
   print('Hola $name $lastName');
}

// función con valor de retorno
int sumar({required int n1, required int n2}) {
  final result = n1 + n2;
  return result;
}

int resta(int n1, int n2) {
  final result = n1 - n2;
  return result;
}

bool validate100(int numero) {
  return (numero == 100);
//   if (numero == 100) {
//     return true;
//   } else {
//     return false;
//   }
//   return (numero == 100) ? 'si' : 'no'; // operador ternario = if en una sola línea
}

void main() {
  saludar('Juan', 'Acuña');
  saludar('Acuña', 'Jhon'); // no lo quería así
  saludar2(name: 'Juan');
  saludar2(name: 'Juan', lastName: 'Ruiz');
  saludar2(lastName: 'Ruiz', name: 'Jhon');
  // ...
  final suma = sumar(n1: 10, n2: 90);
  print(suma);
  // ...
  print(validate100(suma));
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment