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.

11321 comments

  • Comment Link Donaldmor Monday, 02 April 2018 00:24 posted by Donaldmor

    how to get cheap cialis
    generic cialis online pharmacy
    can buy cialis canada
    generic cialis online without script
    cialis order uk
    buy cialis
    cialis for sale in the philippines
    cialis online
    cialis sale uk

    Report
  • Comment Link Payday Express Monday, 02 April 2018 00:20 posted by Payday Express

    cash now get cash now need cash now cash now

    Report
  • Comment Link picamp Monday, 02 April 2018 00:14 posted by picamp

    prometrium allergy cialis pills
    buy generic cialis online
    side effects rash cialis 20mg cialis
    cialis online

    Report
  • Comment Link jmiviero Monday, 02 April 2018 00:06 posted by jmiviero

    buy viagra soft online
    purchase viagra
    viagra in canada
    [url=http://purseInstock.com/]what is sildenafil[/url] OK’

    Report
  • Comment Link DanilaLib Monday, 02 April 2018 00:04 posted by DanilaLib

    daily cialis price|cialis soft tabs 10m|generic cialis at walmart|approved cialis|cheapest cialis price online|cialis versand in der schweiz|click now generic cialis forum|cialis sales data|comprare cialis generico|cialis acquisto propeci|just try cialis in the usa|prezzo di cialis uk|billige cialis aus deutschland|cost of cialis in mexico|cialis sublingual mist canada|canadian cost of cialis pills|online cialis never showed up|cialis y el alcohol|cialis nhs price|recommended site cialis uk|generic cialis da india|cialis online pharmacy forum|the best place cialis soft gel|cialis berichte|cheap cialis net|mastercard generic cialis|cialis kaufen lastschrift|cialis 50mg uk|cialis und sodbrennen|cost of cialis 20 mg tabs|rx cialis generic|i recommend womans cialis|why they use cialis|20 mg cialis cost rite aid|comprar cialis generico df|enter site cialis sales uk|generic from cialis jelly|comprar cialis online portugal|cialis online drugstore|cialis tadalafil 100mg kaufen|cialis sicher kaufen forum|i recommend cialis online usa|cialis compresse 10 m|buy cialis vancouver|cialis daily use experience|achat cialis urgen|vente cialis ligne|online cialis suppliers uk|cialis 20mg le prix|order by phone for cialis|le cialis 5 m|cialis non va|cialis precio en peru|cialis comparateur de prix|cheap cialis 20mg australia|receta mdica de cialis|cialis generico en farmacias|we choice what is cialis|cost of cialis one a day|seguro de cialis tres|the best site cialis 25 mg|prix cialis 5mg boite de 28|canadian cialis cost|does generic cialis work|how to get cialis sublingual|rx generic cialis|professional cialis on sale|20 mgs of cialis the day|cialis dosage for ed|best price online cialis|cialis 5mg rezeptfrei|cialis no generic|cialis generico mx|best cialis online retailer|cialis barat|cheapest cialis 10 mg|only today canadian cialis uk|acquistare cialis soft|stroke cialis|we recommend mexico cialis|cialis generico envio gratis|cialis 5mg rezeptfre|cialis order online no|acquisto cialis in farmacia|cialis 30 day|we choice cheepest cialis|comprar cialis valparaiso|cialis senza ricetta medica|cheapest online cialis in us|cialis pro canada|cialis generico dove|cialis online norway|cialis generico precio mexico|i recommend generic for cialis|average cost for 25 mg cialis|buying cialis in egypt|cialis 20 mg sale|chewable generic cialis|cialis time to effect|visit web site cialis cheap|cialis generico existe|i recommend discount cialis|cialis billig 10mg rezeptfrei|best cialis online price|enter site cialis order canada|cialis testimonials forum|cialis 10 mg generic|cialis the best price in world|cialis venta en mexico|how to buy save cialis|effects cialis vs side|generic cialis work|espaa cialis genrica|cialis 20 canada|cialis no prescription this|sicuro dove cialis|generic cialis ireland|can i take 2 cialis|cialis andorra sin receta|cialis generico dove comprare|acheter cialis generic|discount lily icos cialis|buy cialis online boots|cialis plus|anyone tried buy cialis online|flex benefit accounts cialis|seguro y cialis|cialis 20mg billig kaufen|generic cialis tablet|pillola cialis en ligne|compro cialis online|achat de cialis au le canada|los cialis marcan el precio|there generic cialis drug|only here get cialis in canada|generic cialis soft gels|where to buy cialis in hk|wow look it cialis costs|cialis ketoconazol|we use it cialis cost|cialis daily food|mejor precio en lilly cialis|i use it cialis pills|cialis indien bestellen|10mg generic cialis cheap|costo cialis o viagr|look there cheap cialis 50mg|venta de cialis argentina|cialis internet avi|click now order cialis online|cialis generic cheap drug|what is cialis|try it cost of cialis|cialis were to buy cheap|cialis billig rezeptfrei|info cialis|acheter cialis sur internet|cialis et ketoconazole|sconto di cialis fantastico|cialis tadalafil 5mg preise|cialis levitra ligne|cialis avis forum|cialis info|cialis sales 2008|pharmacy canadian cialis|lloyds pharmacy online cialis|cialis healthy dosage|good choice cialis shop|cialis sale uk generic|cialis take advil headache|prix cialis 10|cialis proper dosage|cialis from hong kong|top internet cialis web sites|cost of cialis once a day|i cialis costano la pillola|cialis generico postepa|what doctor to get cialis|dr cheapest generic cialis|levitra cialis per|cialis 20 mg best pric|cialis farmacias ahorr|cialis con receta medica|cialis vs levitra review|cialis generic brand|effet secondaire cialis 20 m|cialis da 10|look here generix cialis|cheapest cialis prescription|precios de cialis en farmacias|look there cialis buying|visit web site order cialis|buy lilly cialis|cialis online in nz|cialis canadian drug|buying cialis online in canada|canada cialis brand|cialis 5mg generic australia|vendo cialis milano|fast cialis online|cialis soft pills|comprar cialis genrico|follow link cialis 5mg|cialis suaves|cialis supreme|boots chemist cialis cost|dove comprare cialis italia|cialis bestellen sterreich|lower price cialis|follow link rx online cialis|comprar cialis en cuba|only today cialis in uk|cialis fr henne|drugstore cialis cipla|venta de cialis en espaa|lilly cialis 100 mg|kpa cialis p apoteket|cialis for women men|only today cialis master card|cialis erect penis|cialis black 800 mg generic|canada cialis 25mg pills|best prices for generic cialis|good choice dosage cialis|comprar cialis 10 espaa|comprare cialis in itali|cialis soft where to purchase|precio cialis en farmacias|mexican pharmacy cialis|36 hour cialis reviews|suciedad de cialis barata|generic cialis double|click now order cialis cialis|cialis 40 mguk|cialis 25mg review|presentacion cialis 20 mg|there approved generic cialis|cialis 20 mg 10 pills|cialis pill for cheap|best price cialis online|cialis online billig|comprar cialis lima peru|cialis 10mg pas cher|purchase cialis 5mg australia|effetti collaterali cialis 5 m|achat cialis marseille|wow sale cialis|medicament cialis 5m|cialis ottawa pharmacy|visit web site cialis discount

    http://cialisyqlw.com/ - cheap cialis,cialis,buy cialis,generic cialis online,generic cialis,cialis cheap,cialis online,buy cialis,cialis
    cheap cialis,cialis,buy cialis,generic cialis online,generic cialis,cialis cheap,cialis online,buy cialis,cialis

    daily cialis price|cialis soft tabs 10m|generic cialis at walmart|approved cialis|cheapest cialis price online|cialis versand in der schweiz|click now generic cialis forum|cialis sales data|comprare cialis generico|cialis acquisto propeci|just try cialis in the usa|prezzo di cialis uk|billige cialis aus deutschland|cost of cialis in mexico|cialis sublingual mist canada|canadian cost of cialis pills|online cialis never showed up|cialis y el alcohol|cialis nhs price|recommended site cialis uk|generic cialis da india|cialis online pharmacy forum|the best place cialis soft gel|cialis berichte|cheap cialis net|mastercard generic cialis|cialis kaufen lastschrift|cialis 50mg uk|cialis und sodbrennen|cost of cialis 20 mg tabs|rx cialis generic|i recommend womans cialis|why they use cialis|20 mg cialis cost rite aid|comprar cialis generico df|enter site cialis sales uk|generic from cialis jelly|comprar cialis online portugal|cialis online drugstore|cialis tadalafil 100mg kaufen|cialis sicher kaufen forum|i recommend cialis online usa|cialis compresse 10 m|buy cialis vancouver|cialis daily use experience|achat cialis urgen|vente cialis ligne|online cialis suppliers uk|cialis 20mg le prix|order by phone for cialis|le cialis 5 m|cialis non va|cialis precio en peru|cialis comparateur de prix|cheap cialis 20mg australia|receta mdica de cialis|cialis generico en farmacias|we choice what is cialis|cost of cialis one a day|seguro de cialis tres|the best site cialis 25 mg|prix cialis 5mg boite de 28|canadian cialis cost|does generic cialis work|how to get cialis sublingual|rx generic cialis|professional cialis on sale|20 mgs of cialis the day|cialis dosage for ed|best price online cialis|cialis 5mg rezeptfrei|cialis no generic|cialis generico mx|best cialis online retailer|cialis barat|cheapest cialis 10 mg|only today canadian cialis uk|acquistare cialis soft|stroke cialis|we recommend mexico cialis|cialis generico envio gratis|cialis 5mg rezeptfre|cialis order online no|acquisto cialis in farmacia|cialis 30 day|we choice cheepest cialis|comprar cialis valparaiso|cialis senza ricetta medica|cheapest online cialis in us|cialis pro canada|cialis generico dove|cialis online norway|cialis generico precio mexico|i recommend generic for cialis|average cost for 25 mg cialis|buying cialis in egypt|cialis 20 mg sale|chewable generic cialis|cialis time to effect|visit web site cialis cheap|cialis generico existe|i recommend discount cialis|cialis billig 10mg rezeptfrei|best cialis online price|enter site cialis order canada|cialis testimonials forum|cialis 10 mg generic|cialis the best price in world|cialis venta en mexico|how to buy save cialis|effects cialis vs side|generic cialis work|espaa cialis genrica|cialis 20 canada|cialis no prescription this|sicuro dove cialis|generic cialis ireland|can i take 2 cialis|cialis andorra sin receta|cialis generico dove comprare|acheter cialis generic|discount lily icos cialis|buy cialis online boots|cialis plus|anyone tried buy cialis online|flex benefit accounts cialis|seguro y cialis|cialis 20mg billig kaufen|generic cialis tablet|pillola cialis en ligne|compro cialis online|achat de cialis au le canada|los cialis marcan el precio|there generic cialis drug|only here get cialis in canada|generic cialis soft gels|where to buy cialis in hk|wow look it cialis costs|cialis ketoconazol|we use it cialis cost|cialis daily food|mejor precio en lilly cialis|i use it cialis pills|cialis indien bestellen|10mg generic cialis cheap|costo cialis o viagr|look there cheap cialis 50mg|venta de cialis argentina|cialis internet avi|click now order cialis online|cialis generic cheap drug|what is cialis|try it cost of cialis|cialis were to buy cheap|cialis billig rezeptfrei|info cialis|acheter cialis sur internet|cialis et ketoconazole|sconto di cialis fantastico|cialis tadalafil 5mg preise|cialis levitra ligne|cialis avis forum|cialis info|cialis sales 2008|pharmacy canadian cialis|lloyds pharmacy online cialis|cialis healthy dosage|good choice cialis shop|cialis sale uk generic|cialis take advil headache|prix cialis 10|cialis proper dosage|cialis from hong kong|top internet cialis web sites|cost of cialis once a day|i cialis costano la pillola|cialis generico postepa|what doctor to get cialis|dr cheapest generic cialis|levitra cialis per|cialis 20 mg best pric|cialis farmacias ahorr|cialis con receta medica|cialis vs levitra review|cialis generic brand|effet secondaire cialis 20 m|cialis da 10|look here generix cialis|cheapest cialis prescription|precios de cialis en farmacias|look there cialis buying|visit web site order cialis|buy lilly cialis|cialis online in nz|cialis canadian drug|buying cialis online in canada|canada cialis brand|cialis 5mg generic australia|vendo cialis milano|fast cialis online|cialis soft pills|comprar cialis genrico|follow link cialis 5mg|cialis suaves|cialis supreme|boots chemist cialis cost|dove comprare cialis italia|cialis bestellen sterreich|lower price cialis|follow link rx online cialis|comprar cialis en cuba|only today cialis in uk|cialis fr henne|drugstore cialis cipla|venta de cialis en espaa|lilly cialis 100 mg|kpa cialis p apoteket|cialis for women men|only today cialis master card|cialis erect penis|cialis black 800 mg generic|canada cialis 25mg pills|best prices for generic cialis|good choice dosage cialis|comprar cialis 10 espaa|comprare cialis in itali|cialis soft where to purchase|precio cialis en farmacias|mexican pharmacy cialis|36 hour cialis reviews|suciedad de cialis barata|generic cialis double|click now order cialis cialis|cialis 40 mguk|cialis 25mg review|presentacion cialis 20 mg|there approved generic cialis|cialis 20 mg 10 pills|cialis pill for cheap|best price cialis online|cialis online billig|comprar cialis lima peru|cialis 10mg pas cher|purchase cialis 5mg australia|effetti collaterali cialis 5 m|achat cialis marseille|wow sale cialis|medicament cialis 5m|cialis ottawa pharmacy|visit web site cialis discount

    Report
  • Comment Link jmiviero Sunday, 01 April 2018 23:25 posted by jmiviero

    natural viagra substitute
    buy viagra online
    viagra best price
    [url=http://purseInstock.com/]viagra online[/url] OK’

    Report
  • Comment Link vatDwema Sunday, 01 April 2018 23:22 posted by vatDwema

    buy cialis in the uk
    buy cheap cialis coupon
    cheap cialis soft
    buy cialis online

    Report
  • Comment Link Jamesneabe Sunday, 01 April 2018 23:17 posted by Jamesneabe

    triple a auto insurance compare multiple auto insurance quotes compare car insurance get car insurance

    Report
  • Comment Link jmiviero Sunday, 01 April 2018 22:43 posted by jmiviero

    viagra brand for sale
    viagra tablets
    generic viagra online pharmacy
    [url=http://purseInstock.com/]sildenafil 100mg[/url] OK’

    Report
  • Comment Link RobertSox Sunday, 01 April 2018 22:25 posted by RobertSox

    cheap cialis canada pharmacy
    cialis online
    cialis buy paypal
    buy cialis online
    cheap cialis in usa
    cialis canada
    how to order cialis online no prescription
    cialis canada
    cheap cialis drug

    Report

Leave a comment

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

FaLang translation system by Faboba