Thursday, 11 July 2013 19:34

Resumenes del Libro Scala para impacientes de Cay S. Horstmann

Hola a tod@s, con este artículo empezamos una serie de publicaciones de artículos que presentarán resúmenes del Libro "SCALA for Impatient", como resultado del ciclo de capacitaciones internas realizadas en Genso iniciativas web (poner enlace principal de la pagina web) para la mejora continua de los integrantes, espero que sea de ayuda cada una de las publicaciones que realizaremos, en caso de tener alguna dificultad no duden en consultar.

¿Qué es Scala?
Scala es un moderno lenguaje de programación multi-paradigma diseñado para expresar patrones de programación comunes de una forma concisa, elegante, y de tipado seguro. Integra fácilmente características de lenguajes orientados a objetos y funcionales.

1 Capítulo I.- Información Básica

1.1 Interprete de Scala

Para probar y practicar con algunos ejemplos es necesario instalar SCALA en su ordenador, luego asegurarse de que scala/bin este agregado en el PATH, una vez realizado lo anterior usted debe abrir una pantalla de símbolo del sistema o de comando y sólo escribir la palabra scala, luego pulsar enter, de esta forma ingresa al intérprete de SCALA como se puede ver en la figura Nro. 1

ÿ Inicio/Accesorios/símbolo_del_sistema/

Fig. 1

En la figura 1 puede observar que al ingresar una línea de código el interprete inmediatamente le muestra el tipo de dato y el resultado asignado a una variable por defecto, en el primer ejercicio la variable es res0.

Ejemplos:

scala> 8 * 5 + 9 
scala>  res0 * 0.5
scala> “Hola,  “ + res1
res0: Int = 49
res1:  Double = 24.5
res2: String = Hola, 24.5

Dentro del intérprete puede llamar a algunos métodos tan solo pulsando la tecla TAB, en caso de haber varios el interprete le muestra que métodos puede utilizar, por ejemplo en la variable res2 llamamos al método que convierte a mayúsculas el texto:

scala> res2.toUpperCase
res3: String = HOLA, 24.5

1.1 Declarar Variables

En el intérprete de Scala usted puede declarar sus propias variables por ejemplo:

scala> val respuesta = 10 * 5 + 4
respuesta: Int = 54

Debe tener en cuenta que al declarar una variable con val el resultado que le asigne es constante, es decir; que no puede asignarle un nuevo valor, si lo intenta le saldrá un mensaje de error, ejemplo:

scala> respuesta = 10
< console > :8: error: reassignment to val

Si desea tener una variable que no sea constante, entonces debe declararla como var, por ejemplo:

scala> var prueba = 10 * 7 + 3
prueba: Int = 73
scala> prueba = 4
prueba: Int = 4

Ojo. Si bien puede cambiar el valor de la variable, debe tener cuidado en reasignar por otro valor del mismo tipo.

Al declarar una variable en scala no es necesario que indique que tipo de dato desea agregar, el intérprete induce qué tipo de dato esta agregando. Lo mejor es que usted declare el tipo de dato que intenta asignar, ejemplo:

scala> val saludo: String = "Hola"

Usted puede declarar varias variables a la vez, sólo debe separar las variables usando una coma "," como puede ver en el ejemplo:

scala> val num1, num2, num3 = 10
num1: Int = 10
num2: Int = 10
num3: Int = 10

1.2 Tipos comúnmente usados

Scala tiene tipos de datos que utiliza de forma común como ser: Byte, Chart, Short, Int, Long, Float, Double and Boolean.

El intérprete de scala puede realizar conversiones entre variables primitivas y wrapper sin dificultad. Además se puede modificar un String con con los métodos que tiene la clase StringOps.

Recuerde que scala utiliza métodos no casts para realizar conversiones de números.

1.3 Operadores aritméticos y sobrecarga

Scala utiliza operadores usuales como + - * / % y los operadores de comparación & | ^ >> <<, donde estos operadores son realmente métodos, por ejemplo:

a.method(b) donde su forma abreviada es a method b

El nombre del method puede ser + por ejemplo.

scala> 1.+(10)
res5: Double = 11.0

SCALA permite la sobrecarga de operadores:

contador+=1 que es lo mismo que en java contador++

1.4 Llamadas a funciones y métodos

Para realizar alguna operación se puede importar funciones matemáticas propias de SCALA, por ejemplo:

scala> Import scala.math._

