EMENTA DO CURSO O Curso Preparatório para a Certificação Oracle Certified Professional, Java SE 6 Programmer (Java Básico) será dividido em 2 módulos e deverá ter os seguintes objetivos e conter os seguintes tópicos: Objetivos: 1 o Módulo Demonstrar conhecimento sobre a tecnologia Java, a linguagem de programação Java e o ciclo de vida dos produtos. Usar várias construções da linguagem de programação Java para criar aplicativos em Java Usar construções e métodos de decisão e looping para ditar o fluxo dos programas Implementar conceitos intermediários de programação com tecnologia Java e orientada a objetos em programas em Java 2 o Módulo Criar aplicativos em Java que tirem proveito dos recursos de orientação a objetos da linguagem Java, como encapsulamento, herança e polimorfismo Executar um aplicativo em Java usando a linha de comando. Usar tipos de dados e expressões em Java Usar construções de controle de fluxo da tecnologia Java Usar matrizes e outras coleções de dados Implementar técnicos de manipulação de erros usando o tratamento de exceções Criar uma interface gráfica do usuário controlada por eventos usando componentes de GUI da tecnologia Java: painéis, botões, rótulos, campos de texto e áreas de texto. Implementar a funcionalidade de I/O para a leitura e gravação de arquivos de dados e arquivos de texto, e compreender streams avançados de I/O Criar um cliente em rede TCP/IP (Transmission Control Protocol/Internet Protocol) simples que se comunique com um servidor por meio de soquetes. Criar programas com vários segmentos Tópicos: 1 o Módulo Explicação da Tecnologia Java Descrever os principais conceitos da linguagem de programação Java Listar os três grupos de produtos de tecnologia Java Resumir cada um dos sete estágios do ciclo de vida do produto Análise de um Problema e Desenvolvimento da Solução Analisar um problema usando a análise orientada a objetos Desenvolver classes a partir das quais os objetos serão criados Desenvolvimento e Teste de um Programa em Java Identificar os quatro componentes de uma classe na linguagem de programação Java Usar o método principal em uma classe de teste para executar um programa em Java na linha de comando Compilar e executar um programa em Java Declaração, Inicialização e Uso de Variáveis Identificar o uso da sintaxe de variáveis e definir a sintaxe de uma variável Listar os oito tipos de dados de primitivas da linguagem de programação Java
Declarar, inicializar e usar variáveis e constantes conforme as diretrizes da linguagem de programação Java e os padrões de codificação. Modificar os valores de variáveis com operadores Usar intercalação de promoção e tipo Criação e Uso de Objetos Declarar, instanciar e inicializar variáveis de referência de objetos. Comparar como as variáveis de referência de objetos são armazenadas em relação às variáveis primitivas Usar uma classe (String) incluída no Kit do Desenvolvedor de Software Java (SDK - Software Developer Kit) Usar a especificação de biblioteca de classes J2SE[TM] (Java 2 Platform, Standard Edition) para aprender outras classes dessa interface de programação de aplicativos (API - Application Prog. Inter.) Uso de Operadores e Construções de Decisão Identificar operadores relacionais e condicionais Criar construções if e if/else Usar a construção switch Uso de Construções de Loop Criar loops while Desenvolver loops for Criar loops do/while Desenvolvimento e Uso de Métodos Descrever as vantagens dos métodos e definir os métodos de trabalho (worker) e de chamada (calling) Declarar e invocar um método Comparar métodos estáticos e de objeto Usar métodos sobrecarregados Implementação de Encapsulamento e Construtores Usar encapsulamento para proteger dados Criar construtores para inicializar objetos Criação e Uso de Matrizes Codificar matrizes unidimensionais Definir valores de matrizes com atributo de comprimento e um loop Passar argumentos para o método principal para uso em um programa Criar matrizes bidimensionais Implementação de Herança Definir e testar o uso da herança Explicar abstração Identificar explicitamente as bibliotecas de classes usadas no código 2 o Módulo Introdução Examinar a tecnologia Java Introdução a um Aplicativo Simples em Java Executar um aplicativo Java Programação orientada a objetos Definir os conceitos de modelagem: abstração, encapsulamento e pacotes. Examinar a reutilização de código de aplicativo Java
Definir classe, membro, atributo, método, construtor e pacote. Usar os modificadores de acesso público e privado conforme adequado para as diretrizes de encapsulamento Invocar um método em um objeto específico Usar a documentação on-line da API Java Identificadores, Palavras-chave e Tipos Usar comentários em um programa de origem Diferenciar identificadores válidos e inválidos Listar os oito tipos de primitivas Definir valores literais para tipos numéricos e textuais Definir os termos variável primitiva e variável de referência Declarar variáveis de tipo de classe Construir um objeto usando new e descrever a inicialização padrão Descrever o significado de uma variável de referência Expressões e Controle de Fluxo Diferenciar variáveis de local e de instância Descrever como inicializar variáveis de instância Reconhecer, descrever e usar operadores de software Java Diferenciar atribuições legais e ilegais de tipos de primitivas Identificar expressões booleanas e seus requisitos em construções de controle Reconhecer a compatibilidade de atribuições e a conversão necessária de tipos fundamentais Usar as construções if, switch, for, while e do e as formas rotuladas de break e continue como estruturas de controle de fluxo em um programa Matrizes Declarar e criar matrizes de tipos de primitivas, de classes e de matrizes Explicar por que os elementos de uma matriz são inicializados Explicar como inicializar os elementos de uma matriz Determinar o número de elementos de uma matriz Criar uma matriz multidimensional Escrever código para copiar valores de uma matriz para outra Projeto de Classe Definir herança, polimorfismo, sobrecarga, substituição e invocação de método virtual Usar os modificadores de acesso protegidos e padrão (adequado para pacotes) Descrever os conceitos de sobrecarga de construtor e método Descrever a operação completa de construção e de inicialização de objeto Recursos de Classe Avançados Criar variáveis, métodos e inicializadores estáticos Criar classes, métodos e variáveis finais Criar e usar tipos enumerados Usar a instrução de importação estática Criar classes e métodos abstratos Criar e usar uma interface Exceções e Declarações Definir exceções Usar as instruções try, catch e finally Descrever as categorias de exceções Identificar exceções comuns Desenvolver programas para manipular suas próprias exceções Usar declarações
Identificar os usos adequados e inadequados de declarações Ativar declarações em tempo de execução Estrutura de Coleções e Genéricos Descrever as implementações de uso geral das principais interfaces da estrutura de coleções Examinar a interface Map Examinar as classes de coleções legadas Criar ordens naturais e personalizadas implementando as interfaces Comparable e Comparator Usar coleções genéricas Usar parâmetros de tipo em classes genéricas Refatorar código não-genérico existente Escrever um programa para iteração em uma coleção Princípios Básicos de E/S Escrever um programa que use argumentos de linha de comando e propriedades do sistema Examinar a classe Properties Construir fluxos de processamento e nós e usá-los adequadamente Serializar e desserializar objetos Diferenciar leitores e gravadores de fluxos e selecioná-los adequadamente Executar E/S de Console e E/S de Arquivo Ler dados do console Gravar dados no console Descrever a E/S de arquivo e arquivos Criação de GUIs Java com a API Swing Descrever a Tecnologia JFC Swing Identificar os pacotes Swing Descrever os blocos de construção da GUI: recipientes, componentes e gerenciadores de layout Examinar propriedades de nível superior, de uso geral e de uso especial de um recipiente Examinar propriedades de nível superior, de uso geral e de uso especial de um recipiente Examinar gerenciadores de layout Descrever o modelo de segmento único swing Criar uma GUI com componentes swing Manipulação de Eventos Gerados pela GUI Definir eventos e manipulação de eventos Examinar o modelo de evento do Java SE Descrever o comportamento da GUI Determinar a ação do usuário que originou um evento Desenvolver escutas de eventos Descrever a simultaneidade em GUIs baseadas no Swing e descrever os recursos da classe SwingWorker Aplicativos Baseados em Interface Gráfica do Usuário Descrever como construir uma barra de menus, um menu e itens de menu em uma interface gráfica do usuário em Java Aprender a alterar a cor e a fonte de um componente Segmentos Definir segmento Criar segmentos separados em um programa em Java, controlando o código e os dados usados pelo segmento
Controlar a execução de um segmento e escrever código independente de plataforma com segmentos Descrever as dificuldades que podem surgir quando vários segmentos compartilham dados Usar wait e notify para comunicação entre segmentos Usar synchronized para proteger os dados contra corrupção Operação em Rede Desenvolver código para configurar a conexão de rede Compreender TCP/IP Usar as classes ServerSocket e Socket para implementar clientes e servidores TCP/IP