Sobre o Curso

Seja muito bem vindo ao curso de Kotlin Essencial: Aprenda a Nova Linguagem do Android!

Em 2017 Google I/O anunciou Kotlin como a nova linguagem oficial do Android e isso trouxe uma grande visibilidade e relevância para o Kotlin, mas o uso em Aplicações Android é só parte do escopo atendido pelo Kotlin, na verdade qualquer aplicação desenvolvida em Java pode se beneficiar da modernidade e dos novos recursos, pois o Kotlin funciona em máquinas virtuais Java a partir da versão 6 e consegue trabalhar de forma integrada com qualquer aplicação em Java.

O Java é uma das linguagens mais utilizadas do mundo e é fortemente adotada no mundo corporativo, entretanto nos últimos anos apresentou uma evolução muito lenta. Nesse cenário a adoção do Kotlin se torna ainda mais importante, porque vários recursos que o Java não adotou, estão disponíveis no Kotlin, tornando-a uma linguagem mais moderna e com a segurança de que o código é totalmente compatível com JVM 6 ou superiores.

Além dos vídeos, será disponibilizado uma apostila com todos os exercícios e o repositório com todo o código para te auxiliar nos estudos.

Sobre o Autor

Leonardo Leitão é graduado em Engenharia Elétrica pela Universidade Federal do Ceará e Mestre em Informática Aplicada pela Universidade de Fortaleza, na qual trabalhou com Integração de Redes de Sensores sem Fio e Computação em Nuvem. Há doze anos atua na área como desenvolvedor de softwares e atualmente trabalha na DATAPREV como arquiteto, desenvolvendo sistemas para o INSS. Professor de desenvolvimento de software há quase dez anos, iniciou recentemente um projeto de ensinar programação à distância.

Conteúdo Programático

Capítulo 1. Introdução

Visão Geral do Curso     08:52

Assine o nosso canal     03:08

Apostila & Repositório 03:35

Java vs Kotlin     Visualizar Logado 02:32

Capítulo 2. Configuração do Ambiente

Instalação Java JDK e IntelliJ 01:04

Capítulo 3. Conceitos Básicos

Criando Projeto Kotlin     Visualizar Logado 02:20

Primeiro Programa em Kotlin     Visualizar Logado 11:44

Comentários     Visualizar Logado 11:52

Variáveis     Visualizar Logado 03:58

Cuidado com Inferência #01     Visualizar Logado 02:14

Cuidado com Inferência #02     Visualizar Logado 02:40

Usando Constantes     Visualizar Logado 01:52

Usando Constantes Java     Visualizar Logado 03:09

Tipos Básicos em Kotlin     Visualizar Logado 12:04

Exemplo de Função #01 07:05

Exemplo de Função #02 02:25

Template String #01 03:59

Template String #02 05:47

Notação Ponto 05:00

Operador de Chamada Segura     Visualizar Logado 03:45

Operador Elvis 03:33

Forçando NullPointerException 03:04

Explorando os Imports 10:28

Dois Ajustes na IDE 02:31

Estrutura de Controle: If 04:17

Estrutura de Controle: If/Else #01 02:58

Estrutura de Controle: If/Else #02 05:47

Estrutura de Controle: If/Else If 07:11

Refatorando para When 05:10

Estrutura de Controle: While #01 06:04

Estrutura de Controle: While #02 02:13

Estrutura de Controle: For #01 01:53

Estrutura de Controle: For #02 01:56

Estrutura de Controle: For #03 02:05

Estrutura de Controle: For #04 02:41

Estrutura de Controle: Do While 04:16

Usando o Break #01 05:39

Usando o Break #02 04:04

Usando o Continue 03:16

Operadores: Visão Geral 02:03

Operadores: Atribuição 03:33

Operadores: Destructuring 08:56

Operadores: Aritméticos 02:12

Operadores: Relacionais 08:42

Operadores: Lógicos 09:29

Operadores: Unários 06:35

Operadores: Simulando Ternário #01 03:13

Operadores: Simulando Ternário #02 03:41

Conversão Número/String 05:50

Checagem de Tipos 04:21

Smart Cast 07:07

Operador Cast 07:55

Capítulo 4. Funções

Funções Top Level 04:49

Argumentos Nomeados 04:47

Parâmetros são Imutáveis 02:43

Parâmetros Padrões 03:15

Simulando Múltiplos Retornos 05:34

Adicionando Método em Classe Existente 08:45

Java: Chamando Função Kotlin 03:42

Argumentos Variáveis 05:07

Função Infix 04:27

Funções Retornam Unit 07:18

Passando Função como Parâmetro #01 08:30

Passando Função como Parâmetro #02 11:46

Função Inline #01 09:12

Função Inline #02 08:00

Capítulo 5. Classes e Objetos

Classe e Objetos: Visão Geral 11:09

Classe: Exemplo Básico #01 05:52

Classe: Exemplo Básico #02 08:16

Classe: Membros #01 06:24

Classe: Membros #02 12:28

Tipos de Variáveis em Kotlin 13:05

Class vs Data Class 10:55

Método Construtor #01 07:35

Método Construtor #02 03:28

Bloco Init 05:24

Getters & Setters 10:16

Getters Calculados 06:48

Membros de Classe vs Instância 13:20

Passagem por Referência 08:56

Enum Class #01 03:40

Enum Class #02 03:56

Capítulo 6. Lambdas

Meu Lambda #01 05:11

Meu Lambda #02 11:00

Usando sortedBy 03:46

Usando filter e sortedBy 06:02

Usando map #01 04:19

Usando map #02 08:05

Usando takeIf 04:05

Usando apply 06:38

Usando let 04:43

Usando run 03:12

Capítulo 7. Coleções

Coleções: Visão Geral 05:31

Usando o Array 05:28

Usando a função arrayListOf 02:52

Usando o intArrayList 02:57

ArrayList Heterogêneos 02:35

União de ArrayList 03:45

ArrayList de Objetos 07:13

Usando For em Coleções #01 03:56

Usando For em Coleções #02 01:45

Matriz: Array de Arrays 14:34

Usando Set #01 15:15

Usando Set #02 06:32

Usando Map #01 12:06

Usando Map #02 01:40

Hashcode & Equals 13:14

Capítulo 8. Orientação a Objetos

Pilares da OO: Visão Geral 20:09

Pilares da OO: Encapsulamento #01 16:23

Pilares da OO: Encapsulamento #02 04:42

Pilares da OO: Herança 18:14

Usando this() & super() 06:46

Exemplo SEM Polimorfismo 12:23

Exemplo COM Polimorfismo 05:24

Capítulo 9. Avançado

Exemplo de Recursividade 08:26

Usando Generics 07:57

Sobrecarga de Operadores 04:42

Usando Anotação & Reflexão 16:25

Capítulo 10. Projeto Campo Minado

Visão Geral do Projeto 11:37

Mostrando o Jogo 02:20

Modelo: Classe Campo 18:46

Modelo: Classe Tabuleiro #01 15:02

Modelo: Classe Tabuleiro #02 06:18

Visão: Classe MouseCliqueListener 06:18

Visão: Classe BotaoCampo 15:11

Visão: Classe PainelTabuleiro 03:22

Visão: Classe TelaPrincipal 09:26

Avaliações de nossos alunos

5.0

Avaliação média

  • (100%)
  • (0%)
  • (0%)
  • (0%)
  • (0%)

Comentários

  • avatar

    Rafael

    Didática, conteúdo e aprofundamento excelentes!

  • avatar

    Francinelson da Silva Garcia

    Excelente didática. Ótimo curso.

  • avatar

    Rejane Myszka