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.

32.363 Comments on “Eclipse – Formatter e Save Action

  1. hi!,I like your writing very a lot! proportion we keep in touch extra about your post
    on AOL? I need a specialist in this area to resolve my problem.
    May be that is you! Having a look ahead to peer you.

  2. This is very interesting, You are a very skilled blogger.
    I’ve joined your feed and look forward to seeking more of your
    great post. Also, I have shared your site in my social networks!

  3. Admiring ttһe рesistence you put into your blog and detailed information youu present.
    It’s aweѕome to coe across a blog every onc in a while that
    isn’t the same ߋut of date rehashed material. Excellent read!
    I’ve bⲟokmarked yߋur sіte and I’m ɑdding your RSS feeds to my Gogle accօսnt.

    Feel free to surf to my web blog: cacker

  4. Great beat ! I wish to apprentice at the same time
    as you amend your web site, how can i subscribe for
    a weblog website? The account aided me a applicable deal.
    I were a little bit familiar of this your broadcast offered
    vivid clear idea

  5. This is the perfect web site for anybody who would like to
    find out about this topic. You understand a whole lot its almost hard to argue with you (not that I really would want to…HaHa).
    You definitely put a new spin on a subject that has been written about
    for a long time. Excellent stuff, just excellent!

  6. Heya i am for the primary time here. I came
    across this board and I find It really useful & it
    helped me out a lot. I’m hoping to offer something again and help others like you aided me.

  7. Let me give you a thumbs up man. Can I show my hidden information on amazing values and if you
    want to have a checkout and also share valuable info about how to learn SNS marketing yalla lready know follow me my fellow
    commenters!.

  8. Heya! I’m at work browsing your blog from my new iphone 3gs!

    Just wanted to say I love reading your blog and look forward to all your posts!
    Keep up the superb work!

  9. Having read this I believed it was extremely enlightening.
    I appreciate you finding the time and effort to put this
    article together. I once again find myself personally spending a lot of time both reading and posting comments.

    But so what, it was still worth it!

  10. My developer is trying to persuade me to move to .net
    from PHP. I have always disliked the idea because of
    the expenses. But he’s tryiong none the less. I’ve been using Movable-type on several websites for about
    a year and am anxious about switching to another platform.
    I have heard very good things about blogengine.net.
    Is there a way I can transfer all my wordpress content into it?

    Any help would be really appreciated!

  11. 3.6.4. Меры безопасности в горах Камнепады. Образуются в результате постоянного разрушения скал под влиянием выветривания пород, в связи с резкими колебаниями температур, замерзания в трещинах воды и других факторов. Редко бывают в ночное время. Опасность возрастает с.
    риск получения травм головы снижается в 8 раз; травм грудной клетки – в 18 раз; шеи – в 6 раз; вероятность увечий органов брюшной полости стала ниже в 27 раз.
    Что попадает под действие техрегламента?
    Здесь все происходит так же, как и в предыдущей версии. Разница в том, что используется ремешок другого типа. На территории отечественных просторов такой вариант не получил должной популярности.
    курсовая работа 2,9 K], добавлен 16.01.2011.

    https://myautolider.ru/transmissiya/ustrojstvo-avtomobilya-vsjo-ob-avtomobile/

    Принцип работы прост: адаптер перемещает верхнюю точку стандартного ремня и передает нагрузку на грудь и плечо. Это устройство можно использовать только для детей ростом выше 100 см.
    При обходе против часовой стрелки проверьте пожалуйста следующее:
    Группа 0 – автомобильная люлька. Применяется для новорождённых и детей возраста 6 месяцев. Имеет ограничение по весу до 10 килограмм. Конструктивной особенностью является изогнутое ложе с дополнительным фиксирующим головным воротником. Группа 0+. Также представлена автомобильной люлькой, с допустимым весом 13 кг. Возраст – до одного года. Группа 1. К этой группе относятся уже более привычные автокресла. Такое устройство можно использовать до 4 лет. При этом максимально разрешённая масса ребёнка составляет 18 кг. Группа 2. Сюда входят детские автокресла, предназначенные для нагрузки от 15 до 25 килограмм. Возрастная группа – до 7 лет. Группа 3. Самая последняя, обозначенная мировым классификатором на сегодняшний день группа. Возраст использования таких кресел составляет от 7 до 12 лет; максимальный вес – 36 кг.
    IV. Государственный контроль (надзор)
    Для снижения инерционных нагрузок увеличивают продолжительность деформации деталей. С этой целью создают защитную зону вокруг водителя и пассажиров путем устройства жесткого каркаса в сочетании с легко сминающимися при ударах передней и задней частями кузова. У автомобилей рамной конструкции ослабляют лонжероны и поперечины, уменьшая их сечение, предусматривая отверстия в слабонагруженных местах или применяя хрупкие материалы, например, алюминиевые трубы и брусья, разрушающиеся при ударе.

  12. Great goods from you, man. I’ve be aware your stuff prior
    to and you are just too excellent. I actually like what
    you’ve obtained right here, certainly like what you
    are stating and the best way wherein you are saying it.
    You are making it enjoyable and you still care for to keep it wise.
    I can’t wait to read far more from you. This is really a great site.

  13. I truly love your blog.. Great colors & theme.

    Did you develop this web site yourself? Please reply back as I’m looking
    to create my very own website and would like to learn where you got
    this from or what the theme is named. Cheers!

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

*

Este site utiliza o Akismet para reduzir spam. Saiba como seus dados em comentários são processados.