Curso Desenvolvedor Kotlin
4.4 (40 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
530 students enrolled
Wishlisted Wishlist

Please confirm that you want to add Curso Desenvolvedor Kotlin to your Wishlist.

Add to Wishlist

Curso Desenvolvedor Kotlin

Adquira sólidos conhecimentos em Kotlin, a linguagem que roda em diversas plataformas!
4.4 (40 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
530 students enrolled
Last updated 8/2017
Portuguese
Curiosity Sale
Current price: $10 Original price: $130 Discount: 92% off
30-Day Money-Back Guarantee
Includes:
  • 8 hours on-demand video
  • 6 Articles
  • 5 Supplemental Resources
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
What Will I Learn?
  • Aplicar todos os conceitos aprendidos na criação de aplicações para qualquer plataforma (JVM, Android, Web, Nativa)
  • Configuração e conceitos iniciais
  • Como executar kotlin
  • Como ele funciona na jvm
  • Declaração variáveis
  • Funções
  • Controle de fluxo
  • Orientação a Objetos
  • Classes e Objetos
  • Herança
  • Classes abstratas
  • Interfaces
  • Coleções
  • Criação de projeto Kotlin + Java
  • Criação de App Android usando Kotlin
  • Queremos também destacar que este curso está em constante atualização
View Curriculum
Requirements
  • Qualquer conhecimento em programação seria útil, mas não é obrigatório
Description

Bem vindo ao Curso Desenvolvedor Kotlin oferecido pela DevMasterTeam.

É bem provável que ficou sabendo sobre esta linguagem após várias mídias noticiarem que agora aplicativos Android também poderão ser escritos em Kotlin, muito bacana! Porém a linguagem nos permite criar aplicações para vários tipos de plataformas, então não faz sentido limitarmos nosso estudo da linguagem, em uma única plataforma!

Sendo assim, o melhor a se fazer é ter uma base sólida nos conceitos da linguagem para aí sim, aplicar o conhecimento em qualquer plataforma que estiver pensando em criar suas aplicações.

Como funciona este curso?

Sabemos que a melhor maneira de aprendermos a programar em alguma linguagem, não é ficar lendo conceitos durante dias sem nenhuma prática, por isto, este e todos os outros cursos oferecidos pela DMT, são totalmente práticos! Todos os conceitos da linguagem, são demonstrados com exemplos e o curso conta com repositórios contendo todos os códigos desenvolvidos!

Este curso foi pensado e estruturado da melhor maneira possível para que você adquira sólidos conhecimentos sobre a linguagem Kotlin. Seu objetivo é fazer com que você entenda como a linguagem funciona e como tudo que aprender durante o curso, pode ser utilizado em conjunto para a criação das aplicações. Com aulas bem definidas, claras e objetivas serão ensinados os principais conceitos da linguagem.

Mas eai, o que irei aprender com este curso?

Neste curso nós partimos desde o básico da linguagem, configuração e conceitos iniciais, como executar kotlin, como ele funciona na jvm, declaração variáveis, funções, controle de fluxo, e vamos nos aprofundando, Orientação a Objetos, Classes e Objetos, Herança, classes abstratas, interfaces, Coleções, ou seja, possui um conteúdo muito abrangente! Mas não paramos aqui:
Queremos também destacar que este curso está em constante atualização, a medida que saem novas atualizações da linguagem com novos recursos, ele é atualizado o mais rápido possível! Então a melhor maneira de ficar ciente do que aprenderá a partir dele, é dando uma olhada em sua grade curricular!


**** BÔNUSBônus Curso Desenvolvedor Kotlin: Teste seu conhecimento! ****

Este curso também acompanha um curso de testes "Bônus Curso Desenvolvedor Kotlin: Teste seu conhecimento!" que você poderá acessar gratuitamente! Logo após se inscrever neste curso, receberá um cupom para se inscrever no curso de testes gratuitamente.

Ele contém 85 questões para testar seus conhecimentos na linguagem Kotlin, criamos o curso com o objetivo de fazer com que você possa avaliar se está aprendendo de verdade, se precisa revisar algo, quais conceitos já foram fixados, etc. Inscreva-se nele também e faça os exercícios a medida que este curso for solicitando!


Eai, pronto para aprender Kotlin? Inscreva-se e comece a aprender agora mesmo!


DevMasterTeam

Who is the target audience?
  • Qualquer pessoa interessada em aprender Kotlin
Students Who Viewed This Course Also Viewed
Curriculum For This Course
96 Lectures
07:57:47
+
Introdução
4 Lectures 06:24

Kotlin: uma breve introdução.

A linguagem que vem ganhando força e se tornando cada vez mais popular e utilizada! Neste vídeo passamos uma visão geral sobre a linguagem, um breve histórico e algumas informações interessantes à respeito de Kotlin.

Preview 04:43

Caso queira nos acompanhar nas redes sociais, nossos links são estes:

Youtube: https://www.youtube.com/channel/UCkDJEKQpbxY9LFUwfEKNRbQ

Facebook: https://www.facebook.com/DevMasterTeamOficial/

Medium: https://medium.com/@devmasterteam

Site: http://www.devmasterteam.com/


Estamos sempre à disposição para dúvidas, sugestões, pedidos de aulas, posts, etc!

Como entrar em contato?
01:03

Encontrou algum erro no curso? Entre em contato conosco! 

Nós revisamos todo o conteúdo antes de publicar o curso, porém caso ainda assim encontre algo que não esteja correto, nos ajude a melhorarNossa missão é fornecer um conteúdo de alta qualidade e para isto, sua ajuda pode ser fundamental!

Email: devmasterteam@gmail.com

Encontrou algum erro? Nos ajude a melhorar!
00:34

Agora que já terminou esta seção, faça o teste prático 1 do curso de exercícios.

https://www.udemy.com/bonus-curso-desenvolvedor-kotlin/

Teste prático 1 - Kotlin: uma breve introdução
00:04
+
Instalação e configuração - Windows
2 Lectures 06:41

Nesta aula demonstramos como fazer a instalação e configuração do JDK (Java Development Kit) no Windows.

Configurando Java no Windows
03:02

Nesta aula demonstramos como fazer a instalação da IDE IntelliJ IDEA no Windows.

Instalando IntelliJ no Windows
03:39
+
Instalação e configurações - Mac
2 Lectures 06:06

Nesta aula demonstramos como fazer a instalação e configuração do JDK (Java Development Kit) no Mac.

Configurando Java no Mac
02:04

Nesta aula demonstramos como fazer a instalação da IDE IntelliJ IDEA no Mac.

Instalando IntelliJ no Mac
04:02
+
Instalação e configurações - Linux
2 Lectures 08:42

Nesta aula, fazemos a instalação do Java no Linux.

Comandos utilizados:

1. java -version
2. sudo add-apt-repository ppa:webupd8team/java
3. sudo apt-get update
4. sudo apt-get install oracle-java8-set-default

  • Java instalado!
Configurando Java no Linux
02:14

Nesta aula demonstramos como fazer a instalação da IDE IntelliJ IDEA no Linux.

Instalando IntelliJ no Linux
06:28
+
Atualizando plataforma
1 Lecture 00:57

Nesta aula demonstramos como atualizar o IntelliJ IDEA. A atualização serve para quaisquer sistemas operacionais no curso apresentados (Windows, Mac, Linux).

Atualizando IntelliJ
00:57
+
Preparando o Ambiente / Conceitos
4 Lectures 20:08

Primeiramente, antes de começarmos a instalar tudo que precisamos para rodar Kotlin na nossa máquina, vamos fazer aquele conhecido HelloWorld que implementamos quando estamos começando a aprender alguma linguagem. Para isto não será necessário instalar nada! Utilizaremos um ambiente online disponível a partir do próprio site oficial da linguagem Kotlin. O objetivo desta aula é executarmos nosso primeiro código Kotlin sem ligarmos muito sobre os detalhes dele, pois tudo será visto com mais detalhes ao decorrer do curso!

Site oficial: https://kotlinlang.org/

Try online: https://try.kotlinlang.org/

Bons estudos!

Rodando Kotlin online
06:28

JVM é a abreviação de Java Virtual Machine ou Máquina Virtual Java,  é um componente responsável por fazer com que não exista dependência de hardware e sistema operacional na plataforma Java. Em linguagens que são compiladas e não rodam na JVM, é necessário que a mesma seja compilada exatamente no hardware e SO que ela irá executar.

Já para linguagens que rodam na JVM isto não é necessário, ao compilarmos nosso programa, será convertido da nossa linguagem que programamos (no caso Kotlin) para bytecodes que é o que a JVM entende, e com isto, nosso código pode rodar em qualquer JVM independente do hardware e software.

Preview 03:16

Após instalado o JDK, vamos criar alguns exemplos e executá-los via linha de comando para que fique claro como funciona a compilação, quais arquivos são gerados e como executar o programa.

Vamos instalar o compilador da linguagem Kotlin, e para entendermos facilmente como o processo de compilação / execução funciona, vamos criar um novo arquivo chamado “teste.kt”, criar algumas funções e rodar via linha de comando!

Rodando Kotlin via linha de comando
10:21

Mais uma seção concluída, faça o teste prático 2 do curso de exercícios.

https://www.udemy.com/bonus-curso-desenvolvedor-kotlin/

Teste Prático 2 - Ambiente e Conceitos
00:03
+
Kotlin Básico
18 Lectures 01:32:54

Uma vez que a linguagem Kotlin faz a utilização da JVM, vamos utilizar convenções que são usadas no Java. As convenções são descritas no site oficial da linguagem Kotlinhttps://kotlinlang.org/docs/reference/coding-conventions.html.

Convenções de código
03:42

Nesta aula falamos um pouco sobre a função main, declaração de classes e funções e fazemos algumas comparações rápidas com o funcionamento de outras linguagens de programação.

Preview 03:20

Nesta aula vamos aprender sobre variáveis mutáveis e imutáveis, como declará-las e como usá-las.

Variáveis
03:55

Nesta aula vamos aprender sobre como usar formatação de String com Kotlin.

Formatação de strings
05:22

Nesta aula vamos aprender os diferentes tipos de criar funções, sejam elas com parâmetros ou sem, com tipo de retorno ou sem.

Criação de funções
04:28

Nesta aula vamos aprender a como reduzir o tamanho de uma função em uma única linha. Funções que possuem corpo com instruções simples podem ser escritas sem as chaves que delimitam seu corpo.

Preview 03:51

Nesta aula vamos aprender um pouco mais sobre pacotes, divisão de classes em pacotes e como referenciá-los para uso.

Pacotes
04:21

Nesta aula vamos aprender sobre controle de fluxo usando if, else e when. Vamos também ver características de cada um deles.

Controle de fluxo
08:21

Nesta aula vamos aprender sobre controle de fluxo usando repetições for, while e do while. Vamos também ver características de cada um deles.

Controle de fluxo - Loop
05:30

Nesta aula vamos aprender como fazer a conversão de tipos quais as facilidades disponibilizadas pelo Kotlin.

Conversão de valores
04:14

Agora que já vimos vários conceitos da linguagem Kotlin, vamos fazer um exercício bem simples: criar uma função para inverter uma String.
Para isto, vamos criar usando nossa IDE uma classe de testes, será a partir dela que chamaremos a função de inversão e verificaremos se ela está funcionando corretamente.

Testes unitários são muito úteis em qualquer projeto em que estamos trabalhando, a partir deles, conseguimos testar pontos específicos da aplicação de forma isolada. Imagine como ficaria fácil de testar um sistema inteiro se cada uma de nossas funções tivessem seus próprios testes? Bastaria rodarmos todos os testes e em pouquíssimo tempo teríamos uma visão se nosso sistema possui alguma funcionalidade quebrada!  
Então a medida que formos realizando mais exercícios ao decorrer do curso, iremos praticar também a criação de testes unitários!


Preview 09:02

Nesta aula demonstramos como resolver os exercícios de inversão de String da aula anterior. Novamente, utilizamos JUnit para realizar os testes e validar se nossa implementação está correta.

Resolução - Inversão de strings
06:24

Nesta aula vamos aprender como tratar exceções e como executar código quando alguma exceção ocorre.

Exceções
04:30

Novamente utilizando JUnit para praticarmos Kotlin, vamos fazer um novo exercício, desta vez o objetivo é criar duas funções que recebem uma palavra ou  frase e contar quantas vogais e consoantes ela possui!
Neste exercício, você praticará criação de funções, testes unitários, loops, controle de fluxo, tudo que já foi visto nas aulas anteriores!

Exercício - Contagem de vogais e consoantes
07:44

Nesta aula implementamos as duas funções do exercício anterior, uma para contar a quantidade de vogais e outra de consoantes.

Resolução - Contagem de vogais e consoantes
07:29

Nesta aula vamos ver como a linguagem Kotlin nos auxilia a evitar erros de referências nulas que acontecem com muita frequência em qualquer linguagem.

Vamos ver como as funcionalidades e restrições disponíveis nos impedem de simplesmente declarar uma variável como nula sem antes tomar as devidas precauções.

Null Safe
06:53

Para descobrirmos erros e verificar o que acontece no nosso código, muitas vezes precisamos parar a execução e analisar retornos e valores. Com a ferramenta de debug podemos pausar nosso código durante a execução e verificar se tudo está ocorrendo como esperado.

Nesta aula vamos aprender como usar essa ferramenta tão poderosa!

Utilizando o debug
03:45

Hora de testar se aprendeu, faça o teste prático 3 do curso de exercícios.

https://www.udemy.com/bonus-curso-desenvolvedor-kotlin/

Teste Prático 3 - Kotlin Básico
00:03
+
Mais sobre funções
9 Lectures 38:17

Nesta aula vamos nos aprofundar um pouco mais sobre como usar parâmetros nas funções. Parâmetros nomeados, valores padrão e muito mais!

Mais sobre parâmetros
04:03

Nesta aula vamos aprender a como estender classes já existentes e adicionar nossas próprias funções!

Adicionando funções a uma classe existente
06:16

Nesta aula vamos vamos ver o enunciado de um exercício que deve ser feito estendendo o funcionamento da classe Float!

Exercício - Estender funcionamento classe Float
04:36

Resolução - Estender funcionamento classe Float
06:26

Nesta aula vamos ver uma funcionalidade muito legal de como fazer uma função receber um número ilimitado de parâmetros usando vararg e também como fazer com que ela aceite qualquer tipo de parâmetro.

N parâmetros
04:30

Exercício - Soma de N parâmetros
03:31

Resolução - Soma de N parâmetros
04:56

Nesta aula vamos ver algumas funções disponíveis para Strings que foram feitas usando a extensão da classe String!

Mais sobre Strings
03:56

Eai, sabendo tudo de funções? Faça o teste prático 4 do curso de exercícios.

https://www.udemy.com/bonus-curso-desenvolvedor-kotlin/

Teste Prático 4 - Funções
00:03
+
Orientação a Objetos
14 Lectures 01:24:24

Os objetos são a chave para entendermos orientação a objetos! Eles estão por toda a parte, agora mesmo nesta aula, podemos citar vários objetos reais que estão próximos de nós, nosso teclado, mouse, monitor, e vários outros, bicicleta, carro, bola, etc. Podemos até mesmo representar seres vivos por meio de objetos: cachorro, gato, pessoa, etc.

Estes objetos do mundo real, compartilham duas características comuns: todos eles possuem atributos e comportamentos! Um mouse por exemplo, tem atributos: sua cor, tamanho, sem tem fio, marca, etc (estas, são suas características), e também possui comportamentos: ligar, movimentar, clicar, carregar, etc (são as ações que ele consegue executar). Identificar atributos e comportamentos de objetos reais, é um ótimo caminho para começarmos a pensar em orientação a  objetos no mundo de softwares.

Os objetos de software, são muito similares aos objetos do mundo real, eles também possuem atributos e comportamentos! Um objeto de software guarda seus atributos em variáveis e seu comportamento é representado por métodos ou funções.

Preview 02:54

Talvez conceitualmente ainda esteja um pouco difícil modelar um objeto de software a partir de um objeto do mundo real, mas à medida que formos praticando, isto se tornará cada vez mais fácil!

Vamos modelar um objeto para praticarmos! Utilizaremos um carro como sendo nosso objeto.

Quais atributos podemos imaginar para este nosso objeto carro? E comportamentos?

Confira na aula!

Orientação a Objetos - Parte 2
04:25

Agora que já vimos a teoria sobre orientação a objetos, vamos partir para a prática e vermos como isto funciona na programação usando Kotlin! Tudo que iremos criar logo mais, está baseado nos conceitos já vimos nas aulas anteriores.

No mundo real, existem vários objetos que podemos agrupar, pois são do mesmo tipo. Por exemplo, existem milhares de carros, todos eles são carros mas podem possuir diferenças.
Cada um deles, foi feito a partir de um mesmo molde, a partir da mesma receita. Na programação orientada a objetos, podemos dizer que um objeto é uma instância de uma classe, o objeto é gerado a partir da classe, e podemos ter muitos objetos criados a partir de uma mesma classe. Portanto, a classe é o molde, a receita a partir de onde são gerados os objetos.

Classes
24:28

Nesta aula vamos entender a diferença entre classes e data classes. Geralmente, muitas classes são criadas sem funcionalidades, somente para armazenar dados. Em Kotlin, isso é chamado de data class e a maneira de declará-las é diferente de uma classe padrão. Além disso, data classes possuem funcionalidades que facilitam seu uso em diversos cenários!

Class vs Data Class
05:34

As vezes, uma classe não pode ser instanciada e o acesso aos seus métodos deve ser feita de outra maneira. Nesta aula vamos ver como conseguimos limitar o acesso a essa classe impedindo que ela seja instanciada.

Vamos ver também como criar vários construtores para a mesma classe usando diferentes parâmetros.

Além disso, vamos ver exemplos dessas duas funcionalidades!

Construtor privado & secundário
04:30

Nesta aula vamos aprender sobre herança e quais seus conceitos. A ideia de herança é facilitar a programação. Uma classe A deve herdar de uma classe B quando podemos dizer que A é um B.

A Herança possibilita que as classes compartilhem seus atributos, métodos e outros membros da classe entre si. Para a ligação entre as classes, a herança adota um relacionamento esquematizado hierarquicamente.

Herança
06:16

Nesta aula aprenderemos a diferença entre sobrescrita e sobrecarga e como usar cada uma delas!

Com a sobrescrita, conseguimos especializar os métodos herdados das superclasses, alterando o seu comportamento nas subclasses por um mais específico.

Sobrecarga utiliza o nome do método já definido na classe ou superclasse com a diferença que a quantidade de parâmetros ou o tipo desses devem ser diferentes.

Sobrescrita & Sobrecarga (Override & Overload)
04:12

Classes abstratas definem um comportamento que as classes filhas herdarão. Para ter um objeto da classe abstrata é necessário criar uma classe especializada e então instanciar essa nova classe, uma vez que classes abstratas não podem ser instanciadas.

Métodos da classe abstrata podem ou não ser abstratos! Caso os métodos sejam abstratos, as classes filhas tem que obrigatoriamente sobrescrever o método!

Classes abstratas
03:21

Interfaces definem um contrato que classes que a implementem devem seguir. A diferença com classes abstratas é que não podem conter implementação em nenhum método.

Interessante é que uma classe abstrata pode implementar uma interface e não teria obrigação de implementar os métodos que a interface define. Somente quem herdar da classe abstrata teria que o fazer.

Interfaces
06:46

Nesta aula vamos aprender como alterar a visibilidade de atributos e métodos quando construímos nossas classes. Muitas vezes não queremos expor valores fora de nossas classes e os modificares nos ajudam a atingir esse objetivo! 

Modificadores de visibilidade
05:21

Muitas vezes queremos definir constantes no nosso programa para ser usado em diversas partes do código. Dessa maneira, conseguiríamos centralizar esses valores em um único local

Como podemos fazer isso? Nesta aula, vamos ver recursos do Kotlin nos possibilitam fazer isso e muito mais! 

Constantes & Variáveis Estáticas
08:26

Nesta aula vamos ver como o recurso with nos permite escrever menos código de maneira mais fácil!

With
02:00

Nesta aulas vamos aprender como criar valores enumerados que nos ajudam a escrever código mais conciso. Vamos ver também os diferentes recursos que as classes enum nos possibilitam!

Classes Enum
06:05

Já chegou até aqui, show, está indo bem! Hora de testar seus conhecimentos obtidos nesta seção! Faça o teste prático 5 do curso de exercícios.

https://www.udemy.com/bonus-curso-desenvolvedor-kotlin/

Teste Prático 5 - Orientação a Objetos
00:06
+
Coleções
8 Lectures 34:44

Já vimos sobre String, Double, Boolean, Float, Int e muito mais!

Vimos alguns exemplos com coleções de dados, mas ainda não vimos como manipulá-los. Nesta seção vamos nos aprofundar no conceito de coleções e como podem nos auxiliar. Começamos primeiramente por uma breve descrição e explicações sobre os conceitos iniciais!

Preview 09:21

Nesta aula criamos uma lista de comidas e ingredientes usando data class e listOf(). Vamos usar essa coleção para resolver algumas perguntas e através dessas perguntas vamos entender como as funcionalidades de coleções podem nos ajudar a obter respostas que seriam complicadas sem as mesmas! 

Vamos aprender sobre count(), any(), first(), last(), sum() e take().

Usando coleções - Parte 1
09:51

Nesta aula, vamos usar a mesma lista da aula passada, porém as perguntas e funcionalidades serão mais complexas e muito mais divertidas

Vamos aprender sobre filter(), map(), forEach() e como uso-las juntas para manipulação dos dados!

Usando coleções - Parte 2
07:22

Nesta aula vemos como resolver o desafio proposto que deixamos na aula passada. Vamos usar uma função dentro das coleções para nos auxiliar!

Resolução - Desafio
02:50

Nesta aula propomos novamente o exercício para contar vogais, mas dessa vez vamos usar funcionalidades mais sofisticadas para resolver e vamos entender a diferença e potencial das coleções!

Exercício - Contar vogais
01:48

Nesta aula fazemos a resolução do exercício com o auxílio das coleções e fazemos também a implementação do teste unitário para garantir que nosso código está protegido contra falhas!

Resolução - Contar vogais
02:57

Todo o código fonte desenvolvido durante o curso está disponível no GitHub para download. Ele foi todo comentado e formatado para melhor entendimento para que possa ser estudado e ajudar ainda mais!

Código fonte
00:31

Aeee estamos chegando ao fim deste curso! Faça o último teste prático do curso de exercícios (teste 6).

https://www.udemy.com/bonus-curso-desenvolvedor-kotlin/

Teste Prático 6 - Coleções
00:04
5 More Sections
About the Instructor
Gabriel Ferrari
4.6 Average rating
594 Reviews
6,038 Students
5 Courses
Engenheiro de Software

Olá! Estou envolvido com tecnologia e desenvolvimento de software há cerca de 8 anos.

Sou formado pela UNESP em Sistemas de Informação e possuo especialização em Engenharia de Software pela Unicamp.

Curto absurdamente programação. Aprender novas tecnologias pode ser altamente desafiador, mas uma vez que as entende e sabe como funcionam, se tornam excepcionais!

Gosto e quero compartilhar conhecimento da maneira mais clara e eficiente possível. E assim espero fazer nos cursos oferecidos!

Vamos nessa e nos vemos nas aulas!

Adriano Sacardo
4.6 Average rating
594 Reviews
6,038 Students
5 Courses
Analista de Sistemas

Trabalho com desenvolvimento desde os 17 anos (atualmente tenho 28), cursei vários cursos livres voltados para programação (acredito muito que o ensino que vale é o aquele que você aprende de verdade e não aquele justificado com um papel, por isso sou um grande adepto de cursos online), mas pelo modo tradicional de ensino cursei Ciência da Computação na UNIP e Gestão de Projetos em TI na FATEC ambas em São Paulo. Atualmente trabalho com desenvolvimento na Unicamp. Gosto muito de eventos ligados a empreendedorismo e programação.

Dou valor aqueles que buscam sempre melhorar, que tem foco e correm atrás de seus objetivos.