Pontos Importantes para o desenvolvimento de uma arquitetura de comunicação Flex – Grails – Flex

No Desenvolvimento de aplicações onde a camada de apresentação se torna muito complexa, a mesma tende a formar uma necessidade de controle maior em sua arquitetura interna. Pensando em Flex como Front-End de uma aplicação, devemos inserir alguns padrões de projetos arquiteturais para organizar a “bagunça”. Tal problema pode ser resolvido utilizando a chamada microarquitetura MVC para a camada de apresentação.

Mas mesmo dominando e mantendo a arquitetura MVC na apresentação, alguns problemas surgirão no desenvolvimento da arquitetura de comunicação com os servidores de aplicação. Trabalhar com DTOs, comunicações das mais variadas maneiras tanto síncronas como assíncronas, se torna um item de grande complexidade em projetos Grails Flex.

Tendo essa complexidade em mente, podemos, então, levantar alguns pontos importantes – uma checklist – para o processo de modelagem da arquitetura de comunicação entre o Back-end Grails e o Front-end Flex:

Estrutura de Comunicação
Usaremos comunicação Síncrona?
Usaremos comunicação Assíncrona?
Dados enviados por DTO em quais casos?
Utilização de JMS para algum caso?
Estrutura Flex
Implementação de Testes usando FlexUnit
Criar Interface Facade para Flex
Validação de Objetos Flex
Definir o uso de Listeners para serviços remotos.
Usando Cairgorm, definir VOs, events, commands, delegates e responders
Tratar Relacionamentos de Objetos recebidos.
Mate Framework seria interessante para eventos internos?
É preciso modularizar os componentes?
Estrutura Grails
Definir Uso do Flex Plugin
Podemos usar o Dozer para tratamento e envio de requisições?
Criar Interface Facade para Grails
Incorporar Grails Flex Scaffolding
Validação de Objetos Grails
Definir lista de serviços remotos genéricos e específicos.
Definir escopo de atuação e interação entre serviços.
Criar Interface com Banco de Dados para casos específicos.
Tratar Relacionamentos de Objetos recebidos.
Tratar Erros no Servidor de aplicação

Diante desses pontos, podemos citar alguns outros mais relevantes? Alguns não tem validade teórica para o escopo de arquiteturas de comunicação? Opine! Deixe um comentário 🙂

LiSimplex – Simplex Solver – Implementação de um Solver Simplex em Java

Durante a disciplina de Pesquisa Operacional, tive grandes dificuldades com relação à um trabalho: implementar um solver simplex que seria capaz de resolver sistemas com restrições de igualdade e desigualdade (<=, =, >=). Tal problema pode ser resolvido implementando, em java, uma aplicação capaz de resolver tal proglema, E isso foi feito!

Desenvolvemos, então, o solver LiSimplex. O LiSimplex resolve, via Big M (M Grande), o problema formado pela funcão objetivo, as restrições e a forma de resolução (Maximizar ou minimizar).

Continuar lendo

XIII Semana de Engenharia Elétrica e da Computação

A XIII Semana de Engenharia Elétrica e da Computação, Engenharia Aberta, será realizada entre os dias 18 e 22 de maio no auditório da Faculdade de Educação e na Escola de Engenharia Elétrica e de Computação (EEEC) da UFG, localizadas na Praça Universitária, Goiânia. Com o tema “Inovação, Empreendedorismo e Desenvolvimento Regional”, o evento promoverá palestras, mesas-redondas, minicursos e espaço para apresentação de produtos e serviços de patrocinadores e entidades parceiras das engenharias.

Alguns dos temas tratados serão: computação, eletrônica, controle e automação, engenharia de software e tecnologia da informação. Serão ministrados mini-cursos na área de T.I, como Avaliação de técnicas de teste de software para dispositivos movéis utilizando J2ME, Desenvolvimento com Interface Rica – Flex e GWT, Windows Presentation Fundation e C#, Metodologias Agéis de projeto e Java. A novidade da edição deste ano é o tema Desenvolvimento Regional, que aborda a importância do engenheiro para o desenvolvimento econômico e tecnológico de sua região.

Mais informações em http://www.infoq.com/br/news/2009/05/engenharia-eletrica-computacao

Desenvolvendo Aplicações RIA/Flex/Flash em qualquer SO e de graça

Nos meus aprendizados recentes relacionados a Grails/Flex/GraniteDS, acabei me deparando com um problema que foi motivo de pensamentos: Por que não desenvolver usando ferramentas gratuitas? Qual seria a complexidade gerada pela troca de ferramentas de desenvolvimento pagas por ferramentas gratuitas ou Opensource? Seria economicamente viável a troca?