Usted puede usar ._ de la misma forma que utiliza * en java

Para usar los métodos estáticos, pow,sqrt, min,Pi. Semejantes a Java.

Scala no tiene métodos estáticos, pero cada clase tiene un companion object donde sus métodos trabajan de forma similar a un método estático en java, ejemplo:

scala> BigInt.probablePrime(100, scala.util.Random)
res6: scala.math.BigInt = 1036819622350713618865780051451

Los métodos que no presentan parámetros no es necesario utilizar paréntesis.

scala> "Hello".distinct
res7: String = Helo

1.5 El metodo Apply

Este método es parecido al charAt(i) de java y s[i] de C++. Es un método que convierte tipos de datos, donde enseña a la clase como convertirse a un cierto tipo de dato requerido.

Todas las clases tienen su Apply.

Ejemplo:

scala> "Hello"(4)
res8: Char = o
scala> "Hello".apply(4)
res9: Char = o
scala> BigInt("1234567890")
res10: scala.math.BigInt = 1234567890
scala> BigInt.apply("1234567890")
res11: scala.math.BigInt = 1234567890

1.6 Scaladoc

Revisar www.scala-lang.org /api

Fuente: SCALA for the Impatient by Cay S. Horstmann

Artículo elaborado de manera conjunta por: Nataly Nanda Huanca Patzi y Apolinar Linares Flores

Apolinar Linares Flores

Scala, java developer, he is capable to give trainings, for this reason he is curious by demand or when he really needs to learn something new.

Email This email address is being protected from spambots. You need JavaScript enabled to view it.

