Junho de 2007


Seguindo as tendências do mercado para os próximos anos e apresentadas no Java One 2007, criei um modelo para aplicações baseadas em WEB 2.0 usando os conceitos de AJAX, e baseado no framework DWR (Direct Web Remoting) (http://getahead.org/dwr/) associado a EJB3 e JPA da Java EE 5.

Para a Interface com o Usuário, foram escolhidos os Widgets do EXT JS (http://www.extjs.com) que combinados com páginas JSPs permitem a geração dinâmica da UI (Interface do Usuário).

Com o uso extensivo de CSS e de DIVs (TABLELESS), pode-se trocar imagens e mudar o visual facilmente, criando o conceito de temas.

A integração do DWR com os Serviços da Aplicação baseados em Façades e Delegates implementados com SessionBean Stateless funciona muito bem, deixando o controle de transações a cargo do EJB Container

E como o maior problema de qualquer aplicação grande é ligar a camada de serviços com a camada de persistência, adotei a estratégia de usar o padrão de DAO (Data Access Objects) abstraindo as chamadas de NamedQueries do JPA

O resultado foi muito bom, o que levou a batizar este modelo de Fast Dev Framework, que combinado á componentes já consolidados na comunidade Java, fornece mecanismos de filtro, paginação, relatórios, autenticação, autorização em bancos de dados ou LDAP, mecanismos de mensageria, scheduler, sem esquecer de logging e auditoria, permitindo a criação de aplicações complexas com qualidade, aderentes ao padrão Java EE e em tempo recorde!


Este framework está testado e homolgoado para:

  • WebServers: SUN, APACHE e IIS
  • AppServers: Java EE 5 .
  • DBServers: Oracle e MySQL.

  • Fast Dev Framework

    PageRank

    Recentemente avaliei um Engine de GRID composto de uma API simples e extremamente robusto capaz de executar tarefas num ambiente de GRID 100% Java, sem depender de nenhum outro software terceiro

    O JPPF (Java Parallel Processing Framework) permite escrever aplicações Java que se beneficiem de mecanismos de provisionamento de dados e execução de tarefas de longa duração em ambientes de GRID, com monitoramento simplificado e com uma diminuição considerável dos tempos de processamento

    O ambiente de execução é composto de:

    • um DRIVER que é responsável por monitorar os nós do GRID bem como distribuir as classes Java (Remote Class Loading) das tarefas (Task) para os nós
    • um ou mais NODES que são responsáveis por executar as tarefas

    O DRIVER e cada um dos NODES roda em uma JVM (Java Virtual Machine) exclusiva, que pode estar inclusive em servidores de menor porte ou de grande porte aplicando conceitos de virtualização bem como configurar e gerenciar cada um dos NODES adequadamente.

    Topologia:

    Topologia JPPF

    Caso sua empresa necessite de diminuir os tempos e os custos de processamento de BI, ETL e DW, podemos desenvolver soluções específicas baseado nesta tecnologia

    Referências: JPPF.org

    PageRank

    Como nesse páis nada é sério, a regulamentação da TV Digital no Brasil tem intenções de bloquear a gravação do sinal para formatos de mídia como CD ou DVD conforme notícia veículada .

    Tal ato só irá criar ainda mais marginalização no nosso país pois estimulará os harckers a criar chips decoficadores que permitirão a gravação, criando mercados paralelos, como acontece com consoles de jogos, CDs, DVDs e etc.

    Seguindo os preceitos do direito natural, fazer uma cópia de qualquer objeto com direito autoral reservado e protegido só constitui crime no caso de comercialização ou distribuição em prévia autorização do autor/proprietário da obra.

    Tenho total direito copiar meus CDs/DVDs para protegê-los do desgaste, bem como de gravar meus programas te TVs preferidos e assistí-los onde e quando eu desejar.

    Vamos distribuir essa notícia por ai e formar opniões a fim de evitarmos tal atrocidade.

    PageRank

    Manual prático do “Bem viver”, por Claudio Augusto Teixeira

    1. Defina seus objetivos: “Nenhum vento sopra a favor de quem não sabe onde vai.”

    2. Tenha consciência dos seus atos: Você é responsável por aquilo que cativas!

    3. Afirme somente se tiver certeza; acredite somente se lhe derem fatos; gaste somente se souber de onde tirar os fundos; coma somente se tiver fome; durma somente se tiver sono e, em caso de dúvida, fique na sua e siga seu próprio nariz.

    4. Abrace muito, beije mais ainda e ria, já que a vida é de graça.

    5. Peça - sempre haverá alguém que lhe dará o que você está precisando.

    6. Despeça-se do que já passou - quem vive de passado é museu.

    7. Pare de se preocupar. Suas desgraças nunca serão do tamanho que você pensa. Nem seus êxitos.

    8. Perdoe-se por suas burrices e fracassos. Se você não se perdoar, vai ser inútil pedir desculpas ou dizer “sinto muito” a quem quer que seja.

    9. Reze para agradecer, nunca para pedir. Você já recebeu mais do que suficiente para crescer e ser feliz.

    10. Não perca tempo em discussões inúteis. Ao invés de brigar, cante uma canção do JQuest, tome um banho frio ou vá dar uma volta de bicicleta no parque.

    11. Desista de fazer a cabeça dos outros:
    - o que eles pensam de você não é da sua conta.


    Adote a filosofia do CAVALO NA PARADA DE 7 DE SETEMBRO: “cagando, andando e sendo aplaudido”.

    12. Cuide de si mesmo como se estivesse cuidando do seu melhor amigo.

    13. Expresse a sua individualidade. Apóie-se em seus talentos e virtudes. Concentre-se em seus objetivos. Pare de fumar, e faça ginástica 3x por semana. Mude algo em si mesmo todos os dias. Abra-se com alguém.

    14. Faça alguma coisa que sempre desejou fazer, que pode fazer, mas que tinha vergonha.

    15. Cometa erros novos.

    16. Simplifique sua vida.

    17. Deixe bagunçado.

    18. Pare de frescura.

    19. Acredite no amor nada no mundo é mais digno de crédito. AME, não é vexame nenhum.

    20. Nunca pense que o amor é uma “água morna”. Onde há amor há respeito pelas diferenças, onde as diferenças são aceitas. Existem pontos de vista contrários, e onde existem pontos de vista contrários, há conflitos e desentendimentos.

    21. Não se intrometa na vida dos outros, nem julgue as pessoas de jeito nenhum. Deixe-as ser como são e curta o melhor de cada uma.

    22. Grandes amizades não se perdem em pequenas disputas. Se se perderem, é porque não eram nem amizades, muito menos grande.

    23. Leia o que está escrito, ouça o que é dito e, se não compreender, pergunte. Não tenha vergonha de perguntar o que não sabe. É assim que se aprende.

    PageRank

    Outra entrada de meu blog.

    Fonte: 2 Solutions - Hildebrando

    Utilizo a tecnologia Java em todos os projetos da 2Solutions, com raras exceções. Com isso acabei me tornando um especialista. Tenho consciência que não sei tudo, aliás acredito que não existe aquele “especialista de tudo”.

    Quero indicar alguns caminhos para qualquer um virar um especialista Java. Com certeza ja existe algum texto semelhante na internet (google), no entanto quero fazer uma coisa diferente, focada no perfil do nosso pessoal. E como eles viraram especialistas também.

    1 - Faça uma faculdade de tecnologia
    Existe muita discussão neste assunto, precisa ou não precisa fazer uma faculdade para entrar no mercado de trabalho de TI. Uma coisa que aprendi na minha carreira de instrutoria Java é que só o fato de a pessoa fazer uma faculdade, as coisas acabam fluindo mais fáceis. Se você vai fazer ou não, fica a seu criterio, porém saiba que nem todo mundo é auto-didata, inclusive a grande minoria. Mesmo a faculdade sendo dispersiva em alguns assuntos, como as inúmeras materias de matemática em Ciência da Computação, tudo acaba agregando na sua formação.

    2 - Faça um curso de Java
    Existem livros, tutorias, apostilas, exemplos e mini-cursos que ajudam muito no seu aprendizado. Porém você tem que ter experiência com este estudo auto-didata. Exige disciplina e organização. A ideia de fazer curso envolve apenas 2 variaveis. Tempo e dinheiro. Se você tem tempo e não tem dinheiro estude em casa. Se você tem dinheiro e não tem tempo faça um curso.

    Java em si é uma lingaguem simples.O grande problema é a parte de orientação a objetos. Isso é complicado. Envolve conceitos de alto nivel e abstrações. Aprender Java é diferente de aprender VB que você compra uma revista na banca e naquele mesmo dia você ja tem algo funcionando. É por isso que eu indico fazer cursos.

    3 - A unica coisa que começa de cima é buraco
    Tradução para paciência. Nesta hora precisamos ter humildade e seguirmos o papel de aprendiz. Você pode ser especialista em outras linguagens ou ja ser um cara que conhece muito de Hardware, no entanto com linguagens de programação o papo é diferente. Voce tem que aprender as manhas. Apanhar muito. E acima de tudo pergutar. Entre em foruns e listas de discussão. Mande duvidas, sempre seguindo as boas maneiras nestes ambientes.

    4 - Arrume um trabalho na área
    Essa parte é a mais difícil, porque as empresas so querem gente com experiência. Dai aparece o problema do ovo e da galinha. Sugestão: Faça projetos seus. Desenvola uma agenda, um cadastro de estoque da sua casa, um controle de gastos com combustível. Eu faço um trabalho de seleção aqui na empresa e para mim um projeto pessoal ou academico serve sim como experiência, e inclusive tem um atrativo a mais pois demonstra pró-atividade.

    5 - Banco de Dados
    Não pense em se tornar um especialista de banco de dados. Você tem que conhecer SQL. O banco é indiferente. Mas aproveite e faça o seguinte. Entre no site do MySQL e baixe o MySQL e suas ferramentas. Falo do MySQL pois considero a versão para Windows muito NNF (Next,Next,Finish), isso é bom para quem esta começando. Fazer um curso de SQL pode te ajudar muito, porém não é imprescindível, SQL é um pouco mais simples que as linguagens de programação de alto nível. Porém cai naquele mesmo assunto que conversei.

    6 - Tenha contatos da área
    Não estou falando em ter melhores amigos na área e sim formar uma rede de conhecidos que tenham o gosto pela tecnologia como característica comum. Nos cursos voce conhece muita gente, outros lugares são os eventos. Acho que as unicas panelas que existem nos eventos são dos que estão palestrando e dos que não estão palestrando. Não precisa comprar o livro ‘como fazer amigos’, apenas vai se misturando com pessoas que estão em situações parecidas com a sua. Isso vai ajudar a todos.

    7 - Atividades e Cronograma (Estratégia Auto-didata freestyle)
    a) Compre um livro de Java Fundamentos - 1 dia
    b) Leia o livro (pois é, só comprar não adianta) - 1 mês - Se você achou muito é porque nunca leu um livro de tecnologia. Estas não são leituras narrativas. Você tem que sempre voltar, reler e refazer exercícios.
    c) Compre um outro livro de JEE - 1 dia - Esta parte JEE é a que envolve WEB e Serviços de mais alto nível. Resumindo, é aonde esta o dinheiro ($$$$$). NUNCA COMECE POR UM LIVRO DE JEE SEM ANTES PASSAR PELOS FUNDAMENTOS.
    d) Leia o livro, faça os exercícios e desenvolva um sistema de cadastro de Jogadores de futebol. Utilizando JSP/Servlets e JDBC - 1 mês
    e) Desenvolva um outro sistema de cadastro, porém agora um de animais em um zoologico - 1 mês
    f) Faça o seu curriculum ja incluindo os projetos que você desenvolveu. Junto a isso vá estudando frameworks de mercado como Struts e Hibernate - 1 mês

    Não quero discutir a qualidade do profissional após o cronograma. No entanto você ja esta encaminhado para iniciar no mercado. É isso mesmo, INICIAR. Você é um iniciante no assunto. Tem muito que aprender. Uma faculdade ira te ajudar e muito nisso, porém tenha paciência. Quanto a dinheiro e conhecimento. Não queira aprender tudo e seja humilde o suficiente para aceitar a sua situação de aprendiz.

    Boa Sorte

    PageRank

    Colocando aqui um post que tinha colocado em meu blog.

    Pra quem gosta de aprender por exemplos, um link bastante legal:

    A Sun disponibilizou alguns exemplos de programas em Java 6, bastante didático.
    Basta entrar ver o código, executar e copiar para usar.

    No momento tem um código para criar um ícone na barra de tarefas, como fazer uma tela de entrada (splash screen) e como usar o Rhino Javascript API.

    http://java.sun.com/reference/stealourcode/

    PageRank