Curso presencial no centro de Guarulhos: Programador Java
Conteúdo do curso de Java Polidata
Introdução
- Noções de Programação Orientada a Objeto
- A história do Java
- A Máquina Virtual Java
- As diversas versões do Java
Programação Orientada a Objeto
- Paradigma procedural
- Criação de tipo
- Uma classe em Java
- Criação e utilização um objeto
- Métodos
- Métodos com retorno
- Objetos acessados por referências
- O método transfere()
Instalação local Windows para informatização da empresa
- Instalação do Java Desenvolvedor, JDK
- Instalação do Java de Execução, Java Runtime Environment, JRE
- Instalação do Tomcat
- Instalação do Eclipse
- Configuração
Instalação servidor Linux, criação de sites na Web
- Instalação do Java Desenvolvedor, JDK
- Instalação do Java de Execução, Java Runtime Environment, JRE
- Instalação do Tomcat
- Configuração
Noções básicas do desenvolvedor Java
- JDK, Java Development Kit, Kit de Desenvolvimento do Java
- JRE, Java Runtime Environment, Ambiente de Execução do Java
- Servido Apache Tomcat
- Máquina Virtual Java, JVM, Java Virtual Machine
- Bytecode
- Desenvolvimento do primeiro programa em Java, local
- Executando o primeiro programa, local
- Modificando o primeiro programa,local
- Criação em Java do site do aluno na Net
- Desenvolvimento do primeiro programa em Java, Internet
- Executando o primeiro programa, Internet
- Modificando o primeiro programa, Internet
Variáveis primitivas
- Declarando e usando Variáveis
- Tipos Primitivos e valores
- Escopo das variáveis
- Convenções de códificação
- Casting e promoção
Controle de fluxo
- O if e o else
- O While
- O For
- Bloco dentro de Bloco
- Sintaxe do Java
Arrays
- Arrays de referências
- Percorrendo uma array
- Percorrendo uma array
Modificadores de acesso e atributos de classe
- Controlando o acesso
- Encapsulamento
- Getters e Setters
- Construtores
- A necessidade de um construtor
- Atributos de classe
- Encapsulamento, construtores e static
Herança, reescrita e polimorfismo
- Repetindo código?
- Reescrita de método
- Invocando o método reescrito
- Polimorfismo
- Alternativas ao atributo protected
Eclipse IDE
- O Eclipse
- Views e Perspective
- Criação de um projeto
- Criação do main
- Execução do main
- Refactoring
Classes Abstratas
- Classe abstrata
- Métodos abstratos
Interfaces
- Interfaces
- Conexão com banco de dados
- Composição em relação à herança
Exceções e controle de erros
- Motivação
- Exceções de Runtime
- Checked Exceptions
- Throwable
- Lançamento de exceções
- Dentro do try?
- Criando tipos de exceção
- Finally
- Catch e throws em Exception
Pacotes, organização de classes e bibliotecas
- Diretórios
- Import
- Atributos, construtores e métodos
- O Eclipse com pacotes
Ferramentas jar e javadoc
- Arquivos e bibliotecas
- Gerando o JAR no Eclipse
- Javadoc
- Geração do Javadoc
O pacote java.lang
- A classe System
- java.lang.Object
- Casting de referências
- Métodos do java.lang.Object: equals e toString
- Integer e classes wrappers
- Autoboxing
- java.lang.String
- java.lang.Math
Pacote java.io
- Conhecendo uma API
- Orientação a objetos no java.io
- InputStream, InputStreamReader e BufferedReader
- A leitura de Strings do teclado
- OutputStream
- Scanner e PrintStream
- Design Patterns
- Template Method
Collections framework
- Arrays e estrutura de dados
- java.util.List
- Listas com Generics
- Interfaces nas coleções
- Collections.sort
- Ordenação
- java.util.Set
- java.util.Collection
- Coleções com java.util.Iterator
- java.util.Map
- Properties
- Equals e HashCode
Programação Concorrente e Threads
- Threads
- Escalonador e trocas de contexto
- Garbage Collector
- Problemas com concorrência
- Vector e Hashtable
- Programação concorrente e locks
Sockets
- Protocolo
- Porta
- Socket
- Servidor
- Cliente
- Múltiplos Clientes
- Broadcast das mensagens
Debugging
- Debugando no Eclipse
- Debug avançado
- Profiling
Banco de dados
- Banco de dados flat txt
- Introdução ao MySQL
- Criando banco de dados em MySQL
- Conexão MySQL Java
O Java na prática I
- Programação Orientada a Objetos
- Encapsulamento
- Classes
- Objetos, instâncias e referências
- Razões para orientação a objetos
- Criação de classes
- Sintaxe básica na criação de classes
- Campos em classes
- Dados nativos
- Declaração de campos em classes
- Escolha de tipos de dados
- Métodos em classes
- Escopo
- Modificadores de acesso
- Criação de aplicações
- A palavra-chave new
- A palavra-chave null
- Criação de classes
- Construtores e Sobrecarga
- Sobrecarga de métodos
- A palavra-chave this
- Cuidados com sobrecarga de métodos
O Java na prática II
- Campos e Métodos Estáticos
- Campos estáticos em classes
- Métodos estáticos em classes
- Campos e métodos estáticos em aplicações
- Fábricas de instâncias
- Estruturas de Decisão e Controle
- Condicionais
- Operadores lógicos
- Estruturas de decisão e execução seletiva
- if-else
- Operador condicional
- switch
- Estruturas de repetição ou iteração
- Contadores
- while
- do-while
- for
- Recursão
- Otimização de laços
O Java na prática III
- Reutilização de Classes
- Delegação ou Composição
- Delegação e modificadores de acesso
- Delegação e construtores
- Herança
- A palavra-chave super
- Sobreposição e ocultação
- Polimorfismo
- Introdução à Programação Orientada a Objetos
- Classes abstratas
- Interfaces
- Herança múltipla usando interfaces
- Conflitos de herança múltipla
- Pacotes de Classes
- Pacotes e modificadores de acesso
- O modificador default
- O modificador protected
- Pacotes padrão
- Classes para Manipulação de Dados
- Arrays
- Arrays unidimensionais
- Arrays de instâncias de classes
- Arrays multidimensionais
- Arrays irregulares
- Argumentos da linha de comando
O Java na prática IV
- Classes para Manipulação de Strings
- A classe String
- Construção de strings
- Métodos básicos da classe String
- Métodos para comparação de Strings
- Métodos para procura em Strings
- Métodos para modificação de Strings
- Métodos de conversão da classe String
- A classe StringBuffer
- Métodos básicos da classe StringBuffer
- A classe StringTokenizer
- Representação e Processamento Numérico
- Valores numéricos especiais
- A classe Math
- Métodos de comparação e arredondamento
- Métodos trigonométricos
- Métodos exponenciais
- Métodos para cálculo de valores aleatórios
- Representação de valores com precisão arbitrária
- A classe BigInteger
- A classe BigDecimal
- Classes para Programas com Interfaces Gráficas
O Java na prática V
- Tipos de Dados
- Tipos nativos
- O tipo nativo boolean
- O tipo nativo char
- O tipo nativo byte
- O tipo nativo short
- O tipo nativo int
- O tipo nativo long
- O tipo nativo float
- O tipo nativo double
- Classes que encapsulam valores nativos
- A classe Boolean
- A classe Character
- A classe Byte
- A classe Short
- A classe Integer
- A classe Long
- A classe Float
- A classe Double
- A Classe Keyboard
O Java na prática VI
- Criando um aplicativo para informatização da empresa no Windows
- Criação de um Web site da empresa com carrinho de compras no Linux