[Cascavel-pm] dicas de identação e marcação de códigos

Alexei Znamensky russoz em gmail.com
Terça Novembro 11 19:07:33 PST 2008


Cara, muito bonito tudo isso.

Eu, por outro lado, coloco a vírgula no fim da linha, no código, porque
aqui, no Português, é o que eu sempre fiz e, na minha singela opinião cheia
de vírgulas, o objetivo é legibilidade. Mais fácil para copiar e colar
código? C'mon, nós estamos em 2008, se isso é assim tão importante, use uma
ferramenta que seja esperta o bastante para fazer isso. Se não tiver uma,
faça uma - já que, segundo a premissa anterior, isso é tão importante assim
para você (você genérico, não você Breno :-P).

E fui dormir.
[]s
russo

2008/11/12 breno <breno em rio.pm.org>

> Ah, outra coisa. Se colocar vírgula no último item do comando SQL dá
> erro, meu argumento vai por água abaixo, pq mesmo com a vírgula no
> final teríamos o problema do último elemento não poder ter a vírgula e
> se quiséssemos trocar ele de ordem (em vez do primeiro) também
> precisaríamos ajustar as vírgulas. Ou seja:
>
> SELECT foo AS "bla",
>   bar AS "ble",
> FROM ....
>
> Como meu contato com SQL não é tão grande e não tenho um banco pronto
> para ser acessado agora, vou deixar a dúvida de se essa vírgula no
> final do último comando funciona ou não como um exercício para o DBA
> mais próximo =P
>
> []s
>
> -b
>
> 2008/11/12 breno <breno em rio.pm.org>:
> > Ihhhh isso vai dar o que falar :-P
> >
> > Sobre o abre-chaves, é uma longa discussão entre o formato K&R:
> >
> > foo {
> >   ...
> > }
> >
> > e o formato BSD/GNU:
> >
> > foo
> > {
> >   ...
> > }
> >
> > quando comecei a programar, só usava o formado BSD por achar bem mais
> > legível (o código fica separado, mais fácil de ler). Com o tempo,
> > passei a usar o formato BSD apenas para funções, e o formato K&R para
> > comandos internos (if, while, etc), pq além de economizar uma linha,
> > parecia fazer mais sentido (leia-se um pouco mais fácil de entender).
> > Daí talvez pelo costume ou pela homogeneização (como acabamos usando
> > muito mais comandos internos do que subs, hoje quase todos os meus
> > códigos usam K&R.
> >
> > Sobre a vírgula separadora, o Perl Best Practices usa um argumento
> > interessante em favor da vírgula no final, que é o da reordenação: se
> > usamos a vírgula no início, trocar de ordem o primeiro elemento com
> > outro qualquer exige modificação no código. No caso do SQL, vale a
> > mesma coisa. Por exemplo:
> >
> > SELECT algo AS "bla"
> >    , outracoisa AS "ble"
> >     ...
> >
> > Se quiséssemos trocar "bla" e "ble" de ordem, não poderíamos
> > simplesmente copiar e colar sem um mínimo de cuidado, ou ficaria
> > assim:
> >
> > SELECT , outracoisa AS "ble"
> >    algo AS "bla"
> >     ...
> >
> > sim, é raro haver essa necessidade, e sim, é um erro óbvio e muito
> > fácil de ser achado. Mas com a vírgula no final ele some
> > completamente:
> >
> > SELECT algo AS "bla",
> >    outracoisa AS "ble",
> >     ...
> >
> > vira (copiando e colando):
> >
> > SELECT outracoisa AS "ble",
> >    algo AS "bla",
> >     ...
> >
> > e pronto. A grande vantagem de fazer a separação em outra linha
> > (motivo pelo qual acho que o Luis usou) é que fica mais fácil ver o
> > que está acontecendo, especialmente em códigos SQL com muitos
> > aninhamentos. (isso e o fato de que ele é um DBA experiente e sabe o
> > que está fazendo :-P)
> >
> > Em Perl específicamente, acho mais fácil separar elementos de lista
> > com a vírgula no final (até pq a vírgula no final sem item seguinte é
> > Perl válido):
> >
> > my %bla = (
> >        bla => 'bla',
> >        ble => 'ble',     # vírgula após o último elemento
> >                             # ajuda a adicionar outros sem erro!
> >      );
> >
> >
> > No final, acho que o mais importante é escolher um estilo, qualquer
> > que seja, e ser consistente durante o código :-)
> >
> > []s
> >
> > -b
> >
> >
> > 2008/11/12 Joao Gabriel <jamorreu em gmail.com>:
> >> Olá povo.
> >>
> >> Últimamente eu ando muito preocupado em comparar códigos e em especial
> >> identação e marcação.
> >>
> >> Segue um exemplo de parte de um código SQL re-escrito pelo Luis:
> >>
> >>    , UPPER( FE.descr ) AS "descr"
> >>    , FE.total_parcelas AS "total_parcelas"
> >>    , FE.parcela_atual AS "parcela_atual"
> >>    , FE.valor_total AS "valor_total"
> >>    , FE.valor_com_deconto AS "valor_com_desconto"
> >>    , FE.valor_pago AS "valor_pago"
> >>    , FE.dias_tolerancia AS "dias_tolerancia"
> >>
> >> eu faria do seguinte modo (passaria a virgula para o final):
> >>
> >>    UPPER( FE.descr ) AS "descr",
> >>    FE.total_parcelas AS "total_parcelas",
> >>    FE.parcela_atual AS "parcela_atual",
> >>    FE.valor_total AS "valor_total",
> >>    FE.valor_com_deconto AS "valor_com_desconto",
> >>    FE.valor_pago AS "valor_pago",
> >>    FE.dias_tolerancia AS "dias_tolerancia",
> >>
> >>
> >>
> >> e em casos como:
> >>
> >> if(condição)
> >> {
> >>         conteudo aqui;
> >> }
> >>
> >> eu geralmente faço assim:
> >>
> >> if(condição) {
> >>         conteudo aqui;
> >> }
> >>
> >> Enfim, meu comentário é para iniciar um papo sobre identação e qual
> >> seria a melhor forma (ou a que aos olhos da maioria do pessoal seje
> >> melhor de entender).
> >>
> >> --
> >> João Gabriel C. Laass
> >> _______________________________________________
> >> Cascavel-pm mailing list
> >> Cascavel-pm em pm.org
> >> http://mail.pm.org/mailman/listinfo/cascavel-pm
> >>
> >
> _______________________________________________
> Cascavel-pm mailing list
> Cascavel-pm em pm.org
> http://mail.pm.org/mailman/listinfo/cascavel-pm
>



-- 
Alexei Znamensky [russoz_gmail_com] [russoz.wordpress.com] [
www.flickr.com/photos/alexeiz]
"Though we live in trying times, we're the ones who have to try"
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://mail.pm.org/pipermail/cascavel-pm/attachments/20081112/14328eee/attachment-0001.html>


Mais detalhes sobre a lista de discussão Cascavel-pm