terça-feira, 21 de abril de 2009

Utilização de Profiles nas aplicações

profiles

A pouco tempo senti a necessidade da utilização de uma ferramenta de Profiling para tentar identificar um  bottlenecks(gargalos) em algumas funcionalidades que estavam com o desempenho comprometido. Essa ferramenta é ideal para analisar o comportamento da aplicação e identificar partes que precisariam ser otimizadas.

Pesquisando vi que existiam um para cada tipo de IDE utilizado no mercado. Então resolvi apresentar as ferramentas de profiling das IDE´s mais utilizadas no mercado: Netbeans, Eclipse e IntelliJ.

Acho interessante a utilização de ferramenta de profiler para testes de implementações de casos de usos, apresentando relatórios de desempenho, validando até requisitos não-funcionais como tempo de resposta por exemplo.

Profiler do Netbeans:

Profiler Netbeans 
Pode armazenar valores off-line, pode controlar a quantidade de memória utilizada, tempo gasto em cada método. Possui perfis baseado em tarefas, Heap Walker, profile points onde podem ser coletados dados e snapshots apartir daquele ponto e etc.

Essa ferramenta de profilling já vem acompanhada com a IDE.

Para eclipse existe o JProfiler, também suportada para Netbeans. No site do plugin apresenta os 10 motivos para se utilizar o JProfiler. É uma pena não ser uma ferramenta free e não vem com o eclipse, mas existe outros plugins para profile.

A IDE IntelliJ também possui plugins de profiling, suportando também o JProfiler, IntelliPROF, DevParter entre outros.


Ferramentas de Profiling apresentam características comuns como relatórios de performace de CPU, memória utilizada pela aplicação, monitoramento das threads, criação de gráficos de chamadas de métodos e tempo gasto em cada método.

Aproveite a utilidade dessa incrível ferramenta. Ótimização sempre! Enjoy!

Postar um comentário

quarta-feira, 15 de abril de 2009

Java Fluent Interface

java_fluent_interface

Existe um estilo de implementação conhecido como Fluent Interface, encontrei referências chamando também de encadeamento de objetos, que está ganhando espaço entre os programadores (eu não sabia, descobri isso a pouco tempo) e que parece ser uma forma interessante de implementação.

Essa forma de implementação é um pouco incomum, do que se ver normalmente em implementações Java, como métodos set que retornarem um objeto ou this ao invés de void e a utilização de chamadas de métodos encadeadas.

As vantagens são interessantes, podendo deixar o código mais fluente e com uma legibilidade bem natural, facilitando o entendimento do código. Um framework que utiliza fortemente Fluent Interface é o JMock.

Um exemplo muito simples de Fluent Interface:

image

E a forma “normal” de fazer seria algo parecido com:

image

Onde podemos identificar também que se pode encapsular alguns objetos, poupando o tempo do desenvolvedor e (insisto nessa vantagem) melhorando a legibilidade do código.

Existem outras referências como o livro de Martin Fowler, que é referência para esse post. Então fica mais uma dica aí!

Postar um comentário

sexta-feira, 10 de abril de 2009

Insert Coins para esperança

games_filmes

Como grande fã de games, animes e filmes, existem os filmes que foram criados a partir de games, animes e vice-versa, mas vamos focar em filmes que foram feitos baseados nesses tipos. Mas existe uma terrível fama sobre esses filmes e até revolta de muitos fãs, por que o filme acaba fugindo do contexto devido a adaptações para a telona.

Falarei de filmes e games que assisti, joguei e dos games que gostei.

Começarei com Double Dragon a história de dois irmãos Jimmy Lee e Billy Lee que tinham que resgatar sua namorada. O filme não é grande coisa, as lutas são fracas, os personagens não eram nada parecidos com os do game. Diferente do game que em todas as versões, em todos os consoles, são muito bons.

 ddMovie3

