Categoria IDE

Eclipse – Formatter e Save Action

Depois de ter falado sobre Code Templates para comentários no código, vou neste post falar sobre a formatação e como otimizar isso para lhe ajudar e não atrapalhar.

Muitos desenvolvedores tem problemas com o famoso Ctrl+Shift+F, que promete formatar seu código e muitas vezes acaba é deixando ele mais confuso.

Bem, o nosso padrão de código(se é que posso chamar assim) é muito diferente(ou um pouco depende) dos códigos dos gringos, ou seja, o Eclipse formata no padrão deles pode dizer assim ;) .

Para resolver esse “problema” o desenvolvedor tem que fazer uma configuração simples, mas um pouco chata(considerada por alguns) mas no pior caso será feita apenas uma única vez ;) .
Vá em Windows –> Preferences –> Java –> Code Style –> Formatter.

Vamos agora criar um novo profiler, clique em New e digite um nome para o seu novo profile.



Pronto, agora vamos personalizar, clique em editar.



Vou tentar falar um pouco sobre cada aba de opção.

Indentation
Nesta aba você vai selecionar a indentação em si e o tamanho dela, normalmente o tamanho da tab é 4.

Braces
Nesta aba você vai personalizar a posição das chaves(“{” , “}”).

White Space
Está é interessante, pois você poderá personalizar até os espaços em branco entre cada variável, método e assinaturas de todo tipo de objeto, desde strings até arrays e várias outras.

Blank Lines
Nesta aba você irá definir as quebras de linhas(linhas em branco) entres métodos, variáveis, pacotes e etc. Aqui você irá definir por exemplo que o espaço de linha entre a declaração de um package para um import seja de 2 linhas por exemplo.

New Lines
Nesta aba você define como um método vazio deverá ficar, se você deseja inserir uma nova linha neste método, definir também como um array declarado deverá ser exibido e identado, assim como uma annotation.

Control Statements
Esse é bem interessante mesmo, pois aqui você irá definir como seus else, IF, catch, while etc devem ser identados.

Line Wrapping
Neste você define o tamanho Maximo da coluna que uma linha pode comportar, como deve ser a identação de uma assinatura de um método, métodos declarados, enum, variáveis declaradas e etc.

Comments
Isso é referente a identação do Java Doc, blocos de comentários normais(//, /**/), qual o formato das tags HTML, espaço entre os textos do comentário e se desejar remover qualquer linha em branco que esteja no comentário.

Todas essa opções podem já serem visualizadas no código de exemplo ao lado de cada uma, facilitando assim a personalização.
Então supondo que você já criou e personalizou seu profile vamos agora tentar otimizar isso.

Para se utilizar do profile basta você executar o atalho dentro do código, que é o Ctrl + Shitf + F, pronto ele aplica a sua configuração personalizada.
Mas supondo que você criou um profile e quer sempre executar ele, fica meio chato você ficar sempre digitando o Ctrl+Shit+F correto ? Que tal otimizar isso ?

Save Actions
Vá em Windows –> Preferences –> Java –> Editor –> Save Actions.


Para ativar(caso não esteja) basta selecionar a opção “Perform the selected actions on save”.

Agora podemos adicionar uma formatação automática, selecione o Format source code e clique em Formatter.



Verifique se o seu profile está selecionado como profile ativo(Active Profile), clique em Ok e pronto, na próxima vez que você salvar(Ctrl + S) qualquer arquivo .java(classe) ele irá aplicar a(s) sua(s) configuração(ões) automaticamente.

Para definir como padrão para todos os integrantes da equipe, basta seguir os passos abaixo.

Vá em Windows –> Preferences –> Java –> Code Style –> Formatter –> Edit –> Export –> Salve seu profile.

Agora cada desenvolvedor irá poder importar toda a configuração de formatação de código, ou você mesmo poderá levar para onde quiser a sua formatação.

Simples não ?

Ações adicionais do Save Action

Se você quiser personalizar ainda mais a sua formatação é possível ainda inserir algumas formatações adicionais. Na tela de Save Actions temos o Configure onde você poderá definir mais configurações que serão executadas ao salvar qualquer classe Java.


Vou tentar explicar um pouco cada uma delas:

Code Style
Responsável em adicionar ou criar blocos fechados({, }) no bloco de IF/while/for/do.Definir se você quer parênteses em condições por exemplo:
(((i > 0) && (i < 10)) || (i == 50)) ou sem (i > 0 && i < 10 || i == 50).
Se quer adicionar o modificador final em todas os parâmetros onde seja necessário, e quais tipos de parâmetros(private, parameter, local variables).

Member Accesses
Usar o “this” em todos as variáveis e métodos locais ou somente onde for necessário. Como devem ser declarados os métodos e variáveis etc.

Unnecessary Code
Como o nome mesmo já diz, remove trechos de códigos desnecessários, como imports de classes que não existem dentre outras configurações.

Missing Code
Adiciona automaticamente as tags “@Override” e “@Deprecated” nos métodos.

Code Organizing
Organiza a ordem do métodos.

Bem essa são as formas simples de como otimizar o código, seja pela formatação dele ou até por simples comentários, mas essa é a intenção, não perder tempo com coisas simples e repetitivas ;) .

