CURSO DESENVOLVEDOR JAVA Edição 2010 O curso foi especialmente planejado para os profissionais que desejam trabalhar com desenvolvimento de sistemas seguindo o paradigma Orientado a Objetos e com o uso da tecnologia Java. O curso objetiva preparar o aluno para desenvolver sistemas orientados a objetos e multi-plataforma, proporcionando o domínio dos conceitos e práticas sobre o paradigma orientado a objetos e o uso dos recursos oferecidos pelas tecnologias Java SE, Java EE e Flex. Aborda desde os conceitos básicos sobre orientação a objetos, até o desenvolvimento profissional de software Web com a aplicação de recursos avançados da linguagem Java para o desenvolvimento de Aplicações Ricas para Internet. Todos os exercícios desenvolvidos durante as aulas baseiam-se em um estudo de caso que será projetado e adotado para o desenvolvimento dos exemplos durante as aulas. Todo o material didático necessário para o desenvolvimento do curso será disponibilizado aos participantes. O curso aborda conteúdos cobrados nas provas de certificação da Sun. Os conteúdos serão ministrados por professores graduados e especializados na área de informática e com experiência no desenvolvimento de aplicações com a linguagem Java. O certificado de participação será emitido pelo PóloSul.org. NÚMERO DE VAGAS Estão sendo disponibilizadas 30 vagas para a edição 2010. INSCRIÇÕES As inscrições poderão ser realizadas a partir do dia 23 de dezembro de 2009, encerrando-se assim que as vagas forem esgotadas ou até o dia 08 de janeiro de 2010. Não serão realizadas inscrições por módulos específicos. Para se inscrever no curso siga as instruções no site www.polosul.org, na página cursos. VALOR DAS INSCRIÇÕES - Estudantes e Associados do PóloSul.org: R$ 980,00 (Novecentos e oitenta reais) - R$ 245,00 (Duzentos e quarenta e cinco reais) na inscrição - 3x de R$ 245,00 (Duzentos e quarenta e cinco reais) com cheque. - Demais Participantes: R$ 1.180,00 (Um mil cento e oitenta reais) - R$ 295,00 (Duzentos e noventa e cinco reais) na inscrição - 3x de R$ 295,00 (Duzentos e noventa e cinco reais) com cheque. Dúvidas poder ser encaminhadas para o e-mail [email protected]. CARGA HORÁRIA TOTAL 136h PERÍODO DAS AULAS As aulas iniciam no dia 08 de janeiro de 2010, finalizando em 29 de maio de 2010. Aulas nas sextas a noite e sábados (manhã e tarde) durante o mês de janeiro e aos sábados (manhã e tarde) após o período de férias. Confira o cronograma das aulas no final deste documento. PRÉ-REQUISITOS Conhecimentos de lógica de programação e conhecimento prévio quanto ao uso de alguma linguagem de programação. CONTEÚDO DO CURSO 1. Introdução à Orientação a Objetos Aborda os conceitos envolvidos no paradigma da orientação a objetos e como se aplicam no desenvolvimento de sistemas. Os conceitos de orientação a objetos serão aplicados no desenvolvimento de um diagrama de classes para o estudo de caso de um sistema baseado neste paradigma, que será adotado para o desenvolvimento dos módulos seguintes. Número de Horas: 16h Pré-requisitos: Conhecimentos de lógica de programação e conhecimento prévio quanto ao uso de alguma linguagem de programação. Conteúdos: o Orientação a Objetos § Mudança de enfoque: estruturado para orientado a objetos § Introdução à orientação a objetos § Conceitos: classes, objetos, atributos, métodos, encapsulamento, polimorfismo, mensagens, herança, agregação, composição, associação o UML § Introdução à Unified Modeling Language (Linguagem de Modelagem Unificada) e seus principais diagramas § Desenvolvimento de um diagrama de classes baseado em estudo de caso de um sistema utilizando os conceitos de orientação a objetos em uma ferramenta Case 2. Introdução a Programação Java Capacitar o participante sobre o uso das ferramentas necessárias para a criação de aplicações no ambiente de desenvolvimento Java. Visa proporcionar o domínio da sintaxe da linguagem, padrões de codificação, orientação a objetos e as principais classes do Java em sua versão atual. Este módulo, além proporcionar ao aluno uma base para o desenvolvimento em Java, deve apresentar como resultado em um pacote de classes construídas com os alunos que serão úteis para o desenvolvimento dos módulos seguintes. Deve também, além de apresentar uma visão sobre estruturação de aplicações em Java, gerar um pacote com todas as classes POJO (JavaBeans) definidas no módulo 1 e que serão utilizadas nos módulos seguintes. Número de Horas: 20h Pré-requisitos: Conhecimentos de lógica de programação Conteúdos: o Introdução ao Java o O ambiente JDK (Conceitos básicos, plataforma Java, como obter e instalar o JDK) o Ferramentas Gráficas em Java (Como obter e instalar) o Programação orientada a objetos no Java (Criar projetos, pacotes, classes, objetos, métodos e variáveis) o Convenções para Nomes de classes e variáveis o Escopo de variável e método o Tipos, literais, expressões, operadores e controle de fluxo o Arrays, Coleções e Strings o Entrada e saída (java.io) o Herança, composição, Overriding, Overloading, Polimorfismo, Classes Abstratas. Interfaces o Principais classes da API do Java e como usar a documentação da API o Controle de erros e exceções o Pacotes, encapsulamento e JavaBeans o Generics o Padrões de Desenvolvimento de Aplicações em Java § Fundamentos do MVC § § Definição de uma estrutura de camadas para uma aplicação Criação da camada de modelo (Model) para o estudo de caso definido no módulo 1 (Projeto, pacotes, bibliotecas, POJO, JavaBeans, ...) 3. Persistência de Dados com Java Proporciona o domínio de um conjunto de classes e interfaces da API Java para o envio de instruções SQL para qualquer banco de dados relacional. Este módulo prepara o aluno para o desenvolvimento de toda a camada de modelo para aplicações Java, tanto com o uso de JDBC como com uso do framework Hibernate. Como resultado do desenvolvimento em aula durante este módulo, estarão disponíveis todas as classes, conexões, mapeamentos, em fim, toda a camada de modelo e persistência de dados conforme as classes projetadas no módulo 1 e definidas no módulo 2. Número de Horas: 24h Pré-requisitos: Introdução a Programação Java Conteúdos: o Fundamentos de JDBC o Como obter e instalar o driver JDBC para o Banco de Dados o Conhecendo o pacote java.sql o Estabelecendo a conexão o Trabalhando com instruções SQL o Framework Hibernate (Instalação, Configuração, Objetos Persistentes, Mapeando Associações, Mapeando Coleções, Mapeando Herança, Transações) o JPA – Java Persistence API o EJB 3 – Enterprise JavaBeans 4. Desenvolvimento Web com Java Busca proporcionar aos participantes o conhecimento básico necessário para o desenvolvimento de aplicações Web utilizando as tecnologias disponíveis na plataforma Java. Nesse módulo serão trabalhados os principais conceitos envolvidos em aplicações desta natureza. Número de Horas: 32h Pré-requisitos: Java e Banco de Dados Conteúdos: o Arquitetura de Aplicações Web o Requisições / Resposta com http o Programação client-side usando HTML, JavaScript e CSS o Programação server-side usando Servlets e JSP - Java Server Pages o Gerenciamento de Sessões o Criação de uma manutenção CRUD (Create, Retrieve, Update e Delete), utilizando as classes definidas na camada de Modelo o Introdução ao uso de Frameworks para desenvolvimento Web § Arquitetura Básica do Framework § Instalação e configuração § Utilização de Framework para o desenvolvimento da aplicação do estudo de caso. 5. Aplicações Ricas para Internet / Flex e Java Busca capacitar os participantes para desenvolvimento de Aplicações Ricas para a Internet (Rich Internet Applications) integrando Flex e Java. Aborda conteúdos sobre o uso de frameworks para o desenvolvimento da camada de apresentação (interfaces e telas) e para integração com as camadas desenvolvidas em Java no Servidor (controle, regras de negócios e persistência), usando comunicações serializadas com XML e AMF. A metodologia adotada para este módulo busca integrar todos os conhecimentos dos módulos anteriores para o desenvolvimento de uma aplicação baseada em um estudo de caso. Número de Horas: 36h Pré-requisitos: Introdução ao Desenvolvimento de Aplicações Web com Java Conteúdos: o Introdução ao uso de RIA o Introdução ao Adobe Flex o Eventos (Escutando eventos, disparando eventos, tipos de eventos, respondendo a eventos com ActionScript) o Controles e Componentes (Hierarquia, Button, CheckBox, RadioButton, TextInput, Text, Imagens, DataGrid, …) o Containers de Layout e de Navegação o ActionScript o HTTPService e XML o Dados Dinâmicos do Servidor e Troca de Objetos entre Flex e Java (AMF) o Construção de Aplicativo Baseado em estudo de caso 6. Desenvolvimento de Relatórios Este módulo tem o objetivo de apresentar o básico do framework JasperReports e da ferramenta iReport para geração de relatórios, auxiliando na criação e impressão de documentos de uma forma simples e flexível. Os relatórios criados poderão ser usados tanto em aplicações Web como Desktop. Número de Horas: 8h Pré-requisitos: Desenvolvimento de Aplicações Web - Avançado Conteúdos: o Instalação e Configuração do iReport / JasperReport o Criação visual de relatórios com o iReport o Acesso a Banco de Dados o Componentes básicos para construção de um relatório o Acessando os relatórios a partir de uma aplicação Web CRONOGRAMA DAS AULAS As aulas serão no LCI - Prédio B5 - Campus 1 - UPF Horários: Manha: das 8:00 as 11:35 / Tarde: das 14:00 as 17:35 Data 04/jan 05/jan 06/jan 07/jan 08/jan 09/jan 10/jan 11/jan 12/jan 13/jan 14/jan 15/jan 16/jan 17/jan 18/jan 19/jan 20/jan 21/jan 22/jan 23/jan 24/jan 25/jan 26/jan 27/jan 28/jan 29/jan 30/jan 31/jan 01/fev 02/fev 03/fev 04/fev 05/fev 06/fev 07/fev 08/fev 09/fev 10/fev 11/fev 12/fev 13/fev 14/fev 15/fev 16/fev 17/fev 18/fev 19/fev 20/fev 21/fev 22/fev 23/fev 24/fev 25/fev 26/fev 27/fev 28/fev 01/mar 02/mar 03/mar 04/mar 05/mar 06/mar 07/mar 08/mar 09/mar 10/mar 11/mar 12/mar 13/mar 14/mar 15/mar 16/mar 17/mar 18/mar 19/mar 20/mar 21/mar Dia Seg Ter Qua Qui Sex Sab Dom Seg Ter Qua Qui Sex Sáb Dom Seg Ter Qua Qui Sex Sáb Dom Seg Ter Qua Qui Sex Sáb Dom Seg Ter Qua Qui Sex Sáb Dom Seg Ter Qua Qui Sex Sáb Dom Seg Ter Qua Qui Sex Sáb Dom Seg Ter Qua Qui Sex Sáb Dom Seg Ter Qua Qui Sex Sáb Dom Seg Ter Qua Qui Sex Sáb Dom Seg Ter Qua Qui Sex Sáb Dom MANHÃ TARDE NOITE Sala Mód. Sala Mód. Sala Mód. LCI 1 LCI 1 LCI 1 LCI 2 LCI 2 LCI 2 LCI 2 LCI 1 LCI 2 LCI LCI 3 LCI 3 LCI 3 LCI 3 LCI 3 LCI 4 LCI 4 LCI 4 3 Data 22/mar 23/mar 24/mar 25/mar 26/mar 27/mar 28/mar 29/mar 30/mar 31/mar 01/abr 02/abr 03/abr 04/abr 05/abr 06/abr 07/abr 08/abr 09/abr 10/abr 11/abr 12/abr 13/abr 14/abr 15/abr 16/abr 17/abr 18/abr 19/abr 20/abr 21/abr 22/abr 23/abr 24/abr 25/abr 26/abr 27/abr 28/abr 29/abr 30/abr 01/mai 02/mai 03/mai 04/mai 05/mai 06/mai 07/mai 08/mai 09/mai 10/mai 11/mai 12/mai 13/mai 14/mai 15/mai 16/mai 17/mai 18/mai 19/mai 20/mai 21/mai 22/mai 23/mai 24/mai 25/mai 26/mai 27/mai 28/mai 29/mai 30/mai 31/mai 01/jun 02/jun 03/jun 04/jun 05/jun 06/jun Dia Seg Ter Qua Qui Sex Sáb Dom Seg Ter Qua Qui Sex Sab Dom Seg Ter Qua Qui Sex Sáb Dom Seg Ter Qua Qui Sex Sab Dom Seg Ter Qua Qui Sex Sáb Dom Seg Ter Qua Qui Sex Sáb Dom Seg Ter Qua Qui Sex Sáb Dom Seg Ter Qua Qui Sex Sáb Dom Seg Ter Qua Qui Sex Sáb Dom Seg Ter Qua Qui Sex Sáb Dom Seg Ter Qua Qui Sex Sáb Dom MANHÃ TARDE NOITE Sala Mód. Sala Mód. Sala LCI 4 LCI 4 LCI 4 LCI 4 LCI 4 LCI 5 LCI 5 LCI 5 LCI 5 LCI 5 LCI 5 LCI 5 LCI 5 LCI 5 LCI 6 LCI 6 Mód.