SlideShare una empresa de Scribd logo
Capítulo 2: Definición de
datos
Elaborado por Gary Briceño
http://Gary.pe
Definición: Literal, Valor y Tipo
• Literal
• Son los datos que aparecen directamente en el código, cómo los números, caracteres o un
texto
• Ejemplo: 5, A, “Hola Mundo”
• Valor
• Un valor es una unidad de almacenamiento inmutable.
• Se puede asignar un valor cuando es asignado, pero no puede ser reasignado
• Tipo
• Es el tipo de dato con el cual esta trabajando, una definición o clasificación de la data.
• Todos los datos en Scala corresponden a un tipo específico
• Todas los Tipos en Scala son definidos como clases con métodos que operan sobre ellas
Garbage Collector
• Similar al trabajo que realiza en Java
• La data almacenada en los valores es automáticamente liberada por
el Garbage Collector de la máquina virtual cuando esta ya no es
utilizada.
• No hay necesidad de liberar esta información en forma manual
Sintaxis
val <name>: <tipo> = <literal>;
En este ejemplo se han definido tres tipos de
variables:
Una de ellas nombre hola, de tipo String y con
valor “Hello World!”.
Scala REPL
• Cuando se define una variable, ¿Qué sucede?
• Read-Evaluate-Print-Loop
• Cuando se define una variable, se lee la definición del valor, se evalúa y se
reimprime una vez confirmado el valor.
• El valor resultado de una operación, pasa a una nueva variable
Valores
• Los valores son inmutables, los tipos almacenan unidades y son el
método por defecto para guardar un valor.
• Se puede definir un nuevo valor utilizando la palabra reservada val.
val <name> [: <tipo> ] = <data>;
• Los valores requiere un nombre y asignarle un dato, pero no
requieren del dato explicito.
• Si no se asigna un tipo, el compilador de S
Valores:
Ejemplos sin especificar el tipo:
Inferencia de tipo
• Scala cuenta con la inferencia de tipo, la cual no obliga a definir el tipo
de la variable, y Scala infiere el tipo de la misma
• Esta es una ayuda al escribir código pues elimina la necesidad de
escribir el tipo de dato al escribir el código.
• Se debe utilizar cuando este no disminuye la facilidad de lectura de su
código
• En algunos casos será mejor incluir el tipo de dato en forma explicita, a fin de
mejorar la lectura del código
Variables
• Por lo general una variable hace referencia a un identificador que se corresponde
con un espacio de memoria, en donde el valor puede ser almacenado u obtenido.
De la misma forma que es reservado, se puede asignar nuevos valores una y otra
vez.
• Esto funciona en la mayoría de lenguajes como Java, Python, C y Ruby
• Variables son dinámicas, mutables y reasignables
• En Scala se prefieren valores a variables, debido a la estabilidad y escalabilidad
que brindan al programa.
• Cuando asigna un valor, este mantiene el mismo valor durante la ejecución del programa
• Finalmente, cuando trabaja con programas multi hilos o concurrentes, los valores inmutables
hacen más estable el sistema
Nombres
• En Scala para las variables, se pueden utilizar letras, números y un
rango de caracteres especiales
• Se pueden utilizar caracteres como * y +, así como símbolos φ
• Se pueden utilizar todos los caracteres de u0020-007F y Unicode a excepción
de [] o punto (.)
Reglas de nombres
• Una letra seguida de cero o más letras y dígitos
• Una letra seguida de cero o más letras y dígitos, luego guion bajo (_),
luego letras y dígitos
• Uno o más operadores de caracteres
• Los nombres no pueden empezar con números
Tipos
• Tiene tipos numéricos(Int y Double) y no numéricos (String), para
definir valores y variables
• Estos tipos son la base para construir otros objetos y collections
• En Scala no hay el concepto de datos primitivos
Tipos númericos
Name Descripción Tamaño Mínimo Máximo
Byte Entero con signo 1 Byte -127 128
Short Entero con signo 2 Bytes -32768 32767
Int Entero con signo 4 Bytes - 2 a la 31 2 a la 31 – 1
Long Entero con signo 8 Bytes - 2 a la 63 2 a la 63 – 1
Float Punto flotante con signo 4 Bytes Nd Nd
Double Punto flotante con signo 8 Bytes Nd Nd
Númericos
• Scala soporta la conversión automática de los números de un rango a
otro de ser necesario
• Scala no soporta convertir un número de un rango mayor a un rango
menor
• Se puede perder información si esto fuera posible
• Se puede convertir manualmente a un determinado tipo, utilizando el
método toType: toInt, por ejemplo
String
• Representa a una cadena de texto
• Esta basado en el objeto String de Java, le agrega caracteres multi
línea e interpolación de cadenas
String y operadores
• Los String soportan operadores, como por ejemplo “+” o “==“ para
comparar
• El operador “==“ verifica la igualdad de los caracteres, no verifica la
referencia de los objetos.
• Para una cadena multi línea se utiliza comillas triples (“”” – “”” ), para
estos no se reconocen los caracteres especiales.
String y operadores
Interpolación
• Se utiliza para utilizar valores de variables dentro de una cadena
• Al inicio de la cadena, se debe agrega “s” y el símbolo de “$” se utiliza
para agregar las variables
Ejemplo de interpolación
Expresiones regulares
• Es una cadena de caracteres y determinados signos que representan
un patrón
• Popularizado por Perl, actualmente las expresiones regulares son
parte de la mayoría de lenguajes de programación.
• En Scala, la formación de los patrones se basa en
• javax.util.regex.Pattern

