JSE M2 2010

Objetivos

Objetivo deste curso é complementar o conhecimento do participante com tópicos avançados em fundamentos e programação orientação a objetos. Oferecer conhecimento introdutório em algumas das tecnologias fundamentais da plataforma. Oferecer conhecimento introdutório teórico e prático de conceitos de engenharia de software que são utilizadas juntamente com a tecnologia, finalizando curso com o desenvolvimento completo de uma aplicação desktop como estudo de caso utilizando-se do conteúdo ministrado.

Duração: 50 hs (Turma completa)

Pré-requisitos

JSE M1 ou possuir sólidos conhecimentos em: sintaxe da linguagem java, fundamentos de programação, conceitos e programação orientada a objetos, programação com threads e JDBC.

CONTEÚDO PROGRAMÁTICO

1.Tópicos Avançados em Fundamentos de Programação

Limitações de tipos.
BigInteger, BigDecimail e operações.
Manipulações de datas.
Loops rotulados.
Utilização de atributos, métodos e classes estáticas.
Enum.
Generics.

2.Tópicos Avançados em Programação Orientada a Objetos

Objetos anônimos.
Classes internas.
Classes internas locais de métodos.
Classes anônimas simples.
Classes anônimas como argumentos.
Passagem de Parâmetros – Primitivos e Objetos.
Operador instanceof.
Comparação e Igualdade entre primitivos e Objetos.
Substituição dos métodos equal(), hashCode() e toString()
Ordenação de coleções.

3.Programação Concorrente – Multithread

Sincronização e bloqueios.
Sincronizando bloco de código.
Agendamento de tarefa.
Finalização de um programa JSE.

4.Padrões de Projeto – Designer Patterns

Conceitualização.
Implementação dos padrões Singleton e Factory Method.

5.Tecnologias Fundamentais JSE

Serialização de Objetos.
Comunicação com sockets.
Reflexão e Introspecção de objetos.

6.Desenvolvimento Baseado em Componentes

Conceitualização.
Desenvolvimento e utilização de um componente como estudo de caso.

7.Java API Persistence

Conceitualização.
Arquitetura.
Exercícios.

8.Arquiteturas de Software

Conceitualização.
Separação em camadas lógicas e físicas.

9.Estudo de Caso

Desenvolvimento de um estudo de caso desktop completo com foco em:
1. Camadas Lógicas.
2. Baseado em Componentes.
3. Padrões de Projeto.
4. Banco de Dados – SGDB

Anúncios

JSE M1 2010

Objetivos

Objetivo deste curso é introduzir o participante a tecnologia Java, tendo como objetivo principal concretizar o entendimento fundamental e básico referente à tecnologia. O curso aborda desde a montagem do ambiente de desenvolvimento, fundamentos da linguagem de programação, conceitos de orientação a objetos, programação orientada a objetos até conhecimentos relacionados com alguns tópicos avançados. O participante também torna-se apto à utilização das seguintes tecnologias fundamentais:

  • Threads – Execução concorrentes.
  • JDBC – Comunicação com banco de dados relacionais.
  • Collection Classes – Coleções dinâmicas.
  • Swing – Desenvolvimento de interfaces gráficas.

O curso é finalizado com a conceitualização e apresentação de alguns ambientes de desenvolvimento RAD para a tecnologia JSE.

Pré-requisitos

  • Lógica de programação e ou conhecimento em alguma linguagem de programação.

Duração: 50 hs (Turma completa)

CONTEÚDO PROGRAMÁTICO

1.Visão Geral

O que é?
História.
Overview geral das tecnologias.
Ambiente de Desenvolvimento
Conceitualização.
Downloads, instalações e montagem do ambiente Java.

2.Fundamentos de Programação

Programas JSE.
Entradas e saídas simples.
Literais numéricos e String.
Variáveis primitivas e Objetos String.
Ciclo de Vida das Variáveis
Operadores aritméticos, relacionais, lógicos, ternário, deslocamento de bits, acréscimo, decréscimo e compostos.
Expressões.
Controle de fluxo if e swicth.
Loops while, do while, for, for collection.
Array Unidimensiol e Multidimensional.

3.Conceitos de Orientação e Objetos

Classes.
Mensagens.
Atributos.
Métodos.
Objetos.
Visibilidade.
Encapsulamento.
Herança.
Agregação.
Polimorfismo.

4.Programação Orientada a Objetos em Java

Pacotes.
Classes.
Atributos.
Construtores e métodos.
Objetos.
Comparação e Equivalência entre Objetos
Ciclo de vida de um objeto – Coletor de Lixo.
Array de Objetos.
Encapsulamento.
Herança.
Override e Overload.
Polimorfismo.
Classes e métodos abstratos
Utilização de Modificadores final e static.

5.Classes Padrões

Wrappers.
Autoboxing e unboxing.
Collections e utilização de generics.
String, StringBuilder e StringBuffer.

6.Tópicos Avançados

Interfaces.
Exceptions.
Threads.
Static Import.
Var-Args.
JavaCode Convention.
JavaDoc.

7.Java Data Base Connection – JDBC

Fundamentos e arquitetura
Componentes básicos: Connection, DriverManager, Statement, Preparedtatement e ResulSet.
Utilização com SGDB MySql.

8.Interface Gráfica com Swing

Gerenciadores básicos de Layout.
Janelas gráficas e painéis.
Componentes gráficos swing.
Caixa de mensagens.
Tratamentos de eventos – janelas, teclados, ações e mouse.

9.Ferramentas RAD

