Category Archives: Java Magazine

Java Magazine ed 61


Saiu a edição 61 da Java Magazine com matéria minha publicada sobre Orientação a Objetos no Javascript. TEm artigo de um conterrâneo e da turma de Natal também.

Agora são 3 artigos meus publicados http://www.milfont.org/tech/published/

http://www.devmedia.com.br/resumo/default.asp?site=6

Escritores de Fortaleza

Orientação a Objetos no Javascript
Por: Christiano Milfont

Nesse artigo estudaremos como está fundamentada a orientação a objetos no Javascript e como entender a sintaxe dentro desse conceito. Todos os Frameworks Ajax modernos estão codificados com a orientação a objetos como base.

MP3 Player ME
Por: Ernandes Mourão Júnior

Neste artigo, vamos mostrar como podemos inserir a plataforma Java ME nesta estória. Vamos criar um cenário onde o seu dispositivo móvel não possui um tocador de MP3, mas você gostaria de ter um para poder ouvir as suas canções favoritas. Para isto, vamos mostrar o desenvolvimento de um tocador de MP3 simples, utilizando-se da JSR 75 – PDA Optional Packages e da JSR 135 – Mobile Media API (MMAPI). Explorando-as desde os conceitos até a prática, com exemplos de código.

Escritores de Natal

Gráficos em Sistemas Web
Por: David Pereira, Itamir Filho e Raphaela Galhardo

O artigo apresenta um conjunto de técnicas para criação de gráficos em sistemas web.

MVC Model 3 e camadas

Recebo muitos emails com dúvidas sobre as camadas no que denominei de Model 3 no artigo da revista Java Magazine, edição 54. Esse Post é para esclarecer alguns pontos que ficaram obscuros no artigo.

Fiz um resumo da história do padrão MVC com base nesse artigo do Brian McCallister, e cometi o pecado inenarrável de misturar camadas e MVC na mesma descrição sem especificar claramente a diferença de um para o outro e separar na explicação onde entrava cada um dos conceitos na evolução até chegar no Model 3.

Não vou dar desculpas e a única coisa em minha defesa é que foi o primeiro artigo que, diga-se de passagem, passou por 8 revisões até chegar ao nível que a revista queria, tive que limar bastante e deixar a explicação fácil para iniciantes. Limei bastante, cortei muito e deixei uma parte confusa. Erro crucial que pago até hoje, porque muita gente entra em contato para entender melhor o que eu “quis” dizer.

MVC e Camadas

Sendo sucinto, deixando logo claro que MVC não tem a ver com camadas, são dois conceitos que se “completam” e se misturam frequentemente dependendo da situação. Tem uma excelente explicação sobre isso nesse artigo do Phillip “Shoes” Calçado. No Model 3 eu uso duas camadas físicas na implementação desse conceito, vamos a explicação.

O que é o Model 3

O Model 3 é conhecido nas listas de discussões de tecnologias WEB 2 como Model 2 + 1, alguém que não lembro propôs esse termo para o que estamos fazendo. Apelidei de Model 3 [2+1, criatividade heim!, sou foda nisso] para dizer que fui eu que criei o termo e fazer fama e sucesso, mas é mentira, isso já existe bastante tempo, inclusive não trouxe nenhuma tecnologia nova, apenas como organizar as coisas.

Significa que os Frameworks Model 2 são ajaxificados com Frameworks Javascript ou integrados com tecnologias RIA como XUL e Flex onde parte da responsabilidade de controle e toda a visão é transferida para o lado cliente, ou seja, a camada de apresentação [layer] inteira foge do lado servidor para a camada física [tier] cliente.

Onde entra as camadas e o MVC?

Observe na figura 1 que todo o processamento da camada de apresentação de uma aplicação usando um Framework Model 2 é realizado no lado servidor, em uma mesma camada física. No lado cliente só existe a exibição de uma página renderizada no formato HTML.
Model 2
Figura 1. Model 2.

Na figura 2 temos uma proposta de mudança para o processamento do Model 2, transferindo toda a apresentação para o lado cliente, com visão e parte do controle para uma tecnologia especialista nessa camada física.
Model 3
Figura 2. Separação em camadas do Model 3.

Há duas vantagens claras, melhor usabilidade por parte do usuário [quando bem construída a aplicação] e desafogamento do servidor em tarefas desnecessárias, como transformação em HTML.

Como construímos uma aplicação com Model 3?

Bem, uso DWR como cola entre as camadas físicas distintas, ele faz a transferência de entities de forma transparente na aplicação.

Para visão eu uso o ExtJS que assume toda a renderização na UI e, integrado ao DWR, coordena o controle da aplicação com uma usabilidade melhor do que a forma tradicional.

No lado servidor o Model segue Hibernate + Spring de forma tradicional usando o DWR como fachada entre o domínio e o controle com POJOS apenas.

Tanto na minha palestra quanto na do Handerson no último CCT, vi que muitos presentes não conhecem o DWR e pior, continuam usando Struts para desenvolvimento de novas aplicações. Nos próximos posts vou abordar mais profundamente esse aspecto do desenvolvimento WEB.

Java Magazine 60: Artigo sobre Frameworks Ajax

Caros, saiu na edição 60 [última edição até a data desse post] uma matéria minha sobre ExtJS.

A matéria é “Introdução ao Framework ExtJS” com subtítulo “Usando ExtJS como Framework Ajax em aplicações web”.

A idéia desse artigo é ensinar aspectos básicos que um Framework Ajax de propósito geral deve fornecer, exemplos de implementação no ExtJS. Além disso mostrar como está fundamentado o próprio ExtJS.

Esse artigo segue a trilha Ajax que estou escrevendo da qual iniciou na edição 54 com MVC Model 3 (ou 2+1 como também é conhecido) e vai continuar com uma matéria sobre “JavaScript Orientado a Objetos” que sairá na coluna QuickUpdate em alguma das próximas edições.

Estou escrevendo agora um artigo sobre ExtJS avançado, com estensão de componentes, integração com outros Frameworks como o DWRProxy que criei, FormPanel especializado se beneficiando da orientação a objetos do Javascript e de funções que a complementam implementadas pelo ExtJS.

Saiu nessa mesma edição matérias de outros cearenses como o Igo Coelho, mais informações no site do CEJUG.