Tableless - Desenvolvimento inteligente com Padrões Web

16/07/2006
Artigos

Sobre nomes e sobrenomes

Nomenclatura no desenvolvimento web é um assunto que muitas vezes é ignorado pela maioria dos profissionais. E é o que muitas vezes causa problemas no decorrer do projeto. Escolher nomes adeqüados, tanto para arquivos quanto para nomes de variáveis, identificação …

Por


Nomenclatura no desenvolvimento web é um assunto que muitas vezes é ignorado pela maioria dos profissionais. E é o que muitas vezes causa problemas no decorrer do projeto.
Escolher nomes adeqüados, tanto para arquivos quanto para nomes de variáveis, identificação de elementos, seções e etc, é tão importante quanto qualquer outra parte do projeto. Este pequeno detalhe pode ser o começo de uma grande confusão sem volta.

Imagine um site simples com elementos básicos como um cabeçalho, uma coluna na esquerda, uma coluna no meio para o conteúdo e outra coluna no lado direito, e por último o rodapé.
Ao criar a estrutura XTHML para este site, o primeiro nome que vem a cabeça para nomear, por exemplo a coluna da esquerda é: id=”colunaesquerda”. Ou algo parecido, não é?
Este nome, com certeza é muito sugestivo e objetivo. Mas, infelizmente, pode lhe trazer problemas sérios. Suponha que este site seja feito com CSS, que lhe dá facilidade para mudar o layout facilmente mudando algumas linhas de código. Você ou seu cliente resolve que o site deve mudar um pouco de visual. Que a coluna da esquerda, deveria agora ficar do lado direito, e vice-versa.
Então, você localiza no CSS o objeto chamado #colunaesquerda e o posiciona à direita. Localiza o objeto #colunadireita e o posiciona à esquerda. Conseguiu calcular o problema? O elemento #colunaesquerda não é mais a coluna da esquerda, ele está alinhado agora a direita. Não parece estranho um objeto se chamar #colunaesquerda estar alinhado à direita?
Imagine o trabalho que será mudar este nome nos arquivos? Provavelmente você fará um post-it com esta observação e guardará embaixo do teclado, onde ele ficará esquecido até a próxima limpeza da faxineira.

Ter bons nomes é uma questão de semântica. Não é raro acontecer casos como o citado acima. Isto pode se tornar uma bola de neve. Uma vez errado, ficará errado até o final do projeto, e quanto mais tempo o erro continuar, mais dificil será corrigi-lo. Por isso, preste bem atenção quanto a nomenclatura de elementos.

Uma dica que sempre dou aos alunos aqui nos cursos, é nomear os elementos da página de acordo com sua função: Se na coluna da esquerda houver o menu principal do site, nomeio o div como #menuprincipal ou simplesmente #menu. Se a coluna da direita houver publicidade por exemplo, nomeie esta coluna como #publicidade e não #colunadireita. Isso evitará muito transtorno durante o desenvolvimento do projeto. Nomeie os elementos de acordo com sua função.

Esta regra de nomeclatura também pode ser aplicado à arquivos. Já falei aqui sobre Modulação de CSS. Se você irá criar arquivos CSS individuais para cada seção do site, nomeie de acordo com a função da seção do site. Se é um CSS que irá formatar o menu principal, o arquivo poderia se chamar menuprincipal.css. Nem preciso dizer que nomes como menu_principal_coluna_esquerda.css não são boas pedidas.

Lembre-se que nomenclatura dos elementos pode ser questão de semântica. É coisa séria e pode trazer muitos problemas se não for pensado direito. Gaste uns segundos a mais para elaborar nomes melhores. Não dói e previne dor de cabeça.

Por Diego Eis

Diego Eis criou o Tableless para disseminar os padrões web no Brasil. Como consultor já treinou equipes de empresas como Nokia, Globo.com, Yahoo! e iG. É palestrante e empreendedor.

http://twitter.com/diegoeis/