5828 comments

  • Comment Link IgoriLib Monday, 22 January 2018 02:34 posted by IgoriLib

    cialis in kapseln

    http://cialisjqp.com/ - cialis online

    cialis cheapmedicament cialis

    http://cialisnji.com/ - cialis cheap

    generic cialis onlinehow to apply mbf personal loan

    http://soloadvance.com/ - cash advance

    loans for bad credit

    Report
  • Comment Link Sunny Monday, 22 January 2018 02:14 posted by Sunny

    get online loan fast
    speedy cash payday loans online
    online payday loans tx
    payday personal loan

    Report
  • Comment Link Britt Monday, 22 January 2018 02:14 posted by Britt

    online loans
    small personal loans fast
    get online loan fast
    payday loans no credit check

    Report
  • Comment Link Alvinsnoma Monday, 22 January 2018 02:13 posted by Alvinsnoma

    pandora disney germany
    charm pandora sigue tu estrella
    pulsera de pandora y abalorios
    koala charm pandora
    pulsera de pandora amazon
    coleccion de pandora disney
    como hacer una pulsera pandora bonita
    pandora orlando disney
    pandora charm new york
    charms personalizados pandora
    pulsera pandora la bella y la bestia
    pendientes azules pandora
    charm pandora arbol de la vida
    imagenes de pulseras de pandora
    aliexpress pandora charms
    charm minnie pandora
    andorra shop pandora
    pulsera pandora oro segunda mano
    pulseras pandora el corteingles
    pandora pulseras originales
    pulseras pandora niñas
    pandora disney deutschland
    pandora outlet wisconsin
    pandora disney tiara
    pandora charm huella
    pandora disney frozen snowflake
    pandora pulsera plata
    la pulsera de pandora se puede mojar
    precio cordon pulsera pandora
    significado de las pulseras de pandora
    pandora shop eastgate
    el corte ingles pandora charms
    charm coche pandora
    pandora anillos corte ingles
    charm pandora luna y estrellas
    anillos natales pandora
    pulseras pandora imitacion
    pandora online 80 cap
    pulsera pandora primera comunion
    pulsera pandora roja
    charm chef pandora
    charm pandora psicologa
    abalorios pandora oro
    pulsera pandora adornos
    harry styles pandora charm
    abalorios pulsera pandora ebay
    charm corazon rosa pandora
    pandora disney a vendre
    pandora outlet deals
    disney castle pandora charm
    bolas para pulseras pandora
    comprar charm de pandora
    joyas pandora outlet
    pandora disney españa online
    anillos pandora 2017
    pandora disney italia
    bolas pulsera pandora
    pandora charm boda
    limpiar pulsera de pandora
    pandora charm minnie mouse
    pulseras pandora oulet
    catalogo anillos pandora
    significado charms pandora
    anillos pandora 2012
    abalorios pandora disney
    bandera de españa pandora
    pandora book charm
    pandora necklace black friday
    tamaño charms pandora
    charm murano blanco pandora
    tiendas pandora en españa
    pandora disney charms 2014
    pulseras pandora precio
    pandora el corte ingles malaga
    telefono pandora el corte ingles san juan de aznalfarache
    charm pandora olaf
    pandora charm niña
    precios charms pandora
    charm pandora hermana
    accesorios pandora pulsera
    joyas de plata pandora
    charms navidad pandora 2016
    pandora charms promocion
    anillos pandora verano
    pendientes de pandora 2016
    oferta pulsera pandora dia de la madre
    pulseras de plata tipo pandora
    precio pulsera pandora cuero
    pulsera rigida pandora segunda mano
    pandora disney 70
    pandora disney animal kingdom charm
    abalorios pandora gato
    joyas de pandora precios
    pulsera pandora mickey mouse
    precio pulsera de pandora en el corte ingles
    pandora charms con foto
    pulseras pandora en el corte ingles
    pandora shop aylesbury
    como comprar pulsera pandora en aliexpress
    charm pandora globo terraqueo
    charm de la amistad pandora
    pandora el corte ingles elche
    pandora showdown pokemon
    pulsera huella perro pandora
    charms pandora oferta
    catalogo abalorios pandora
    abalorios para pandora
    pulsera pandora para rellenar
    cuanto cuesta una pulsera pandora
    pandora pendientes catalogo
    pulseras pandora hechas
    charm unicornio pandora
    charms pandora libros
    abalorios pandora san valentin 2016
    pulsera pandora flexible
    venta abalorios pandora originales
    catalogo pandora pendientes
    pandora shop playa blanca
    pandora outlet in branson mo
    anillos pandora oro
    charm pato pandora
    pulsera viceroy imitacion pandora
    pandora panda charm
    pandora pulsera catalogo
    complementos para la pulsera pandora
    pulseras pandora en lima
    pulsera pandora cumpleaños
    pandora charms kiwi
    pulsera pandora estrella
    catalogo pulseras pandora
    charm pandora girasole
    wall-e pandora charm
    pandora charms 25 anniversary
    pandora espana
    pandora disney murano glass
    tienda pandora el corte ingles
    pandora disney tw
    pulseras pandora navidad
    pendientes de pandora 2015
    abalorios pandora novios
    pandora disney necklace
    pandora charms lion
    pandora oferta anillos
    charms pandora hijos
    catalogo de joyas pandora chile
    pulseira de pandora disney
    pandora disney imitacion
    pandora charms es
    charm virgen del rocio pandora
    charm pandora acuario
    pulsera de pandora corte ingles
    anillos tipo pandora
    pulsera pandora malla
    abalorios para la pandora
    charm amistad pandora
    pandora e principesse disney
    pandora charm with picture
    pandora online coupon code
    oferta joyas pandora
    anillos pandora flores
    pandora black friday 2014 price
    pandora essence charms españa
    charm pandora numero 18
    joyas pandora en ripley
    black friday 2017 pandora
    pandora anillos el corte ingles
    charms pandora aliexpres
    pandora españa facebook
    pandora charms casa
    comprar pulseras pandora baratas
    pulsera viceroy como pandora
    pendientes perla pandora
    disney charms for a pandora bracelet
    pandora pendientes precios
    pandora charm mama
    charm perfume pandora chicfy
    se me ha roto la pulsera pandora
    charm addict pandora black friday 2015
    pendientes pequeños de pandora
    tamaño pulsera pandora
    pandora shop ashby de la zouch
    anillos pandora coleccion navidad
    pandora abalorios catalogo
    pandora shop dk
    pandora outlet gunwharf
    charms pandora enfermeria
    pulseras pandora catalogo precios
    como usar pandora en españa
    pulsera pandora circonitas
    pendientes plata pandora precios
    pulsera pandora cuero el corte ingles
    pulsera pandora mano de fatima
    pandora anillos apilables
    aliexpress anillos pandora
    valen los charms de pandora para viceroy
    precio de pulseras pandora
    el corte ingles catalogo pandora
    pandora charms 32246
    pandora charm angel
    pendientes arbol de la vida pandora
    joyas pandora en temuco
    pandora charm erizo
    charm pandora farmacia
    joyas pandora en miami
    pulsera pandora charms
    pandora pendientes amazon
    pandora silver sky mosaic pave charm
    pandora disney elsa
    charm pandora voley
    charms compatibles pandora
    pulsera pandora zodiaco
    el corte ingles joyeria pandora
    pandora pendientes infinito
    pandora charm make your own
    pandora el corte ingles oviedo
    pandora pendientes eci
    charm disney pandora
    pandora shop fourways
    el corte ingles salamanca pandora
    pulsera pandora amistad
    charm pandora perlas
    pandora charm huella perro
    accesorios para pulsera pandora
    disney charms pandora
    pulsera pandora 2016
    tienda outlet pandora madrid
    que talla pulsera pandora
    pandora charms heart
    anillos de pandora el corte ingles
    pandora outlet hawaii
    pandora historia pulsera
    anillos de plata de pandora
    pandora precio pulsera
    pendientes pandora alas de angel
    charm avion pandora
    charm pandora trebol
    clip para pulsera pandora
    pulsera disney pandora
    pandora shop colchester
    donde comprar pulsera pandora barcelona
    pulseras pandora opiniones
    charm pandora colores
    se puede achicar la pulsera pandora
    pandora compatible charms
    pandora club charm 2013
    pandora new disney collection 2015
    pandora charms 2014
    pandora disney spring
    pandora disney park exclusive 2015
    pandora charms perro
    pandora mama charm
    abalorios pandora azul
    pulseras de pandora amazon
    pandora shop wilmslow
    pulseras pandora rosa
    la pandora pulsera
    ver joyas de pandora
    pandora disney tinkerbell
    charms bracelet pandora
    charm orquidea pandora
    la caja de pandora pelicula completa online
    pandora flower charm
    pulsera pandora significado
    piezas para la pulsera pandora
    pandora joyas catalogo 2013
    comprar abalorios pandora contrareembolso
    charms pandora
    charm pandora hermanas
    pandora h charm
    aliexpress abalorios pandora
    charms pandora corazones
    pulsera viceroy estilo pandora
    pandora uk outlet store
    pandora outlet charms
    pandora charm 18th
    pandora disney new 2016
    charms pandora 2016
    abalorios pulseras pandora precios
    charms pandora letras
    charm pandora candado
    abalorios pandora letras
    pulsera pandora con abalorios
    pulsera pandora charms precio
    cuidados pulsera pandora
    pandora shop pendientes
    pulseras abalorios plata tipo pandora
    relojes pandora el corte ingles
    pulsera pandora abalorio amistad
    charms corazon pandora
    talla de anillos pandora
    pandora outlet store
    joyeria el corte ingles pandora
    comprar pandora online mexico
    pandora charm amor
    anillo pandora disney
    talla pulseras pandora
    pandora charms cumpleaños
    anillos pandora circonita
    comprar pulsera pandora barcelona
    pandora disney 5 octubre

    Report
  • Comment Link Bad Credit Monday, 22 January 2018 02:06 posted by Bad Credit

    personal loans personal loans for bad credit quick cash loans online personal loans with bad credit

    Report
  • Comment Link Gilbert Monday, 22 January 2018 01:46 posted by Gilbert

    payday personal loan
    fast quick loans online
    payday loans online application
    payday loans in az

    Report
  • Comment Link Artizan Computer Monday, 22 January 2018 01:38 posted by Artizan Computer

    preisvergleich http://artizancomputer.com/magpie/cache/apotheke/amiohexal.html legal kaufen osterreich.

    Report
  • Comment Link Pay Day Loans Monday, 22 January 2018 00:47 posted by Pay Day Loans

    payday loan cash advance payday fastcash no fax payday loan

    Report
  • Comment Link Jasonpen Monday, 22 January 2018 00:45 posted by Jasonpen

    viagra alternative

    best ed supplements

    cialis online

    generic viagra canada

    buy viagra

    erectile dysfunction medication

    cialis cost

    viagra generic name

    http://wogenericizviagrapen.com/

    Report
  • Comment Link IgoriLib Monday, 22 January 2018 00:38 posted by IgoriLib

    wow buy cialis low price

    http://cialisjqp.com/ - generic cialis

    generic cialisside cialis effects

    http://cialisnji.com/ - generic cialis

    generic cialis onlinecash flow loan interest

    http://soloadvance.com/ - loans for bad credit

    payday express

    Report

Leave a comment

Make sure you enter the (*) required information where indicated. HTML code is not allowed.

FaLang translation system by Faboba