Abraços e espero ter contribuído com este artigo para agilizar o processo de desenvolvimento.

Eclipse – Code Templates

O Eclipse tem umas opções bem interessantes para personalizar seu ambiente da maneira que você desejar, uma delas é o Code Template, Formatter e Save Actions.

Cada desenvolvedor tem seu gosto por indentação, ou cada projeto segue um padrão para indentar o código, padrão de comentários etc. Com essas configurações fica tudo mais simples e pode ser reutilizável.

Vou mostrar aqui o caminho das pedras para configurar de maneira simples e rápida.
Primeiro vamos criar o Code Template para personalizar os comentários.

As vezes você deseja colocar mais informações do JavaDoc da sua aplicação, como nome do projeto, seu nome, data etc. Para não ter que sempre ficar repetindo(copiando e colando) o mesmo texto, basta se utilizar do Code Templates.

Vá em Windows –> Preferences –> Java –> Code Style –> Code Templates.

Selecione uma tag e clique em editar. Aqui você poderá colocar o texto que você quiser, na próxima vez que for utilizar ele irá colocar todo o texto que você criou e definiu automaticamente.

Tem também a opção Insert Variable que você poderá inserir uma variável que irá pegar os dados automaticamente e servirá para outros projetos, vou selecionar o ${projetc_name} que vai pegar o nome do meu projeto e inserir em todos os métodos que eu for utilizar esse comentário.

Neste exemplo fiz somente para o Methods, mas você poderá fazer para todos se desejar.
Vamos ver como utilizar.