Até hoje não sei de quem era a namorada, pois eles brigam por ela no final na versão pra Master System. Até o OBO, aquele cara vermelhão da foto, está do lado deles no filme.

dd1 

Mas as esperanças de nós fãs ainda não tinham acado, em 1994 surge o Street Fighter: A batalha final! Esse filme TINHA que ser bom, com participação de Raul Julia como M. Bison e Van Dame como Guile que é personagem principal da trama.

sfMovie

Mas deixar Ryu e Ken “de lado” realmente não agradou aos fãs da saga.

sf2

Até a Chun-Li do jogo é mais bonita do que a do filme. Mas vale a pena acompanhar a última interpretação de Raul Julia, que morreu em dezembro do mesmo ano. Um adendo: para quem acha que o Street Fighter começou da versão II

sfCapas

Em 1995 eis que surge Mortal Kombat, um pouco mais fiel ao game em relação a história dos guerreiros da terra no torneio de artes-marciais do Outworld.

mkCapas

Com muito menos violência do que esperavamos, mas com lutas legais e personagens parecidos com os do game. Destacando para as lutas de Scorpion & Cage e Liu Kang e Sub-Zero. E a medida que iam lançando novas versões do games, alguns personagens novos eram adicionados, mais fatalities e combos.

image Mas nas continuações do filme não acompanharam as versões dos games em relação as lutas e diversão.

scorpion

Outro filme que entra na lista é Lara Croft: Tomb Raider, lançado em 2001. Filme muito bom, que soube representar bem as cenas de ações, mas que deixou a desejar na criação de clima que envolve o jogo.

trCapas E mais uma coisa, Angelina Jolie nunca vai ser tão gostosa quanto Lara Croft. Ponto final.

Não poderia deixar de comentar um jogo que gosto muito e do filme nem tanto, é Resident Evil, atualmente o game está na versão 5, que por sinal é muito bom e cada vez mais real.

 reCapas Com relação ao filme não assisti toda a trilogia faltando Resident Evil 3 A Extinção, mas prometo assistir para avaliar melhor esse filme em relação ao jogo.

Poderia falar de vários outros filmes de games como Doom, Final Fantasy, Silent Hill, entre diversos outros, mas o post iria ficar gigante, então falei dos que assisti e de jogos que gostei.

Mas o principal motivo desse post é pra falar do filme Dragon Ball Evolution e novamente a esperança de ter um filme que seja fiel ao jogo (e ao anime). O que espero do filme é lutas incríveis, destruíção em massa e muitos KAME-RAME-RÁ’s. Vamos ver se a esperança ainda continua ou se teremos finalmente um “filme fiel”.

P.S.: Esse post foi agendado e no momento da sua publicação estarei no cinema vendo o filme Dragon Ball Evolution. Aguardem mais comentários.

Postar um comentário

quarta-feira, 8 de abril de 2009

Freelancer é o futuro?

freelancer

Conversando com Fred um amigo do trabalho e ele comentou sobre um cara que conheceu no congresso que foi, falando que ele vivia só de fazer trabalhos como freelancer ou freela como é mais conhecido. Seguir esse ramo pode trazer algumas vantagens como: trabalhar em casa, fazer seus horários, ganhar por hora, ser seu próprio patrão, flexibilidade de orçamentos, desafios, escolher trabalhos e etc.

Notei também que tem muita gente seguindo esse caminho, abandonando as formalidades de um trabalho “fixo” por essa opção. Mas como todo inicio devem surgir dúvidas de quanto cobrar, riscos e perigos. Existem alguns sites que cadastram projetos para quem quer trabalhar como frela como Freela. Mas o que quero destacar mesmo é o site ODesk onde tem vários trabalhos na área de TI como desenvolvimento e webdesigns e o melhor é que você ganha em dólar. Pretendo começar nesse ramo de freela, parece ser bastante interessante.

Bom fica a dica aí!

Postar um comentário