Estilo de codigo.

Para "abobrinhas" use o " Boteco"

Moderadores: andre_luis, 51, guest2003, Renie

Mensagempor mastk » 19 Abr 2011 12:12

polesapart.

Nesse tempo que venho trabalhando com software, já ouvir muito isso de horrivel, porem deve ter em mente o objetivo e os motivos para de falar isso:

1 - Vc só faz codigo de uma maneira e abmina qualquer coisa que esteja fora dos seus costumes.

Dai recomendo que pense, se vc tem motivos e objetivos para codifecar de uma determinada maneira, OK. Porem se for apenas por causa que vc aprendeu assim, melhor vc rever seus conceitos certo?
No dois exemplos que citei, ambos sao eficientes, cada um ao seu estilo.
Avatar do usuário
mastk
Dword
 
Mensagens: 4407
Registrado em: 14 Out 2006 20:43

Mensagempor Jorge_Francisco » 19 Abr 2011 12:18

Depende da empresa também. Realmente eu aprendi a fazer deste modo, acho que o modo das chaves estranho de se entender por qualquer pessoa. Quando a lógica de como colocar ou escrever as variáveis vai de cada um, mas alguns métodos ajudam mais do que os outros.

E python então? Pqp, me dá nos nervos, mas eu faço o que tenho que fazer.
Avatar do usuário
Jorge_Francisco
Dword
 
Mensagens: 1009
Registrado em: 12 Out 2006 09:53
Localização: Rio de Janeiro

Mensagempor polesapart » 19 Abr 2011 17:16

mastk escreveu:Porem se for apenas por causa que vc aprendeu assim, melhor vc rever seus conceitos certo?
No dois exemplos que citei, ambos sao eficientes, cada um ao seu estilo.


Eu já peguei pra manter muito código sem documentação, e cuja formatação simplesmente era uma colcha de retalhos, provavelmente resultado de remendos a vários pares de mãos. Era a casos assim que eu me referia.

Minha colocação foi geral, com base em vasta experiência em códigos escritos por terceiros, e onde procurei ser irônico, destes códigos escritos com "estilo nenhum". Teus exemplos foram singelos e, a olhos treinados, passam por similares.

Eu trabalhei e trabalho em bases de códigos de terceiros, algumas com restrições bastante severas quanto a formatação e documentação, e nestas condições, com o tempo, é possível pegar os "dialetos" sem que isto te obrigue a sair da zona de conforto do entendimento claro e conciso. Quando escrevo "meu" código, eu procuro dar mais ênfase em portabilidade e legibilidade, em grande parte porque, ao menos ao longo da última década, tenho tido a sorte de trabalhar com arquiteturas e plataformas que dispõe de excelentes capacidades e de excelentes compiladores, que, em grande parte dos casos, me dispensa a escovação de bits e minimização de código que de outra forma precisaria ser considerado para se adaptar as particularidades da plataforma-alvo. Também considero aspectos como modularização, testabilidade, e outros. Mas colaborando com terceiros, mesmo em códigos inicialmente de minha autoria, sempre estive apto a adotar diferentes abordagens quanto a sintaxe, pois, inicialmente, há aspectos mais importantes a serem considerados, e eles tem mais a ver com semântica e interfaces do que com estilo.
Warning: time of day goes back (-163479us), taking countermeasures. :)
Avatar do usuário
polesapart
Byte
 
Mensagens: 477
Registrado em: 19 Nov 2007 12:56
Localização: Curitiba

Mensagempor xultz » 19 Abr 2011 17:17

Isso me fez lembrar do último código que passei prá você, acho que você se lembra... Foi meu primeiro firmware prá ARM, depois ter trabalho quase que exclusivamente com PIC. Resultado: todas as variáveis eram globais, nenhuma função passava ou retornava parâmetros, bem poucas funções "prá não estourar a pilha" (coisa de PIC), tudo num arquivo só de 500 milhões de linhas (porque o prazo era curto e não tive tempo de estudar como fazer um makefile), e todo esse codigozão no meio de um for( ; ; ). Pelo menos tava indentado...
Esse foi o pior código de terceiro que você teve que mexer?
Editado pela última vez por xultz em 19 Abr 2011 17:34, em um total de 1 vez.
98% das vezes estou certo, e não estou nem aí pros outros 3%.
Avatar do usuário
xultz
Dword
 
