Top Banner
Scala Para Jovens
17

Iniciando em Scala

Jul 02, 2015

Download

Software

Diego Gusava

Apresentação resumida sobre scala
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Iniciando em Scala

ScalaPara Jovens

Page 2: Iniciando em Scala

Scala

Qual minha principal motivação em aprender Scala?

Page 3: Iniciando em Scala

Quem está usando?

Page 4: Iniciando em Scala

Scala vs Java IDE cuspindo código

Scala S2

Page 5: Iniciando em Scala

Scala vs Java

Roda na JVM

Integra 100% com libs Java

Linguagem Hibrida: OO e Funcional

Tipagem Estática

Tudo é Objeto

Page 6: Iniciando em Scala

Paradigmas

OO Funcional

Composição de Objetos Composição de Funções

Mutabilidade Imutável

Algoritmos Iterativos Algoritmos Recursivos

Page 7: Iniciando em Scala

Básico

Tudo é público por padrão

Inferindo o tipo (String)

Não precisa de vírgula

Variável Mutável

Variável Imutável

Declarando o tipo

Page 8: Iniciando em Scala

EstruturaParâmetros Retorno

Dispensável se retorna Unit

Dispensa return

Obrigatório p/ +1 linha

Page 9: Iniciando em Scala

FunçõesValor

Padrão

Recebo 2 Parâmetros

Retorno

Função padrão utilizada

Page 10: Iniciando em Scala

FunçõesPassando função

por parâmetro Currying

Qualquer coisa

Função Anônima

Page 11: Iniciando em Scala

Classes e ObjetosConstrutor, Propriedades

e tudo final :)

Chamando as propriedadesCompanion

ObjectMinha classe estática

Método Default

Page 12: Iniciando em Scala

Classes e Objetos

Construtor, Propriedades e tudo final :)

equals, hashCode, apply e unnaply

Clone da classe

Definindo os parâmetros

Novo Construtor

Definindo os valores default

Restrições da Classe

Novo Construtor

Page 13: Iniciando em Scala

Pattern Matching

parecido com switch do java

decompõe o objeto

Qualquer coisa

Page 14: Iniciando em Scala

TuplasVocê não precisa criar

classes

O acesso as variáveis

Page 15: Iniciando em Scala

TraitsParecidas com as

Interfaces Java

Podem ter métodos default

Mixing

Page 16: Iniciando em Scala

Coleções

Inicia com um valor definido

Mapeia para outra listagem

Inicia com o primeiro elemento

Page 17: Iniciando em Scala

Nice Features

String InterpolationNullpointerException

nunca mais