Conceitualização.
Utilização do Eclipse VEP – Visual Editor Project.
Utilização do NetBeans – Matisse Project.

Introdução ao JEE 6

Java Platform, Enterprise Edition (Java EE) é uma plataforma padrão para construção de aplicativos corporativos usando a linguagem de programação java. Baseada na solida fundação do Java Platform, Standard Edition (Java SE), o JEE acrescenta poderosos componentes e serviços de desenvolvimento que suporta escalabilidade, acessibilidade, segurança, integridade e outros requisitos para aplicação corporativas. Desde sua versão inicial em 1999, JEE tem amadurecido em suas funcionalidades, facilidades e performance. A recente versão tem sido focada na simplicidade e facilidade, proporcionando desenvolvimento mas fácil e rápido do que nunca. Significativas novas tecnologias foram acrescentados e outras aprimoradas com a toda a força da comunidade. Para todos os detalhes vejam o artigo de 3 partes escrito pelo Ed Ort descrevendo sucintamente todo estes recursos e suas respectivas melhorias.

“Porque Deus amou ao mundo de tal maneira que deu o seu Filho unigênito, para que todo o que nele crê não pereça, mas tenha a vida eterna.” João 3:16

Componentes JSF Pagos

Segue abaixo mais 2 magníficos kits de componentes JSF pagos. Vejam as demos para comprovar a qualidade !!! Muito bom  !

1. NetAdvantage é um conjunto de componentes ricos para a especificação JSF incluindo grids 2d, 3d, charts, árvores, menus, calendários e controles de inputs. Ele providência a habilidade de construir aplicações JSF de forma rápida, fácil com um visual 100% profissional dignos de uma aplicação java. Veja o showcase.

2. ECruiser possui uma série de componentes para web 2.0 combinando funções Ajax. Veja o showcase.

“Pelo que também Deus o exaltou soberanamente e lhe deu um nome que é sobre todo o nome…” Filipenses 2:9

Sevlet 3.0 Assincrono

Uma das mais significantes evolução feito pela JSR 315: Java Servlet 3.0, é o suporte para processamento assíncrono. Com esse recurso, um servlet não precisa ficar esperando a resposta de um recurso externo antes que a thread continue seu processamento normal. Antes da versão 3.0, o assincronismo era providenciado para dentro de um JEE container de forma proprietário.
Em aplicativos web modernos existe momentos em que ocorre a necessidade de execução assíncrona como parte da requisição, de forma que o web container continue a servir outras requisições de maneira continua. Um exemplo clássico disso seria um CHAT que precisariam ser habilitada para sempre estar conectadas com a parte servidora. Não funcionaria se as threads do web container fossem bloqueadas por um longo período de tempo na hora de manipular uma requisição do cliente. O ideal seria que o servlet processasse o pedido e rapidamente liberasse para atender outras requisições. Em outras palavras, processamento assíncrono !! Com a mais nova versão do Servlet 3.0, agora realmente é possivel implementar isso de forma 100% portavel. Veja o artigo escrito por Rajiv Mordani que introduz essa novo recurso, demonstrando suas características.

“Pois não me envergonho do evangelho, porque é o poder de Deus para a salvação de todo aquele que crê, primeiro do judeu e também do grego.” Romanos 1:16

Reuso Efetivo de Software

Reúso pode ser difícil, especialmente em grandes empresas. Vijay Narayanan oferece 10 dicas práticas para assegurar o reúso efetivo de componentes de software. O propósito deste artigo é apresentar algumas dicas de como ter sucesso com o reúso sistemático baseado na minha experiência em vários projetos. A intenção é que artigo não seja cansativo e sim que desenvolvedores e líderes de equipe apreciem a variedade de estratégias – técnicas e não-técnicas – de que é preciso aplicar para ter sucesso com reúso sistemático.” Segue as dicas:

  1. Focar nos recursos específicos de domínio do software.
  2. Nomeie seus componentes de software apropriadamente.
  3. Não tem certeza se é algo reutilizável? Atrase o comprometimento.
  4. Evolua Componentes Reutilizáveis Iterativamente.
  5. Ser Consistente é mais importante do que seguir um padrão de indústria.
  6. Conduza revisões de código.
  7. Nunca lance um componente de software reutilizável sem uma suíte de testes de regressão automatizado.
  8. Entenda as necessidades do negócio antes de tentar persuadir.
  9. Crie componentes de software reutilizável sempre que possível.
  10. Busque requisitos do suporte a produção para seus componentes reutilizáveis.

“Toda arma forjada contra ti não prosperará; toda língua que ousar contra ti em juízo, tu a condenarás; esta é a herança dos servos do SENHOR e o seu direito que de mim procede, diz o SENHOR.” Isaías 54:17

Componentes JSF EasyFaces

Segue neste post mais um kit de componentes baseado na especificação JSF chamado de EasyFaces. O grande diferencial deste kit é que ele é completamente Brazuca e atende as necessidades relacionados ao nosso contexto comercial. Os componentes se dividem em 4 grupos:

1. Input:
Input CEP
Input CNPJ
Input CPF
Input Currency
Input Email
Input Mask
Input Phone

2. Output:
Output Calendar
Output CEP
Output CNPJ
Output CPF
Output Currency
Output Mask
Output Phone

3. Security:
Password Strength
Virtual Keyboard

4. Miscellaneuos:
Image Gallery
Mp3 Player
Select One Menu
Video Player

“O SENHOR é a minha luz e a minha salvação; de quem terei medo? O SENHOR é a fortaleza da minha vida; a quem temerei ?” Salmos 27:1