Use o código e tenha 10% de desconto!

Scala Como escalar sua produtividade

Paulo Siqueira

Conteúdo

Scala é uma linguagem que une Orientação a Objetos e Programação Funcional, de sintaxe enxuta e estaticamente tipada, projetada para expressar padrões de programação de uma forma concisa e elegante. Para desenvolvedores com conhecimento em linguagens orientadas a objetos, como Java ou C#, Scala é um passo natural, oferecendo o lado funcional como um desafio em termos de aprendizagem, mas com muitos recursos já familiares. Seu grande trunfo é trazer tudo isso para a Java Virtual Machine, o ambiente de execução utilizado pela linguagem Java, pois Java e Scala se integram de forma muito transparente.

Neste livro, Paulo JCranky Siqueira apresenta os principais recursos e características da linguagem, bem como conceitos indispensáveis para seu uso efetivo, tratando de elementos da API que todo programador Scala precisa conhecer, como classes e hierarquia das classes fundamentais da linguagem, API de coleções e parseamento de arquivos XML.

 

Sumário

  • 1 Introdução a Scala
  • 1.1 O mínimo que você precisa saber sobre Scala
  • 1.2 Instalação
  • 1.3 Nosso primeiro programa
  • 1.4 Scaladoc
  • 1.5 REPL
  • 1.6 Inferência de tipos
  • 1.7 Um pouco de história
  • 2 Acessando fotos do Flickr
  • 2.1 Conhecendo nosso problema
  • 2.2 Modelos e funções
  • 2.3 Como seria em Java?
  • 2.4 Como seria no Java 8?
  • 3 Classes e objetos
  • 3.1 Nossa primeira classe
  • 3.2 val vs. var
  • 3.3 Métodos e funções
  • 3.4 Construtores
  • 3.5 Parâmetros default e nomeados
  • 3.6 objects
  • 3.7 Classes abstratas
  • 4 Case classes e pattern matching
  • 4.1 Case classes
  • 4.2 Case objects
  • 4.3 Pattern matching com case classes e object
  • 4.4 Método unapply e pattern matching com qualquer classe
  • 4.5 Método de fábrica apply
  • 5 Hierarquia das classes básicas da linguagem
  • 5.1 Option, Some e None
  • 5.2 Any-o que?
  • 5.3 Null, Nothing, Unit e ???
  • 5.4 Exceptions
  • 5.5 Value Classes
  • 6 Coleções
  • 6.1 Elemento básico: TraversableLike
  • 6.2 Sets
  • 6.3 Lists
  • 6.4 Tuplas
  • 6.5 Maps
  • 6.6 Arrays
  • 6.7 Coleções imutáveis versus coleções mutáveis
  • 7 Programação Funcional
  • 7.1 O que é Programação Funcional?
  • 7.2 Recebendo funções com dois ou mais parâmetros
  • 7.3 Encontrando elementos: filter e find
  • 7.4 Transformando elementos: map
  • 7.5 Mapeando resultados com coleções aninhadas
  • 7.6 Agregando resultados: fold e reduce
  • 8 Tipagem avançada
  • 8.1 Tipos parametrizados
  • 8.2 Limites de tipos: Type Bounds
  • 8.3 Tipos invariantes, covariantes e contravariantes
  • 9 Um pouco de açúcar: for comprehensions
  • 9.1 Percorrendo múltiplas coleções de forma legível
  • 9.2 Mantendo a imutabilidade
  • 9.3 O segredo do for: Monads
  • 10 Classes abstratas e traits
  • 10.1 Classes abstratas
  • 10.2 Traits
  • 10.3 Classes seladas
  • 10.4 Herança múltipla e o problema do diamante
  • 11 Parseando XML
  • 11.1 O básico de XML em Scala
  • 11.2 Parseando a resposta XML do Flickr
  • 12 Implicits
  • 12.1 Adicionando funcionalidade a tipos existentes: conversões implícitas
  • 12.2 Conversões implícitas ambíguas
  • 12.3 Passando parâmetros sem passar nada: parâmetros implícitos
  • 12.4 Como o sum soma valores "somáveis"?
  • 13 Colocando tudo junto
  • 13.1 Bibliotecas e ferramentas
  • 13.2 Componentes da API
  • 13.3 Considerações finais
  • 14 O fim, e o começo

veja mais detalhes

Autor

Paulo JCranky Siqueira

Paulo "JCranky" Siqueira é desenvolvedor de software especializado em Scala. Membro fundador dos Scaladores, o grupo de usuários Scala de SP, trabalha atualmente como Engenheiro de Software na Zalando SE, em Berlim.

Dados do produto

Número de páginas:
205
ISBN:
978-85-5519-234-0

Compartilhe!

Compartilhe no Facebook Compartilhe no Twitter