Skip to content

Sumários

Luís Falcão edited this page Sep 25, 2019 · 14 revisions

Aula 01 - Apresentação

11-09-2019 (20:00/23h00 - G.0.08)

  • Apresentação
  • Âmbito da disciplina
  • Avaliação teórica e prática (3 entregas)

Aula 02 - Kotlin

13-09-2019 (18:30/20h00 - G.2.07)

  • Introdução ao ambiente de programação em Kotlin

  • Compilador Kotlin de linha de comando (kotlinc)

  • Modelo de execução sobre a JVM

  • Exercícios: Kotlin Koans

  • Caracterização geral da linguagem Kotlin:

    • Tipificação estática com inferência de tipos
    • Object-Oriented com suporte para os estilos imperativo e funcional
  • Funções: fun [<parametros de tipo>] <nome> ([parametros formais]) : [tipo retorno] {...}

  • Tipo Função -- notação especial correspondente à assinatura, i.e. (Tipo de Parametros) -> Tipo Retorno

  • Tipo Função e.g. (Int) -> String, () -> Unit, entre outros.

  • Typealias e.g. Predicate<T> = (T) -> Boolean

  • lambdas: { param1, param2, ... -> block } or { block }

  • it -- implicit lambda parameter

  • Function references - :: like Java

  • SAM (Single Abstract Method) compatível com lambda

  • read-only (e.g. listOf(), setOf) <vs> mutable collections (e.g. mutableListOf, mutableSetOf)


  • ? for Nullable -- val variable: Type? = value
  • ?. -- safe call -- access member only if not null. Otherwise returns null.

Recursos

Aula 03 - Implementação de um avaliador de expressões em Kotlin

18-09-2019 (20:00/23h00 - G.0.08)

  • Implementação um avaliador de expressões aritméticas em notação prefixa.
    • Não são contempladas prioridades entre operadores. A prioridade é dada pela ordem de processamento das operações.

    • As expressões podem ser constantes (e.g. 73, 9, etc) ou binárias (e.g. + 2 3, * 5 12, etc) ou compostas pelas expressões anteriores.

    • Exemplos:

      • A avaliação da expressão * + 3 4 + 7 2 tem o resultado 63 e é equivalente ao resultado de (3 + 4) * (7 + 2).
      • A expressão * + 3 4 + 7 2 5 tem o mesmo resultado que o anterior porque o 5 é ignorado, já que a última expressão binária fica completa em + 7 2.
      • No caso de + 3 4 * + 7 2 5 tem o resultado 7 porque a avaliação termina com apenas + 3 4.
      • A expressão * 3 4 + 4 dá 12. A avaliação termina com * 3 4. Se por outro lado tivéssemos. + * 3 4 4 daria 16 <=> (3 x 4) + 4.

Recursos


Clone this wiki locally