Linguagem Funcional Scala

  • 240 views
Uploaded on

 

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
240
On Slideshare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
7
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. * UFERSA – Universidade Federal Rural do Semi-Árido Davi Matos
  • 2. * • Baseadas em funções matemáticas; • Alto nível de abstração; • Não dependência de operações; • Dados imutáveis; • Abstração Lambda; • Redução do código-fonte; • Maior velocidade; • Facilita a implementação;
  • 3. * • Linguagens mais famosas: • • • • • Lisp Haskell OCaml Python Scala
  • 4. * • Criada em 2001 por Martin Odersky; • Algumas frustrações com Java; • Melhorar experiência Java; • Primeiro release público em 2003;
  • 5. * • Paradígma Orientado ao Objeto; • Paradígma Funcional; • Roda sobre a JVM; • Não é uma extensão de Java, pois possui sintaxe e construções próprias; • Integração com Java e .NET;
  • 6. *
  • 7. * • Declaração de tipo variáveis omitidas; • Ponto e virgula omitido; • Operadores são métodos;
  • 8. * • If’s ternários (numa linha só); • For pode retornar valores;
  • 9. * • Parâmetros de construtores implícitos;
  • 10. * • Principal interesse: Resolver o problema de multicores; • Imutabilidade;
  • 11. * • Função de Ordem Superior; • Funções podem ser passadas e retornadas
  • 12. * • Método Apply para Strings; • Pré-Condições;
  • 13. * • Traits • Funcionamento semelhante a Interface
  • 14. * • Pattern Match • Funcionamento semelhante ao switch
  • 15. *
  • 16. * • Utilizando bibliotecas Java: • • AWT; Swing; • Plotando elementos • • • setPaint(); fillRect(); fillOval();
  • 17. * • Movimentos • Bola: Começa no centro e velocidade crescente; • Barras: Via teclado, teclas UP/DOWN, W/S • Tratamentos de colisões: • • • Bola > barras; Bola > bordas; Bola saindo da tela