POR QUE SCALA?
LINGUAGEM DE PROGRAMAÇÃO
MOTIVAÇÃO
O que é Scala
Scala é uma linguagem de
programação para a JVM,
Scala facilita definição de
tipos(*) por inferência,
Scala ...
Why Scala?
De forma resumida:
A demanda por sistemas distribuídos tem
crescido rapidamente. E a linguagem Scala cabe
muito...
A linguagem de programação Scala tem sido
usada em produção em serviços com alta
demanda:
LinkedIn
Twitter
FourSquare
The ...
“Você não vai compreender todo
o poder de seu sistema de tipos
até o final do seu primeiro dia.
Você não vai entender o ‘z...
“Este deveria ser o seu primeiro
livro Scala, não o último. Ele
mostra o suficiente para torná-lo
familiar e confortável c...
“Atualmente, a melhor
introdução compacta para
Scala”
- Martin Odersky.
Minhas razões
Scala é uma linguagem sucinta. Você vai escrever
a metade do código que você escreve hoje.
Scala é uma lingu...
QUANDO COMEÇAR?
SCALA DAYS
BERLIN, 2014
SCALA DAYS
AMSTERDAM, 2015
Veremos várias
perspectivas
Programadores iniciantes,
Programadores
experimentados,
Programadores no limite da
utilização ...
Valores
Tipos
Variáveis
Como em um valor, uma variável contém um
determinado tipo de informação, mas neste caso
você pode alterar os dad...
Expressões e condições
O menor fragmento de código útil na maioria das
linguagens de programação ou é uma declaração ou
um...
Expressões
O último valor de um bloco (entre {}) é o valor de
retorno.
REPL
Read-eval-print-loop:
Classes e objetos
Linguagem orientada a objetos: substantivos,
Linguagem funcional: verbos.
Objetos: contém campos (vals, ...
Projetos
Métodos
Construtores auxiliares
Case classes
String interpolation
Funções anônimas
Mixins
Companion objects
Singletons, substituem os tipos estáticos
Partial functions
Outras características
Tratamento diferenciado a imports e packages
Particularidades de class arguments
Error handling, Op...
Build tool
Cassandra, Spark…
Scala x Swift
Discussão
https://gitter.im/orgs/scala/rooms
http://scalacamp.com.br/
http://www.meetup.com/pt/Curitiba-ScalaCamp-
Meetup/...
Leitura adicional
http://www.infoq.com/articles/twitter-java-use
http://www.infoq.com/presentations/event-
microservice-sc...
“Perguntas?”
–Maurício Fernandes de Castro <mauricio@iservport.com>
Próximos SlideShares
Carregando em…5
×

Scala why

202 visualizações

Publicada em

Apresentado durante o VII FTSL em Curitiba.

Publicada em: Software
0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
202
No SlideShare
0
A partir de incorporações
0
Número de incorporações
19
Ações
Compartilhamentos
0
Downloads
1
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Scala why

  1. 1. POR QUE SCALA? LINGUAGEM DE PROGRAMAÇÃO
  2. 2. MOTIVAÇÃO
  3. 3. O que é Scala Scala é uma linguagem de programação para a JVM, Scala facilita definição de tipos(*) por inferência, Scala incorpora tanto o paradigma de orientação a objeto quanto o funcional, Introduzida em 2003, por Martin Odersky, EPFL, Lausanne.
  4. 4. Why Scala? De forma resumida: A demanda por sistemas distribuídos tem crescido rapidamente. E a linguagem Scala cabe muito bem neste novo contexto. Outras repostas ao longo desta apresentação.
  5. 5. A linguagem de programação Scala tem sido usada em produção em serviços com alta demanda: LinkedIn Twitter FourSquare The Guardian
  6. 6. “Você não vai compreender todo o poder de seu sistema de tipos até o final do seu primeiro dia. Você não vai entender o ‘zen’ de objetos sendo funções e funções que são objetos em sua primeira semana. Cada recurso da linguagem é outra lâmpada a espera para se iluminar sobre sua cabeça.” - Alex Payne, líder de plataforma no Twitter à época da introdução do Scala.
  7. 7. “Este deveria ser o seu primeiro livro Scala, não o último. Ele mostra o suficiente para torná-lo familiar e confortável com a linguagem - competente , mas não especialista. Você vai escrever código Scala útil, mas você não vai necessariamente ser capaz de ler todo o código Scala você encontrar .” - Bruce Eckel e Diane Marsh.
  8. 8. “Atualmente, a melhor introdução compacta para Scala” - Martin Odersky.
  9. 9. Minhas razões Scala é uma linguagem sucinta. Você vai escrever a metade do código que você escreve hoje. Scala é uma linguagem capaz. Você não vai sentir falta de recursos ao trabalhar com ela. Scala é uma linguagem segura. Você encontra verificação estática de tipos e outros mecanismos para reduzir erros de programação. Scala é uma linguagem moderna.
  10. 10. QUANDO COMEÇAR?
  11. 11. SCALA DAYS BERLIN, 2014
  12. 12. SCALA DAYS AMSTERDAM, 2015
  13. 13. Veremos várias perspectivas Programadores iniciantes, Programadores experimentados, Programadores no limite da utilização de suas ferramentas atuais.
  14. 14. Valores
  15. 15. Tipos
  16. 16. Variáveis Como em um valor, uma variável contém um determinado tipo de informação, mas neste caso você pode alterar os dados armazenados.
  17. 17. Expressões e condições O menor fragmento de código útil na maioria das linguagens de programação ou é uma declaração ou uma expressão. Estes têm uma diferença simples: - Uma declaração muda estado, - Uma expressão exprime. Isto é, uma expressão produz um resultado, enquanto uma declaração não. Quase tudo em Scala é uma expressão.
  18. 18. Expressões O último valor de um bloco (entre {}) é o valor de retorno.
  19. 19. REPL Read-eval-print-loop:
  20. 20. Classes e objetos Linguagem orientada a objetos: substantivos, Linguagem funcional: verbos. Objetos: contém campos (vals, vars) e métodos.
  21. 21. Projetos
  22. 22. Métodos
  23. 23. Construtores auxiliares
  24. 24. Case classes
  25. 25. String interpolation
  26. 26. Funções anônimas
  27. 27. Mixins
  28. 28. Companion objects Singletons, substituem os tipos estáticos
  29. 29. Partial functions
  30. 30. Outras características Tratamento diferenciado a imports e packages Particularidades de class arguments Error handling, Options
  31. 31. Build tool
  32. 32. Cassandra, Spark…
  33. 33. Scala x Swift
  34. 34. Discussão https://gitter.im/orgs/scala/rooms http://scalacamp.com.br/ http://www.meetup.com/pt/Curitiba-ScalaCamp- Meetup/ Sua comunidade?
  35. 35. Leitura adicional http://www.infoq.com/articles/twitter-java-use http://www.infoq.com/presentations/event- microservice-scala-spring-boot http://www.reactivemanifesto.org/
  36. 36. “Perguntas?” –Maurício Fernandes de Castro <mauricio@iservport.com>

×