Objetivo
Introduzir
estudantes e profissionais no desenvolvimento prático de software
orientado a objetos com a plataforma Java, construindo projetos
através da metodologia construtivista.
Abordagem
Conceitos
Discutidos
- Fundamentos da Orientação a Objetos: classes, objetos, métodos, parâmetros, tipos, estado e interação entre objetos.
- Definições de Classe: campos, variáveis locais, construtores, métodos de acesso e métodos modificadores.
- Interação entre Objetos: abstração, modularização, tipos primitivos e tipos objetos, objetos criando objetos e chamadas de método.
- Coleções de Objetos: coleções e arrays, conversão de tipo, loops e iteradores.
- Classes Sofisticadas: conjuntos, javadoc, público e privado, variáveis de classe, classes Random, String e HashMap.
- Interfaces: teste e automação de teste, modularização e interfaces.
- Design de Classes: design baseado na responsabilidade, acoplamento e coesão, refatoração e depuração.
- Herança: hierarquias de herança, subtipagem, variáveis polimórficas, classes wrappers e classe Object.
- Polimorfismo: tipo estático e dinâmico, sobrescrição, polimorfismo, métodos de objeto, acesso protegido.
- Abstração: simulações, classes abstratas, herança múltipla e interfaces.
- Tratamento de Erros: programação defensiva, lançamento de exceção, exceções verificadas, novas classes de exceção, recuperação e prevenção de erro.
- Design de Aplicações: análise e projeto, projeto de classe, documentação, cooperação, prototipagem, crescimento de software e padrões de projeto.
- Estudo de Caso: descrição de problema, descobrindo classes, cartões CRC, cenários, projeto de interfaces de classe, estrutura hierárquica, testes, desenvolvimento iterativo e reutilização.
Projetos
Desenvolvidos
- Formas: Desenho com formas geométricas; ilustra a criação de objetos, chamada de métodos e parâmetros.
- Figura: Utiliza objetos shape para desenhar figuras; introduz sintaxe Java.
- Aulas de laboratório: Exemplo com classes de alunos; ilustra objetos, campos e métodos. Utilizando ao longo do curso para exemplificar herança.
- Máquina de vender bilhetes: Simulação de máquina de vender bilhetes; introduz métodos construtores/acesso/modificadores, parâmetros e instruções simples.
- Livro: Armazenamento detalhado de informações a respeito de um livro. Reforça construções utilizadas no projeto da máquina de vender bilhetes.
- Mostrador de relógio: Implementação de um mostrador de relógio digital; ilustra conceitos de abstração, modularização e interação entre objetos.
- Sistema de correio eletrônico: Simulação simples de correio eletrônico. Utilizado para demonstrar a criação e interação de objetos.
- Bloco de notas: Construção de notas utilizado para introduzir coleções e loops.
- Leilão eletrônico: Simulação de um leilão eletrônico. Mais sobre coleções e loops, desta vez com iteradores.
- Analisador de logs Web: Um programa para analisar arquivos de log de acesso Web; reforça os conceitos de arrays e loops.
- Suporte técnico: Implementação de um programa de diálogo entre humano e máquina; introduz classes de biblioteca em geral e algumas classes específicas.
- Bolas: Uma animação gráfica de bolas que quicam; demonstra separação entre interface/implementação e imagens gráficas simples.
- Diário: Implementação inicial de um diário que armazena compromissos; utilizada para discutir estratégias de teste e depuração.
- Calculadora: Implementação de uma calculadora gráfica; reforça os conceitos introduzidos anteriormente e discute testes e depuração.
- Tijolos: Simples exercício de depuração. Modela o preenchimento palhetas com tijolos para cálculos.
- Mundo de zuul: Jogo interativo de aventura baseado em texto altamente extensível. Utilizado para discutir bons projetos, herança, acoplamento e coesão.
- Dome: Banco de dados de cds e vídeos. É um projeto estendido em detalhes para introduzir os fundamentos de herança e polimorfismo.
- Raposas e coelhos: Simulação gráfica de caçador-caça; reforça conceitos de herança e adiciona classes abstratas e interfaces.
- Catálogo de endereços: Implementação de catálogo de endereços com uma interface GUI opcional. Faz uso extenso de exceções.
- Sistema de reserva: Um sistema para gerenciar reservas antecipadas em um cinema. É utilizado para discutir a descoberta de classes e projeto de aplicação.
- Táxi: Combinação de sistema de reserva, gerenciamento e simulação. Utilizado como estudo para reunir os conceitos e técnicas discutidos ao longo do curso.
Investimento
INSCRIÇÕES
ATÉ
|
PÚBLICO
GERAL
|
ESTUDANTES¹
|
ASSOCIADOS²
|
05/07/13
|
R$
674,00
|
R$
640,00
|
R$
640,00
|
08/07/13
|
R$
790,00
|
R$
720,00
|
R$
750,00
|
12/07/13
|
R$
940,00
|
R$
790,00
|
R$
890,00
|
¹ESTUDANTES:
Estudantes das instituições Anhanguera, Senai, Senac, CNEC,
Sociesc, Univille e UDESC
²ASSOCIADOS:
Empresas associadas à Softville
Datas,
Horário e Local
- Módulo Único de 40 horas
- 13, 20, 27 de julho e 03 e 10 de agosto de 2013
- Horário: 08:00 – 12:00 / 13:00 – 17:00
- Local: Fundação Softville – Rua Otto Boehm, 48
Diferenciais
- Aprende Programação Orientada a Objetos e Java desenvolvendo projetos reais;
- Curso 100% prático utilizando a metodologia construtivista;
- Material didático incluso (apostila e código-fonte);
- Certificado de participação;
- Coffee-break matutino/vespertino.
Instrutor
Victor
Vargas de Andrade - MBA Executivo em Gerenciamento de Projetos
(2005), pós-graduação em Docência Inovadora (2005), graduação
em Tecnologia de Processamento de Dados (1994) e Técnico em
Processamento de Dados (1990). Atualmente é professor de Programação
Orientada a Objetos e Organização de Computadores na Universidade
Anhanguera e Diretor Executivo da EkoLivre Tecnologia da Informação.
Possui larga experiência em Tecnologia, com ênfase em nas áreas de
Desenvolvimento Java, Automação Residencial e Sistemas Web.
Inscrições
Banco
do Brasil - Ag.: 3160-7 - C/C: 24748-0
EkoLivre Tecnologia da Informação Ltda.
EkoLivre Tecnologia da Informação Ltda.
APOIO:
|
|
Nenhum comentário:
Postar um comentário