Más contenido relacionado

PPTX
Java & Strings
PDF
Unidad i antecedentes
PPTX
Programación 3: arrays (arreglos) y vectores
PPTX
Tipos de java...
PDF
Java basico
PPSX
Java 5 se (presentación3)
PDF
Java Basico Platzi
PPTX
Tipos de datos
Java & Strings
Unidad i antecedentes
Programación 3: arrays (arreglos) y vectores
Tipos de java...
Java basico
Java 5 se (presentación3)
Java Basico Platzi
Tipos de datos

La actualidad más candente (19)

PPTX
Clase 01 290615
PPTX
Arrays - programación 3
DOCX
Variables y tipos de datos parcial
DOCX
Ap3 java
PPTX
Tipos de variables que Java maneja
PPSX
Variables en java
PPTX
Tipos de datos_en_java
PPTX
Expo guardar objetos en ficheros serializable (2)
PPTX
Tipos de Variables en Java
PDF
Java basico
PPT
8. Uso De Variables De Tipo Referencia
PDF
Introducción a la programación y la informática. Tema 3
PPTX
Tipos de datos.java
PPTX
Programación 2
PPTX
Action script 3_basic
PDF
Javascript
PPTX
tipos de datos
Clase 01 290615
Arrays - programación 3
Variables y tipos de datos parcial
Ap3 java
Tipos de variables que Java maneja
Variables en java
Tipos de datos_en_java
Expo guardar objetos en ficheros serializable (2)
Tipos de Variables en Java
Java basico
8. Uso De Variables De Tipo Referencia
Introducción a la programación y la informática. Tema 3
Tipos de datos.java
Programación 2
Action script 3_basic
Javascript
tipos de datos
Publicidad

Destacado (17)

PPTX
Desarrollo Web con Scala
PPTX
PDF
JavaScript: Mejorando la programación
PPTX
Scala en la Practica
PPTX
Pf con scala
PPTX
Introducción a Scala
PDF
Programación Funcional en Scala
PDF
Scala - just good for Java shops?
PPTX
JavaFX and Scala - Like Milk and Cookies
PDF
Introducción a scala
PDF
Koreference
ODP
Scala+swing
PDF
Mobius: C# Language Binding For Spark
PPTX
JavaFX 2 and Scala - Like Milk and Cookies (33rd Degrees)
PPTX
4 Introducción al lenguaje Scala
PPT
Scala
Desarrollo Web con Scala
JavaScript: Mejorando la programación
Scala en la Practica
Pf con scala
Introducción a Scala
Programación Funcional en Scala
Scala - just good for Java shops?
JavaFX and Scala - Like Milk and Cookies
Introducción a scala
Koreference
Scala+swing
Mobius: C# Language Binding For Spark
JavaFX 2 and Scala - Like Milk and Cookies (33rd Degrees)
4 Introducción al lenguaje Scala
Scala
Publicidad

Similar a Curso de Scala: Trabajando con variables (20)

