Enviar um café pro programador

Pode me ajudar a transformar cafeína em código?

Curso de Java completo, online e gratuito!

Está gostando de C ? Interessante não é?

Porém, existem outras linguagens de programação que também são extremamente interessantes e importantes, como a linguagem Java, cuja maior característica é ser multiplataforma, ou seja, os programas feitos em Java rodam no Windows, Linux, Mac e até em mobile.

Afinal, quem nunca baixou aquilo jogo .jar para o celular?

Pois bem, o site Programação Progressiva, que é o site base do C Progressivo, também oferta de modo totalmente gratuito e online um curso de Java, o Java Progressivo: www.javaprogressivo.net


Para saber melhor o que é, para que serve, onde é usado e outras informações sobre Java, clique aqui.



A ordem indicada para o curso completo é a seguinte:

Básico

    02. Criando o primeiro programa em Java
          2.1 Código comentado do primeiro exercício - o que são Classes e Métodos
    03. Saídas Simples usando print, println e printf
          3.1 10 exercícios sobre saídas simples
    04. Comentando e usando Delimitadores de comentários
    05. Tipos numéricos: byte, short, int, long, float e double
    06. Recebendo dados do usuário: a classe Scanner
          Vídeo-aula: A classe Scanner
    07. Operações Matemática: Adição, Subtração, Multiplicação, Divisão, Resto da Divisão (módulo) e Precedência dos operadores matemáticos
          Vìdeo-aula: Operadores matemáticos e suas procedências
    08. Comparações: os operadores maior (>), menor (<), maior igual (>=), menor igual (<=), igual (==) e diferente (!=)
    09. O tipo char: armazenando e representando caracteres
    10. O tipo boolean: a base da lógica na computação
    11. Operadores lógicos e de negação: && (E ou AND), || (OU ou OR) e o ! (negação)


    Estruturas de Controle/Controle de Fluxo e Laços

      03. Operadores de Incremento (++) e Decremento (--)
      04. Operadores de Atribuição: +=, -=, *=, /= e %=
      05. Operadores de atribuição e de incremento e decremento - diferenças entre a=++b e a=b++
      06. O laço while: o que é, como usar e calculando PA e PG com while
            6.1 Questões usando o laço while
      07. Loop infinito, controlando laços e loopings com o while
      08. Laço for: tendo um maior controle sobre as repetições
            8.1 Questões usando o laço for
      09. O laço do ... while: O laço que sempre acontece...pelo menos uma vez
      10. Os comandos break e continue: interrompendo e alterando fluxos e loopings
      11. O comando switch: fazendo escolhas em Java
      12. Exercícios envolvendo laços
      Apostila Caelum resolvida: Capítulo 3, Variáveis, Tipos Primitivos e Controle de Fluxo


      Orientação a Objetos, parte I: Criando e declarando classes - Construtores

      00. Introdução: o que são, para que servem, como e onde usar as Classes e Objetos em Java
            Vídeo-aula: Orientação a Objetos
      01. Como criar uma Classe e declarar Objetos
      02. Acessando e modificando variáveis de Classes e Objetos
      03. Construtores: o que são, para que servem e como usar
            Vídeo-aula: Construtores



      Métodos

      02. Parâmetros e Argumentos: passando informações para os métodos
      03. A Classe Math: constantes, principais métodos e chamando métodos de outras classes
      04. Sobrecarga de métodos (method overloading): declarando métodos com o mesmo nome
      05. Passando uma lista de argumentos, de tamanho qualquer, para um método
      06. Exercícios: treine com questões envolvendo métodos e tudo o que aprendeu até aqui
      Jogo: Adivinhe o número que o computador sorteou [modo texto]


      Orientação a Objetos, parte II: Os métodos set e get - Composição - Enum

      00. Auto-referência com o this: Invocando métodos de Classes e Objetos
      01. set e get: o que são e como usar esses métodos de forma correta
            1.1 Aplicativo: Conta bancária/ Caixa eletrônico em Java
      02. Composição: trocando informações entre Objetos
            Vídeo-aula: Composição e Relação tem-um
      03. Use constantes, e não números - declarando variáveis com o final
      04. enum: A melhor maneira para manusear constantes
      05. static: Usando membros estáticos
      Apostila Caelum Resolvida: Capítulo 4 - Orientação a objetos básica
      Jogo: Campo Minado em Java
                Código comentado sobre como fazer o jogo Campo Minado em Java


      Programação Gráfica em Java, parte I: Caixas de Diálogo

      03. Como passar variáveis do tipo String para int, float e double
            3.1 Aplicativo: calcula as raízes de uma equação do segundo grau
      04. Construindo (build) seu projeto Java no NetBeans


      Estrutura de Dados, parte I: Array e ArrayList

      00. Introdução ao estudo de estrutura de dados em Java: Array, ArrayList, Listas, Filas e Pilhas
      01. Arrays (ou vetores): como declarar, usar e acessar seus elementos
            Vídeo-aula: Arrays
      02. Foreach: O laço for para Arrays
      03. Array multidimensional ou Matriz: um Array de arrays
            Vídeo-aula: Matrizes ou Arrays Multidimensionais
      04. Arrays em métodos: passagem por valor e passagem por referência
      05. Classe Arrays (Arrays Class): aprenda a manusear (copiar, ordenar, buscar e manipular) Arrays
      06. ArrayList: para que serve e como usar os principais métodos da ArrayList em Java
            Vídeo-aula: Como usar ArrayList
      Apostila Caelum resolvida: Capítulo 5 - Um pouco de Arrays

      Jogo usando if else, métodos, arrays, arrays multidimensionais e laços.
      Jogo: Batalha Naval em Java [modo texto - humano x computador]


      Orientação a Objetos, parte III: Herança e Polimorfismo

      00. Herança: o que é, para que serve, exemplos de uso e quando usar
      01. Herança de Construtores e @Override
            Vídeo-aula: Herança (extends) e Construtores (super)
      02. public, private e protected: Protegendo suas informações em Java
      03. A classe Object: o que é, uso e principais métodos
      04. Polimorfismo: o que é, pra que serve, como e onde usar
      05. Polimorfismo: Classes abstratas e Métodos abstratos em Java
            Vídeo-aula: Polimorfismo e Classes Abstratas
            Exemplos: Importância do Polimorfismo e Abstração em softwares
      06. Manipulando polimorficamente subclasses
            Dica: Descobrindo a classe de um Objeto


      Jogo: Jogo da Velha em Java (Humano x Humano)
                Código comentando sobre como fazer um Jogo da Velha em Java