Vale a pena mudar?

Em Flash/Flex, a maioria das aplicações que auxiliam no desenvolvimento são proprietárias. As principais são propriedade da Adobe (detentora da patente dessas tecnologias), porém há várias ferramentas que podem substituir os pacotes de produção da Adobe. Certamente, a performance do desenvolvimento e a qualidade do produto de software gerado não serão as mesmas, a complexidade de algumas tarefas aumentará e muito provavelmente o processo de desenvolvimento ágil pode dar lugar a um processo lento e dramático para desenvolvedores e analistas.

Continuar lendo

Certificação Adobe Flex 3 – Informações

Bom dia,

Estive pesquisando sobre certificações e encontrei algumas informações interessantes acerca da certificação em Flex que a adobe possui. Com o custo de $150 dólares, a certificação tem como objetivo reconhecer a capacidade dos desenvolvedores em implementar aplicações em ambiente Web ou AIR usando o Adobe Flex 3.

O guia de estudos com exemplos e o que estudar para a certificação pode ser encontrado aqui. Nesse documento, pode ser encontrado todos os tópicos de estudo e informações acerca da aplicação da prova.

Para a aprovação, o estudante deve fazer pelo menos 67% das 50 questões.

Continuar lendo

Serial da Versão Estudantil do Adobe Flex Builder 3

Bom, esse é um tópico mais informativo. É sempre bom encontrar esse tipo de informação específica por aí.

Para quem nao gosta de trabalhar naquele esquema “Sempre Pirata”, a Adobe disponibiliza um sistema para doação de seriais do Adobe Flex Builder 3 para estudantes de Flex.

Para conseguir o serial, registre-se na Adobe (o cadastro é gratis).
Entramos então em https://freeriatools.adobe.com/flex/

Na página que se abre, aceite os termos e clique em “Student”

Na página seguinte, preencha todos os campos. Há um campo especial nesse formulário: Student ID. Eles pedem uma cópia de um comprovante de matricula ou algum documento que comprove sua origem acadêmica.
Feito o upload da imagem ou PDF, clique em submit.

Agora, a Adobe irá avaliar e, se aprovado, irá mandar o serial via e-mail num prazo máximo de 3 dias.

Lhe foi útil? deixe um comentário… 😀

Aplicando TDD ( Test Driven Development ) com Adobe FlexUnit

Muitos de nós já ouvimos e compreendemos a importancia dos testes no processo de desenvolvimento de software tanto em pequena quanto em grande escala. O teste por si só nos dá a segurança de construção, atualização e manuntenção dos projetos que os implementam. Linguagens bem difundidas como Java, PHP ou C++ já têm uma vasta aplicabilidade dos testes para uma boa producao de software de qualidade.

TDD (Test Driven Deployment) ou Desenvolvimento Dirigido a Testes é uma técnica aplicada ao desenvolvimento de software que utiliza alguns conceitos ágeis de desenvolvimento que tange as pequenas Iterações nas quais os casos de teste sempre sao os primeiros a serem escritos. Todos os testes, ao final de cada iteração devem ser realizados com sucesso, caso contrário, a iteração tende a falhar.

De qualquer forma, devemos sempre desenvolver alicacoes tendo como base as ideias de TDD. Dessa forma, consegue-se uma qualidade de software relativamente grande e uma economia de tempo e, consequentemente, de dinheiro.

Continuar lendo

Mate Framework – Desmitificação [Parte 1]

Mate Framework Logo

Mate Framework Logo

Bom, como era de se esperar, estou eu cá para apresentar a vocês uma visão geral do que esse framework pode oferecer aos desenvolvedores Flex e àqueles que, como eu, batalham para pegar algo novo.

O Framework

Desenvolvido e mantido pela ASFusion desde junho de 2008 o Mate (ma-tei) Framework consiste num framework Flex (definido pelos seus criadores) tag-based, event-driven. Nada mais é que um framework onde toda a direção é feita através de eventos, o que vem para tornar a vida do desenvolvedor mais fácil e ágil, principalmente no controle de eventos das aplicações Flex. Tag-based refere-se à sua implementação que é feita inteiramente por tags (<…>).

O Mate nos permite definir qual EventHandler está tratando cada evento, se os dados pertinentes da aplicação devem ser obtidos a partir do servidor, ou se outros eventos devem ser acionados. Isso tudo em tempo de execução.

Além disso, o framework também faz a tão famosa injeção de dependências (alvo de um futuro post) para fazer com que diferentes partes do projeto utilizem dados e serviços que eles necessitarem sem se preocupar com a instanciação dos mesmos.

Continuar lendo