Acima do método digite “/**” e dê um ENTER.



Observe que ele colocou o nome do meu projeto no comentário, e foi simples e rápido. Você poderá inserir várias outras tags.



Vou descrever aqui algumas:

Variável Descrição
date insere a data completa no Java doc
dollar insere um símbolo $
enclosing_method insere o nome do método
enclosing_type insere o nome da classe ou tipo do objeto que a classe representa
file_name insere o nome do arquivo.java
package_name insere o nome do pacote em que a classe se encontra
todo insere um TODO no método
user insere o nome do usuário no método
year insere o ano no método

Vamos ver agora como reutilizar esse Code Template.

Depois de ter personalizado tudo, vá em Windows –> Preferences –> Java –> Code Style –> Code Templates –> Export –> e salve seu XML.
Para reutilizar basta ir em Import e selecionar seu arquivo.

Uma dica, para não ter que fazer todo esse caminho manualmente, quando você abrir a tela de preferences clique em type filter text que se localiza no canto superior esquerdo da janela de preferences e digite o que você quer abrir, por exemplo: Code template. O eclipse já vai mostrando todas as opções que tem esse texto, simples não ? ?

Na próxima falaremos sobre o Formatter(Ctrl+Shift + F) e como otimizar esse processo com o Save Action.

Abraços

Pulse

Interrompendo um pouco a série sobre “Criando uma lista na sessão com DWR” venho com um post no mínimo interessante.

Esses dias vendo algumas notícias sobre o MyEclipse vi um plugin bem interessante, o Pulse.

Mas o que seria esse Pulse ?

Bem o Pulse é tipo um plugin que facilita você obter, configurar e administrar os produtos do Eclipse. Falando em miúdos com ele é fácil você instalar o eclipse sem precisar acessar o site.
O arquivo do Pulse contém apenas 2mb facilitando assim você transportar o programa e na sua instalação você escolhe o que você quer instalar(Veja abaixo o passo a passo).

O Pulse não se limita apenas a baixar um eclipse e instalar, ele tem o chamado de Full Catalog onde você poderá selecionar vários softwares gratuitamente. E se você se cadastrar você ainda poderá compartilhar com amigos o seu profile, isso poderia ser utilizado para manter um padrão de IDE que seu grupo poderá utilizar.

Você monta seu profile depois compartilha o mesmo, então os membros da sua equipe acessam e baixam o mesmo IDE que você tem, facilitando e padronizando seu ambiente de trabalho ou caso você tenha um ambiente montado em sua casa com seus plugins preferidos você poderá levar para onde você quiser(claro podemos zipar todo o eclipse e levar em um PENDRIVER) e depois é só baixar que ele instalar tudo para você(detalhe, o pulse promete uma super velocidade para baixar o eclipse sendo mais rápida do que no próprio site, eu senti que foi bem mais rápido mesmo) é uma idéia bem interessante.

Mais detalhes no final do post.

Vamos ver agora passo a passo a sua instalação.
Acesse: http://www.poweredbypulse.com/download_win.php
Após baixar execute o programa e siga os passos.

Passo 1: Executando o programa

Passo 2: Iniciando a instalação

Passo 3: Se você não quiser se registrar(é rápido, simples e free ;D) você poderá utilizar a opção Anonymous, mas neste caso a customização do profile não será possível(não tenho certeza pois não testei).

Passo 4: Registrando-se

Passo 5: Nesta tela você seleciona qual o “tipo” de Eclipse que você deseja, no nosso caso vamos selecionar o JAVA.

Passo 6: Selecionando o Eclipse Europa for Java. Caso você deseje já ir baixando outros plugins além do que ele mostra é só clicar em More ou Full Catalog e criar a seu gosto.

Passo 7: Depois de selecionar e apertar o NEXT é só aguardar o pulse baixar e configurar seu Eclipse.

Passo 8: Instalando o Eclipse

Pronto seu eclipse está pronto para ser utilizado. Os passos abaixo é para caso você deseje personalizar ainda mais seu eclipse e montar seu profile personalizado, para em qualquer lugar você poder baixar já pronta toda a sua IDE.

Passo 9: Após o pulse ter baixado e configurado seu Eclipse vá em Show View do Eclipse e selecione o Other.

Passo 10: Selecione Other e Pulse Explore para abrir o Catalog do Pulse.

Passo 11: Explore do Pulse onde você poderá customizar seu profile.

Bem, achei a idéia bem interessante, claro que tem suas vantagens e desvantagens mas depende do contexto, para quem não quer levar mais de 200mb do eclipse em um pendriver pode levar apenas um arquivo de 2mb e deixar ele fazer o trabalho para você. Então está ai a dica ;D.

Site: http://www.poweredbypulse.com/index.php
Mais sobre o Pulse: http://www.poweredbypulse.com/why.php
Donwload: http://www.poweredbypulse.com/download_win.php
Vídeos explicativos: http://www.poweredbypulse.com/demos.php

Abraços

Debugando JavaScript com FireBug

Foi publicado essa semana mais um artigo meu na JavaMagazine. Neste artigo eu falo sobre como utilizar o FireBug para debugar um código JavaScript.

Me motivei a fazer esse artigo pois muitas pessoas entram em contato comigo para tirar dúvidas de Ajax(DWR e afins) ou para ajudar na resolução de alguns problemas. E nesse tempo observei que vários desses problemas poderiam ser resolvidos ou remediados mediante uma ferramenta de debug para JavaScript. Existem várias dessas ferramentas no mercado e uma que sempre uso e gosto muito é o FireBug.

Observei também que mesmo tendo essa ferramenta instalada no FireFox muita gente não usa essa excelente funcionalidade, então esse artigo foi exatamente para ensinar como usar, desde a instalação até o próprio debug.

Espero que gostem do artigo pois está bem detalhado.

Link para o artigo: http://www.devmedia.com.br/articles/viewcomp.asp?comp=7143