ScalaPara Jovens
Scala
Qual minha principal motivação em aprender Scala?
Quem está usando?
Scala vs Java IDE cuspindo código
Scala S2
Scala vs Java
Roda na JVM
Integra 100% com libs Java
Linguagem Hibrida: OO e Funcional
Tipagem Estática
Tudo é Objeto
Paradigmas
OO Funcional
Composição de Objetos Composição de Funções
Mutabilidade Imutável
Algoritmos Iterativos Algoritmos Recursivos
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
EstruturaParâmetros Retorno
Dispensável se retorna Unit
Dispensa return
Obrigatório p/ +1 linha
FunçõesValor
Padrão
Recebo 2 Parâmetros
Retorno
Função padrão utilizada
FunçõesPassando função
por parâmetro Currying
Qualquer coisa
Função Anônima
Classes e ObjetosConstrutor, Propriedades
e tudo final :)
Chamando as propriedadesCompanion
ObjectMinha classe estática
Método Default
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
Pattern Matching
parecido com switch do java
decompõe o objeto
Qualquer coisa
TuplasVocê não precisa criar
classes
O acesso as variáveis
TraitsParecidas com as
Interfaces Java
Podem ter métodos default
Mixing
Coleções
Inicia com um valor definido
Mapeia para outra listagem
Inicia com o primeiro elemento
Nice Features
String InterpolationNullpointerException
nunca mais
Top Related