PDF
Apache spark meetup
PDF
Procesamiento de datos a gran escala con Apache Spark
KEY
Introducción a Scala
PPT
Lenguajes De Bajo Nivel
PPT
LibreríAs De Java
PPT
Lenguajes de programación parte i.4
PPTX
Estructura sintactica de los lenguajes de programacion
PPT
1 1 2 Datos Primitivas Y Objetos
 
PDF
Unidad i antecedentes1
PPT
Mule Librerias en Java
PDF
Scala Overview
PPTX
Tipos de datos
PDF
Arquitectura de datos empresariales tipos de datos
PPTX
Tipo de datos JAVA
PDF
Descubriendo scala
PPTX
02.1 - Estructura_General_De_Programa.pptx
DOCX
Segundo trabajo
DOCX
Anderson cadena
DOCX
Anderson cadena
Apache spark meetup
Procesamiento de datos a gran escala con Apache Spark
Introducción a Scala
Lenguajes De Bajo Nivel
LibreríAs De Java
Lenguajes de programación parte i.4
Estructura sintactica de los lenguajes de programacion
1 1 2 Datos Primitivas Y Objetos
 
Unidad i antecedentes1
Mule Librerias en Java
Scala Overview
Tipos de datos
Arquitectura de datos empresariales tipos de datos
Tipo de datos JAVA
Descubriendo scala
02.1 - Estructura_General_De_Programa.pptx
Segundo trabajo
Anderson cadena
Anderson cadena

Más de Gary Briceño (13)

PDF
Git - Iniciando la Administración de Contenidos
PDF
Kanban principio de visualizacion
PDF
Seguridad sql injection
PDF
Software para android
PPT
Gary Briceño
PDF
CAP 4: SEO - Optimizacion de Contenido
PDF
CAP 3: SEO - Keywords Research
PDF
CAP 2: SEO - Técnicas de SEO
PDF
CAP 1: SEO - Introduccion al marketing de buscadores
PDF
Instalando Android SDK
PDF
Tecnicas de SEO
PDF
Temario curso SEO
PDF
Trennbare Verben
Git - Iniciando la Administración de Contenidos
Kanban principio de visualizacion
Seguridad sql injection
Software para android
Gary Briceño
CAP 4: SEO - Optimizacion de Contenido
CAP 3: SEO - Keywords Research
CAP 2: SEO - Técnicas de SEO
CAP 1: SEO - Introduccion al marketing de buscadores
Instalando Android SDK
Tecnicas de SEO
Temario curso SEO
Trennbare Verben

Último (6)

DOCX
trabajo programacion.docxxdxxxddxdxxdxdxxxdxxdxdxd
PDF
Su punto de partida en la IA: Microsoft 365 Copilot Chat
PPTX
sistemas de informacion.................
PPTX
Conceptos basicos de Base de Datos y sus propiedades
PDF
AutoCAD Herramientas para el futuro, Juan Fandiño
PPTX
Derechos_de_Autor_y_Creative_Commons.pptx
trabajo programacion.docxxdxxxddxdxxdxdxxxdxxdxdxd
Su punto de partida en la IA: Microsoft 365 Copilot Chat
sistemas de informacion.................
Conceptos basicos de Base de Datos y sus propiedades
AutoCAD Herramientas para el futuro, Juan Fandiño
Derechos_de_Autor_y_Creative_Commons.pptx