Mensagens: 3001
Registrado em: 13 Out 2006 18:41
Localização: Curitiba

Mensagempor polesapart » 19 Abr 2011 17:32

xultz escreveu:Esse foi o pior código de terceiro que você teve que mexer?


Não, porquê você abusou dos comentários. Onde o código estava meio saladão, o comentário tava claro. Atrapalha um pouco navegar num código assim? Atrapalha, mas uma vez que você entende o que ele faz (ou deveria fazer), isto se torna secundário.

Agora imagina um código com centenas de milhares de linhas divididos em arquivos nomeados a.c, b.c, c.c ... um deles com uma interface pra importar uma biblioteca feita em java (e um runtime java de terceiros) ... acho que o unico comentário era o nome do autor ... documentação zero ... e neste ponto nao sei se a documentacao ajudaria, pq outro código que peguei da mesma empresa foi feito na india e a documentacao basicamente dizia coisas ilegíveis como:

- pls chk if u hav stack spc or it crash

... e ainda assim, o código desta última era mais legível e segmentado que o deste outro programa.

Teve um outro trem que me mandaram, isso fazem anos, que era um TSR pra MS-DOS que lia uns sensores conectados na paralela. O problema é que ele tinha várias funcionalidades, dava pau horrores e era mal documentado tbm.

Mas eu também já tive meus momentos de escrever código porco e mal documentado, em condições de stress & falta de tempo, você deve lembrar do gateway da omni, lá pelos meados do ano 2000 (ou 2001) :-)
Warning: time of day goes back (-163479us), taking countermeasures. :)
Avatar do usuário
polesapart
Byte
 
Mensagens: 477
Registrado em: 19 Nov 2007 12:56
Localização: Curitiba

Mensagempor andre_luis » 19 Abr 2011 18:26

Jorge_Francisco escreveu:...acho que o modo das chaves estranho de se entender por qualquer pessoa...


É interessante o quanto o hábito muda ou flexibiliza nossa maneira de pensar.
Eu sempre identei na programação em 'C' as chaves da função ( "{}" ) na mesma coluna do editor; mas depois de trabalhar com o Java já não consigo voltar a raciocinar da mesma maneira.

Acho que o editor da IDE colabora um pouco pra ira isso; pois cada compilador já identa por default de uma determinada maneira.

+++
"Por maior que seja o buraco em que você se encontra, relaxe, porque ainda não há terra em cima."
Avatar do usuário
andre_luis
Dword
 
Mensagens: 5447
Registrado em: 11 Out 2006 18:27
Localização: Brasil - RJ

Mensagempor msamsoniuk » 19 Abr 2011 20:36

eu nunca coloco comentarios, afinal todos os meus codigos alem de serem completamente auto-explicativos, sao verdadeiras obras de arte em termos de legibilidade e eficiencia! :D
Avatar do usuário
msamsoniuk
Dword
 
Mensagens: 2935
Registrado em: 13 Out 2006 18:04

Mensagempor andre_luis » 19 Abr 2011 21:18

Marcelo Samsoniuk escreveu:eu nunca coloco comentarios, afinal todos os meus codigos alem de serem completamente auto-explicativos, sao verdadeiras obras de arte em termos de legibilidade e eficiencia! :D


Comentar é uma boa prática quando voce tiver que mexer daqui a uns 5 anos nesse mesmo código e não se lembrar de algum detalhe importante que terá de quebrar a cabeça.

Lembrando as palavras do xultz : "...coloco comentários pra me proteger de mim mesmo...".

+++
"Por maior que seja o buraco em que você se encontra, relaxe, porque ainda não há terra em cima."
Avatar do usuário
andre_luis
Dword
 
