Aula 4 – Pós-graduação

15abr11

Retrospectiva da quarta aula

Penúltimo dia de aula da disciplina Componentes de Software e Aplicações Web — Modelo de 2 e 3 Camadas na pós-graduação em Componentes Distribuídos Web da Ruy Barbosa. Neste nosso quarto encontro aprendemos sobre Aplicações Web em camadas, exemplificando e praticando com o que há de mais novo no assunto: a tecnologia JSF 2.

Começamos a noite relembrando os conceitos básicos de desenvolvimento de software para a plataforma Web, toda aquela conversa de cliente e servidor. Chegamos ao assunto Rich Internet Application (RIA), que nada mais é do que aplicações Web que exploram os recursos de banda da Internet e processamento do cliente para proporcionar uma interface mais rica e atraente para o usuário.

Utilizando componentes providos por frameworks que seguem o conceito RIA percebemos que o código gerado para o cliente é muito diferente do código-fonte. Daí tiramos a lição número 1: perca a mania de bisbilhotar o código gerado. Aprendemos também que devemos nos desapegar dos elementos HTML convencionais e utilizar os recursos das ferramentas RIA, essa foi a nossa segunda regra. A terceira, focada no estilo JSF de ser, preocupe-se com o escopo do seu objeto.

Vimos que o JSF, assim como diversas outras ferramentas das mais variadas tecnologias, é uma implementação do padrão MVC, que citamos na primeira aula. O JSF 2 faz parte da especificação guarda-chuva JEE6. Para quem quer aprofundar no assunto, recomendo a leitura da matéria As novidades da JEE 6 daqui do blog. Depois de entendermos o funcionamento básico do JSF 2, partimos para a demonstração de código.

Comecei mostrando as refatorações que fiz no componente núcleo (demo-core), que contempla os objetos de transferência de dados, camadas de persistência e negócio. Isso mesmo, é aquele que construímos nas aulas anteriores, disponível no repositório público neste link. Para simular o pepino que encontramos na vida real, implementei os casos de testes com cobertura parcial do código. Teste de componentes foi assunto da terceira aula.

Preparei um artefato à parte exclusivo para a camada de apresentação baseada em JSF 2: uma aplicação Web. O código-fonte está disponível no repositório público. Esta aplicação (demo-web) declarou o núcleo (demo-core) como dependência. Experimentamos na prática os benefícios de um build automatizado bem projetado, assunto da segunda aula.

Após um breve intervalo, mão na massa com Coding Dojo. O desafio foi criar uma aplicação Web com JSF 2 similar à apresentada na demonstração. Para focar na camada de apresentação, decidimos reutilizar o núcleo do código de demonstração (demo-core). Fizemos uma tela básica de auto-cadastro de conta de usuário.

Coding Dojo sobre JSF 2 e camadas

Durante a sessão de implementação, deparamos com um erro originado pelo componente núcleo (demo-core). Para achar a causa do erro, fizemos um debug intrusivo no código-fonte do núcleo. Descobrimos que a falha ocorria na camada de negócio. Sentimos na pele a importância da qualidade dos testes de componentes. Viu aí, quem mandou não testar direito?!

No final da noite, como de praxe, fizemos a retrospectiva da aula. Os pontos positivos foram estes:

  • Gostei de aprender JSF 2, um assunto atual aplicado em exemplos reais.
  • Coding Dojo novamente ajudando na compreensão do assunto, show de bola!
  • Junção dos conceitos de aplicações Web com arquitetura em camadas.

E os pontos à melhorar foram estes:

  • Diminuir o tempo de demonstração e dedicar mais tempo ao Dojo.
  • Assunto muito complexo.
  • Dificuldade para dominar todo o ambiente de desenvolvimento.

Na sexta-feira, nosso último dia de aula, fizemos a Dinâmica dos Problemas Reais abordando situações que vivi relacionadas à disciplina. Confira o que aconteceu!

Anúncios


3 Responses to “Aula 4 – Pós-graduação”


  1. 1 Resultado da avaliação – Pós-graduação « Cleverson Sacramento
  2. 2 Aula 3 – Pós-graduação « Cleverson Sacramento
  3. 3 Aula 3 – Pós-graduação | Cleverson Sacramento

E aí, o que você achou? Comenta aí...

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s