Fórum Qual o correto alinhamento do Case com begin/end? #337775
13/02/2007
0
Qual o alinhamento correto que deve ser usado em um case que tem um begin / end :?:
case ComboBox1.ItemIndex of 0: begin DoSomething; DoMoreElse; end; 1: begin DoAnything; ShowMessage(´ItemIndex = 1´); end; 2: begin BitBtn1Click(nil); Caption := ´ItemIndex = 2´; end; 3: begin ShowMessage(´Bored?´); ShowMessage(´Me too!´); end; end;
Gostaria que usassem os índices do case para me indicar qual (na sua opinião) é o alinhamento correto e se tiver referências, poste-as aqui...
Na minha opinião... o mais ´elegante´ é o índice 2. :lol:
Marcosrocha
Curtir tópico
+ 0Posts
13/02/2007
Emerson Nascimento
pq? para manter um padrão seja qual for o tipo de ação tomada, como no caso de haver apenas um comando:
case ComboBox1.ItemIndex of 0: varialvelx := valorx; 1: begin DoAnything; ShowMessage(´ItemIndex = 1´); end; 2: showmessage(´xiii.... deu pau!´); 3: begin Abort; FaçaAlgo; end; else ShowMessage(´nenhuma das anteriores´); end;
acho que ficaria estranho assim:
case ComboBox1.ItemIndex of 0: varialvelx := valorx; 1: begin DoAnything; ShowMessage(´ItemIndex = 1´); end; 2: showmessage(´xiii.... deu pau!´); 3: begin Abort; FaçaAlgo; end; else ShowMessage(´nenhuma das anteriores´); end;
Gostei + 0
13/02/2007
Marcosrocha
veja: http://homepages.borland.com/jedi/jcl/documents/styleguide.html#8.2.7
// CORRECT case ScrollCode of SB_LINEUP, SB_LINEDOWN: begin Incr := FIncrement div FLineDiv; FinalIncr := FIncrement mod FLineDiv; Count := FLineDiv; end; SB_PAGEUP, SB_PAGEDOWN: begin Incr := FPageIncrement; FinalIncr := Incr mod FPageDiv; Incr := Incr div FPageDiv; Count := FPageDiv; end; else Count := 0; Incr := 0; FinalIncr := 0; end;
Gostei + 0
13/02/2007
Massuda
Apenas seja coerente.
Se você está trabalhando numa equipe num mesmo projeto, siga as mesmas convenções usadas pelo resto da equipe.
Se você pegou um projeto em andamento, não perca tempo mudando/formatando o que foi feito pelo(s) outro(s) programador(es); se for permitido, mude à medida que você for mexendo no programa.
Não é exatamente a mesma dúvida, mas talvez você ache :arrow: [url=http://forum.clubedelphi.net/viewtopic.php?t=65911]este tópico[/url] interessante.
Gostei + 0
13/02/2007
Marcosrocha
Gostei + 0
13/02/2007
Massuda
Gostei + 0
13/02/2007
Marcosrocha
Gostei + 0
13/02/2007
Massuda
A norma estabelece apenas um modelo de como deveria ser a gestão da qualidade, mas não estabelece obrigatoriedades. Ela define ´o que´ é preciso ter (em termos bem genéricos), mas não define ´como´ fazer.
O que ISO900x irá pedir é que, se você tem algum padrão de codificação, ele tem que ser observado e deve haver meios para verificar se isso está ocorrendo.
Gostei + 0
13/02/2007
Marcosrocha
Gostei + 0
13/02/2007
Massuda
Gostei + 0
13/02/2007
Ffabiop
A ISO não vai ditar como você vai codificar seus softwares, ela exige sim que tudo seja documentado, ou seja você vai descrever como se faz as coisas, mas não acredido que seja o caso de análise de código fonte e sim de você cumprir o cliclo de vida da aplicação com tudo documentado. Nesse caso detalhar como vai ser codificado um case é como uma empresa de manufatura descrever como se deve varrer o chão, então naquele ponto o software vai tomar uma decisão sem maiores delongas.
Gostei + 0
13/02/2007
Marcosrocha
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)