Mensagens: 5447
Registrado em: 11 Out 2006 18:27
Localização: Brasil - RJ

Mensagempor Rodrigo_P_A » 19 Abr 2011 21:29

Marcelo Samsoniuk escreveu:eu nunca coloco comentarios, afinal todos os meus codigos alem de serem completamente auto-explicativos, sao verdadeiras obras de arte em termos de legibilidade e eficiencia! :D


parabéns E.T. hehehe!
---
Avatar do usuário
Rodrigo_P_A
Dword
 
Mensagens: 2237
Registrado em: 12 Out 2006 18:27
Localização: Osasco - S.P - Brasil

Mensagempor msamsoniuk » 19 Abr 2011 21:35

Avatar do usuário
msamsoniuk
Dword
 
Mensagens: 2935
Registrado em: 13 Out 2006 18:04

Mensagempor vtrx » 19 Abr 2011 21:58

eu nunca coloco comentarios, afinal todos os meus codigos alem de serem completamente auto-explicativos, sao verdadeiras obras de arte em termos de legibilidade e eficiencia!

LOL,tomara que seu HardWare seja tambem...
Avatar do usuário
vtrx
Dword
 
Mensagens: 2239
Registrado em: 20 Abr 2008 21:01

Mensagempor polesapart » 19 Abr 2011 22:39

Marcelo Samsoniuk escreveu:eu nunca coloco comentarios, afinal todos os meus codigos alem de serem completamente auto-explicativos, sao verdadeiras obras de arte em termos de legibilidade e eficiencia! :D


Tudo começa na escolha de nomes: nomes de variáveis, de arquivos. Eu nunca crio um main.c , ao invés disto uso o modesto ImTooSexyForMyCode.c

É importante ser humilde, isso aprendi com o marcelo.
Warning: time of day goes back (-163479us), taking countermeasures. :)
Avatar do usuário
polesapart
Byte
 
Mensagens: 477
Registrado em: 19 Nov 2007 12:56
Localização: Curitiba

Mensagempor msamsoniuk » 20 Abr 2011 00:18

vtrx escreveu:
eu nunca coloco comentarios, afinal todos os meus codigos alem de serem completamente auto-explicativos, sao verdadeiras obras de arte em termos de legibilidade e eficiencia!

LOL,tomara que seu HardWare seja tambem...


o meu hardware tem selo de aprovacao chuck norris! :D

Imagem
Avatar do usuário
msamsoniuk
Dword
 
Mensagens: 2935
Registrado em: 13 Out 2006 18:04

Mensagempor B-EAGLE » 20 Abr 2011 00:33

que medo... ahauhaua
B-EAGLE
Word
 
Mensagens: 847
Registrado em: 19 Out 2006 14:12
Localização: Campo Grande - MS

Mensagempor mastk » 20 Abr 2011 06:36

eu nunca coloco comentarios, afinal todos os meus codigos alem de serem completamente auto-explicativos, sao verdadeiras obras de arte em termos de legibilidade e eficiencia!


Apesar do detector de sacarmos ter disparado, esse é o minimo para qualquer programador, eu mesmo evito sempre que possivel, e NUNCA comento o que uma linha de codigo faz, no maximo, coloco um cabeçalho na rotina, indicando:

O que ela faz, geralmente inutil, já que o nome deixa claro o que ela faz.
Entradas, o que deve entrar e como deve ser.
Saidas.

Condenam essesm meus ideais? Eu esqueço completamente do codigo que escrevi em duas semanas, e do jeito que a coisa vem caminhado, nao tenho problemas na releitura do meu codigo, obvio que a consistencia e ser de minha autoria, faz que isso seja bem facil

Mano polesapart, incosistencia e codigo frank doi, imagino a sua dor e o admiro por ter chegado a obter sucesso numa situacao dessas.
Avatar do usuário
mastk
Dword
 
Mensagens: 4407
Registrado em: 14 Out 2006 20:43

AnteriorPróximo

Voltar para Assuntos Gerais

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante

x