Curso de Scala: Trabajando con variables

  • 1. Capítulo 2: Definición de datos Elaborado por Gary Briceño http://Gary.pe
  • 2. Definición: Literal, Valor y Tipo • Literal • Son los datos que aparecen directamente en el código, cómo los números, caracteres o un texto • Ejemplo: 5, A, “Hola Mundo” • Valor • Un valor es una unidad de almacenamiento inmutable. • Se puede asignar un valor cuando es asignado, pero no puede ser reasignado • Tipo • Es el tipo de dato con el cual esta trabajando, una definición o clasificación de la data. • Todos los datos en Scala corresponden a un tipo específico • Todas los Tipos en Scala son definidos como clases con métodos que operan sobre ellas
  • 3. Garbage Collector • Similar al trabajo que realiza en Java • La data almacenada en los valores es automáticamente liberada por el Garbage Collector de la máquina virtual cuando esta ya no es utilizada. • No hay necesidad de liberar esta información en forma manual
  • 4. Sintaxis val <name>: <tipo> = <literal>; En este ejemplo se han definido tres tipos de variables: Una de ellas nombre hola, de tipo String y con valor “Hello World!”.
  • 5. Scala REPL • Cuando se define una variable, ¿Qué sucede? • Read-Evaluate-Print-Loop • Cuando se define una variable, se lee la definición del valor, se evalúa y se reimprime una vez confirmado el valor. • El valor resultado de una operación, pasa a una nueva variable
  • 6. Valores • Los valores son inmutables, los tipos almacenan unidades y son el método por defecto para guardar un valor. • Se puede definir un nuevo valor utilizando la palabra reservada val. val <name> [: <tipo> ] = <data>; • Los valores requiere un nombre y asignarle un dato, pero no requieren del dato explicito. • Si no se asigna un tipo, el compilador de S
  • 8. Inferencia de tipo • Scala cuenta con la inferencia de tipo, la cual no obliga a definir el tipo de la variable, y Scala infiere el tipo de la misma • Esta es una ayuda al escribir código pues elimina la necesidad de escribir el tipo de dato al escribir el código. • Se debe utilizar cuando este no disminuye la facilidad de lectura de su código • En algunos casos será mejor incluir el tipo de dato en forma explicita, a fin de mejorar la lectura del código
  • 9. Variables • Por lo general una variable hace referencia a un identificador que se corresponde con un espacio de memoria, en donde el valor puede ser almacenado u obtenido. De la misma forma que es reservado, se puede asignar nuevos valores una y otra vez. • Esto funciona en la mayoría de lenguajes como Java, Python, C y Ruby • Variables son dinámicas, mutables y reasignables • En Scala se prefieren valores a variables, debido a la estabilidad y escalabilidad que brindan al programa. • Cuando asigna un valor, este mantiene el mismo valor durante la ejecución del programa • Finalmente, cuando trabaja con programas multi hilos o concurrentes, los valores inmutables hacen más estable el sistema
  • 10. Nombres • En Scala para las variables, se pueden utilizar letras, números y un rango de caracteres especiales • Se pueden utilizar caracteres como * y +, así como símbolos φ • Se pueden utilizar todos los caracteres de u0020-007F y Unicode a excepción de [] o punto (.)
  • 11. Reglas de nombres • Una letra seguida de cero o más letras y dígitos • Una letra seguida de cero o más letras y dígitos, luego guion bajo (_), luego letras y dígitos • Uno o más operadores de caracteres • Los nombres no pueden empezar con números
  • 12. Tipos • Tiene tipos numéricos(Int y Double) y no numéricos (String), para definir valores y variables • Estos tipos son la base para construir otros objetos y collections • En Scala no hay el concepto de datos primitivos
  • 13. Tipos númericos Name Descripción Tamaño Mínimo Máximo Byte Entero con signo 1 Byte -127 128 Short Entero con signo 2 Bytes -32768 32767 Int Entero con signo 4 Bytes - 2 a la 31 2 a la 31 – 1 Long Entero con signo 8 Bytes - 2 a la 63 2 a la 63 – 1 Float Punto flotante con signo 4 Bytes Nd Nd Double Punto flotante con signo 8 Bytes Nd Nd
  • 14. Númericos • Scala soporta la conversión automática de los números de un rango a otro de ser necesario • Scala no soporta convertir un número de un rango mayor a un rango menor • Se puede perder información si esto fuera posible • Se puede convertir manualmente a un determinado tipo, utilizando el método toType: toInt, por ejemplo
  • 15. String • Representa a una cadena de texto • Esta basado en el objeto String de Java, le agrega caracteres multi línea e interpolación de cadenas
  • 16. String y operadores • Los String soportan operadores, como por ejemplo “+” o “==“ para comparar • El operador “==“ verifica la igualdad de los caracteres, no verifica la referencia de los objetos. • Para una cadena multi línea se utiliza comillas triples (“”” – “”” ), para estos no se reconocen los caracteres especiales.
  • 18. Interpolación • Se utiliza para utilizar valores de variables dentro de una cadena • Al inicio de la cadena, se debe agrega “s” y el símbolo de “$” se utiliza para agregar las variables
  • 20. Expresiones regulares • Es una cadena de caracteres y determinados signos que representan un patrón • Popularizado por Perl, actualmente las expresiones regulares son parte de la mayoría de lenguajes de programación. • En Scala, la formación de los patrones se basa en • javax.util.regex.Pattern