apresentacao_scala

185 visualizações

Publicada em

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
185
No SlideShare
0
A partir de incorporações
0
Número de incorporações
6
Ações
Compartilhamentos
0
Downloads
1
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

apresentacao_scala

  1. 1. Conceitos básicos da linguagem Scala David Padilha Coelho de Lucca
  2. 2. Confidencial © UNEAR 2014
  3. 3. Confidencial © UNEAR 2014 O que é Scala? • Linguagem criada em 2001 por Martin Odersky na Escola Politécnica de Lousana; • Roda na JVM; • Compatível com as bibliotecas Java; • Tem sido adotado por grandes empresas.
  4. 4. Confidencial © UNEAR 2014 Por que utilizar Scala? • Linguagem híbrida; • Independente do SO; • Suporta as bibliotecas Java; • Código mais limpo e conciso do que em C# ou Java; • Open-Source; • Fácil de entender;
  5. 5. Confidencial © UNEAR 2014 Quem utiliza Scala atualmente?
  6. 6. Confidencial © UNEAR 2014
  7. 7. Confidencial © UNEAR 2014 Migração C# para Scala • Apenas alguns componentes; • Performance; • Escalabilidade; • Produtividade; • Redução de custos;
  8. 8. Confidencial © UNEAR 2014
  9. 9. Confidencial © UNEAR 2014 Diferenças nos modificadores C# Scala •Private por padrão. •Não são virtual por padrão - não podem ser ser substítuidos em classes derivadas. (override) •Public por padrão. •Virtual por padrão - qualquer método pode ser substituído em classes derivadas.
  10. 10. Confidencial © UNEAR 2014 Declaração de variáveis • <identificador> <var/val> <nomeAtributo:tipo> = <valor>
  11. 11. Confidencial © UNEAR 2014 Uso de valores imutáveis • Auxilia na implementação sem efeitos colaterais; • Evita problemas de concorrência;
  12. 12. Confidencial © UNEAR 2014 Declaração de funções • def <nomeFuncao> : <Tipo Retorno> = {} • def <nomeFuncao> = {}
  13. 13. Confidencial © UNEAR 2014 Models • Tuples – Typed • Case Classes – Tipo imutáveis
  14. 14. Confidencial © UNEAR 2014 Interfaces • Traits: – Especifíca a assinatura dos métodos; – Diferentemente do Java, Scala permite que os métodos sejam parcialmente implementados; – Não suportam construtores.
  15. 15. Confidencial © UNEAR 2014 Loops
  16. 16. Confidencial © UNEAR 2014 Pattern Matching • Similar ao Switch-Case e ao If/Else
  17. 17. Confidencial © UNEAR 2014 Tratamento de Exceções
  18. 18. Confidencial © UNEAR 2014 Play Framework • Framework desenvolvimento Web; • Possui suporte nativo para Json; • Fácil de escalar • Criação de novos projetos – activator new <nome_projeto>
  19. 19. Confidencial © UNEAR 2014 Build • SBT: – Criação dos binários do projeto; • Precisam da JVM para serem executados; – universal:PackageBin
  20. 20. Confidencial © UNEAR 2014 Frameworks • Persistência de dados: – Slick, Anorm, Scalike • Testes: – ScalaTest • MongoDB: – Casbah • … • Todo o ecossistema Java
  21. 21. Confidencial © UNEAR 2014 Play Framework • Framework desenvolvimento Web; • Possui suporte nativo para Json; • Fácil de escalar • Criação de novos projetos – activator new <nome_projeto>
  22. 22. Confidencial © UNEAR 2014 IDEs • IntelliJ – Necessário a instalação do plugin Scala • ScalaIDE – Baseada no Eclipse • Sublime, Netbeans, Notepad++...
  23. 23. Confidencial © UNEAR 2014 Links Úteis • http://www.scala-lang.org/ • http://www.tutorialspoint.com/scala/ • https://twitter.github.io/scala_school/ • https://www.playframework.com/
  24. 24. Confidencial © UNEAR 2014 Referências • http://www.scala-lang.org/ • http://www.scala-sbt.org • https://www.playframework.com/ • https://msdn.microsoft.com/en-s/library/ms123401.aspx
  25. 25. Conceitos básicos da linguagem Scala

×