Veja os outros posts de

  • http://mundomozilla.blogspot.com/ Paulo

    muito bom, Diego!

  • http://www.garcez-rosa.net Ricieri Garcez Rosa

    Boa dica, semântica é tudo, inclusive na nomeclatura dos arquivos.

  • http://omarin.wordpress.com/ O’Marin

    Agora sim entendi o problema dos nomes. Ótimas dicas.

  • Wanderson Martins

    humm… Concordo, mas existem estruturas de determinados websites tão canonizadas e que você tem tanta certeza que elas nunca vão trocar de lugar, que eu não vejo problemas em ter uma coluna_direita e esquerda por exemplo. E “sim”, apenas em casos em que se tem toda a certeza. AGora, chegar ao ponto de ter um CSS chamado “menu_principal_coluna_esquerda.css” daí é demais rsrsrsrss…

  • http://www.maiconjunches.com Maicon Junches

    Diego, muito bom isso. Me deu uma força pra deixar os trabalhos mais semâmticos.

    Muita gente comete esse erro, eu era um deles, e a bola de neve gera muita dor de cabeça =)

    Valeus!

  • Fred“

    Foi exatamente sobre isso que eu comentei no artigo que o Henrique escreveu sobre a reformulação do Webinsider. Tem nomes “sugestivos e objetivos” no código… :(

  • http://www.thalisvalle.com Thalis Valle

    Pois é. Isso eu já defendia a algum tempo, mesmo quando o tableless publicava exemplos desta maneira.

    E agora com os microformats em alta, é bom pensar, antes de escrever. É bom planejar a arquitetura.

  • http://www.cot.org.br Thiago Rocha

    Mais uma (*) para vc Diego!
    Excelente post. Uma dica fundamental, vai me ajudar bastante.

  • http://www.felipegomes.com.br Felipe Gomes

    Muito pertinente esse post.

    Vários profissionais ainda não entendem muito bem de nomeclatura ou não dão o devido valor.

    Gostei, Diego. :)

    Um abraço a todos,
    Felipe Gomes
    http://www.felipegomes.com.br | contato@felipegomes.com.br

  • beto

    …no terceiro paragrafo ao inves de XHTML, vc digitou XTHML…

    Valeu a dica!!!
    abraço

  • Julio Luiz Vedovatto Neto

    Muito bom o artigo (Y)

    Assim … eu uso isso desde quando programo orientado a objetos.

    Nas classes que montavamos, tinhamos que ser especificos com o que ela fazia;

    ex: preencheFormularioLogin

    (usando nomeclatura padrão da sun, inicio minuscula, outras palavras com inicial em maíuscula)

    Desde entao uso isso até no css que eu faço heheheehe, eu sei que é padrão html tudo ser miniusculo, mas para classes e ids eu sempre coloco deste modo, fica mais “chamativo” para mim =p.

    #menuPrincipal

    []‘s

  • Camilo

    Boa dica Diego,

    Mas faltou dizer que para o webdesigner que vai desenvolver um site em conjunto com um programador asp.net, precisa ter cuidado com as IDs, sendo mais recomendável usar as classes, pois na cabeça do designer pode acontecer que um div onde será colocado um texto ele resolva colocar “txtAlgumaCoisa”, só que pro programador, essa ID já foi usada numa textbox qualquer. Vai dar bode.

    Quanto a nomenclatura, Julio, a forma que vc usa é chamada “Camel Case” e não é padrão Sun. É apenas mais um dos inúmeros padrões de nomear alguma coisa que não pode ser escrito separado! Existe tbém o “Pascal Case”, “Upper Case”, etc…

    Prá finalizar, gostaria de saber, Diego, pq seu site dá pau quando é utilizado com o IE. Uma pessoa que se preocupa tanto em fazer as coisas acessíveis à todos os browsers, até para deficientes, deveria tbém se preocupar com o browser que domina a cena da internet (goste vc disso ou não!). Inviabilizando o acesso do IE ao seu site, vc artificialmente aumenta a participação do Firefox, fazendo todos crerem que ele tem uma participação maior do que realmente tem.

    Eu gosto do firefox, uso esporadicamente o firefox, mas, gosto mais do IE! Prá acessar seu site, só uso o Fx simplesmente pq com o IE não funciona.

    Se não me engano, já li vc criticar o baboo quando ele não era acessível ao fx, será que vc está infectado do mesmo mal? Ele percebeu a cagada a tempo! Só falta vc!

    Abraços, parabéns pelos artigos! Continuo achando que vc deveria ser menos xiita… Mas, filtrando as ideologias, eles são muito bons!

  • http://www.ultrahaus.com Tainã Miranda

    Boa adorei, vo usar isso.

    um bom padrão que uso é o de 4 em 4,
    coloco os nome usando as 4 primeiras letras de cada palavra……

    EX: menu principal = menu_prin.

    Tanto no css como no xhtml isso é bom economiza código e facilita muito \\:d/

  • http://www.zenatuz.com Renato

    Comecei a me interessar por desenvolvimento web a pouco tempo, tenho aprendido bastante com essas dicas, espero poder fazer o curso algum dia, quando tiver mais grana, hehe… Está de parabéns.

  • http://www.jaderubini.wordpress.com Jader Rubini

    Excelente artigo, camarada… Tanto que o citei e linkei em um post no meu blog ;)
    Abraços

  • Roberta Fabiana SAntos Gomes

    Sobrenomes

  • http://borbacoelho.zip.net caroline

    excelente o trabalho de vocêis gostaria muito
    de sempre contar com vocêis

  • Eduardo IBDNEVES

    Tudo é uma questão de pensar um pouco,as vezes temos pressa de resolver um problema, e depois aparecem muitos outros a serem resolvidos. Adorei a questão da semântica.

  • Pingback: KISS! « JulioGreff

  • Pingback: Júlio Greff » Arquivo » KISS!

  • Pingback: tiagosouza.com » 10 dicas para evitar dores de cabeça

  • Pingback: » Layout Fixo / Fluido de 3 colunas em 8 Minutos - Tableless - Desenvolvimento com Padrões Web

  • daiane oliveira

    Oi gostei de cada coisa…
    Mas podia ser muito mais detelhado,pois seria mais prático para as pesquisas!!
    Ah me desculpe pela invasão e pelo comentário tah.
    Fui e boa sorte…

  • Pingback: Julio Greff» Arquivo do Blog » KISS!