UTF-8 é o encoding mais utilizado no mundo na web, segundo o Google

O Google anunciou dias atrás que já suporta as últimas atualizações feitas no Unicode, mais especificamente para o Unicode 5.1. Esta última atualização feita no Unicode trás mais de 100.000 caracteres incluindo atualizações de várias línguas árabes e asiáticas. Mas não precisa se preocupar em sair trocando o encoding do seu site que ele vai nos atender perfeitamente por muitos anos. Os novos encodings criados para a família Unicode serão utilizados inicialmente principalmente nos países que tiveram suas línguas incluídas, e os computadores que vão processar estes novos caracteres precisam ser atualizados para isso. Por isso o Google anunciou que já oferece suporte a esta nova atualização.

Gráfico que mostra o declínio dos charsets ASCII, ISO8859-1, Chinese, Japonese e mostra o crescimento do UTF-8

Segundo o Google, dezembro de 2007 foi um marco na web ao ser o primeiro mês em que o UTF-8 foi identificado como sendo o encoding mais utilizado na web no mundo (Veja gráfico), ultrapassando o US-ASCII e Latin-1/Windows-1252 (o famoso ISO8859-1) como sendo os mais populares até então. O mais curioso foi o pequeno engano cometido pelo Google ao chamar o gráfico de “crescimento do unicode na web” quando o título deveria ser “crescimento do UTF-8 na web”. O Unicode não é um encoding como o UTF-8. Unicode é uma família de encodings, como eu já escrevi anteriormente. O que o gráfico mostrado pelo Mark Davis no Oficial Google Blog mostra é o crescimento do encoding UTF-8, da família Unicode, que ainda tem o UTF-16 e o UTF-32 como membros. De qualquer maneira a notícia é boa e reflete vários benefícios, principalmente páginas mais leves por não precisar utilizar entities para representar caracteres acentuados de línguas latinas por exemplo. Se você não entende muito bem o que são charsets, encodings, UTF-8, etc, recomendo a leitura da minha clássica série de 5 artigos chamada Charsets e Encodings, publicada alguns anos atrás mas que ainda são muito atuais.

  • Gustavo Ribeiro

    UTF-8 deveria ser obrigatório.

    Já passei por vários problemas de fazer a estrutura em UTF-8 e BDs antigos em ISO-8859-1. resultado: caracteres inválidos :)

    abs

  • http://www.duvida.net Alexander

    Use UTF-8 em quase todos os meus projetos.

    Não tem coisa melhor…

  • Vitor

    Boa noite Henrique.

    Poderia explicar melhor como as páginas ficariam mais leves?

    Em arquivos idênticos, um codificado em UTF-8 e o outro em ISO-8859-1, o que foi codificado em UNICODE fica maior sempre.

  • João Rodrigo

    Realmente ficar declarando entities é exercício de paciência. Sugiro um artigo de como fazer para migrar para UTF-8, incluindo setar as configurações no banco, servidor, interpretador(php) etc.

  • http://alexrosa.blogspot.com Alexsander

    Vitor

    Ficam mais leves porque "ação" em Unicode, apesar de ser maior que "ação" em LATIN1, ainda é menor que "ação".

  • http://alexrosa.blogspot.com Alexsander

    A palavra "ação" com entities fica "a-&-c-c-e-d-i-l-;-&-a-t-i-l-d-e-;-o" sem os hífens. No post anterior isso não ficou claro.

  • Marcos

    Vitor,

    A idéia é que fica mais leve do que o ASCII puro, que era o mais utilizado, e não que o 8859-1. Neste caso para você fazer as acentuações tinha que usar coisas como ´ ç

    Quanto ao 8859-1 não há diferença significativa de tamanho.

    Agora o UTF8 é mais abrangente que o 8859-1,e por isso que ele foi recomendado e não o 8859-1.

  • Pingback: asennadas » UTF-8 domina a web()

  • http://capivara.dmaweb.com.br Capivara

    Pode ter certeza:

    Mais dia menos dia tu ainda te incomodarás com enconding.

    Seja pq o padrão que o servidor do aplicativo será diferente do padrão que utilizas, seja pq utilizarás AJAX.

    Mas confesso que decepcionei com o aviso de publicação acima: sem a permissão do autor não se pode propagá-lo. Uma lástima não poder usá-lo em meu blog….

  • http://pt.shvoong.com/tags/bergamo,-carla/ Carla Bergamo

    Desculpe Henrique,

    Sou desenvolvedora web e não conheço motivos razoaveis para usar UTF-8 em meus projetos. Faço questão de difundir que ISO-8859-1 é a melhor escolha devido a não requerer o uso de entitly no HTML e outros caracteres especiais codificados. Não conheço limitações de user-agents sobre esse charset desde que enviado corretamente pelo servidor. Para nós que desenvolvemos em bloco de notas usar unicode é um horror pois aí seus acentos inseridos diretamente no HTML ficará "tudo errado".

    Eu escrevo e leio em português, porque inventar moda de trocar "á" para "aacute" ?

  • http://www.netfaqs.com.br/ Andre Lima

    Henrique,

    Comecei a ler ontem a sua série de post's falando sobre charsets e enconding e achei bem interessante!

    Eu participo de uma lista sobre xhtml e afins e volta e meias as pessoas tem essa dúvida!

    Eu ainda não terminei de ler… mas o ideal não é só ler uma vez, mesmo pq o conteúdo é bem abrangente.

    Recomendo a todos a leitura! O post tá bem caprichado!

    []´s

    Andre Lima

  • Marcus Aurelius

    @Carla Bergamo:

    Acho que você confundiu UTF-8 com outra coisa. Pra usar UTF-8 é só digitar "á" normalmente e pedir para os programas que você estiver usando salvarem e interpretarem os arquivos como UTF-8. Não é necessário escrever aacute. Se o navegador mostrar o "á" como "á", é só colocar um "meta http-equiv" indicando que a codificação é UTF-8 e pronto.

  • Pingback: rascunho » Blog Archive » links for 2008-05-11()

  • http://blagus.blogspot.com/ Alexander Blagus

    One encoding to rule then all

  • Alexandre

    Muito boa essa técnica, mas estou tendo problemas com ela. Ao usar todos os acentos que estao no HTML renderizão normalmente, mas os textos que vêm do banco de dados nao estao renderizando e estao mostrando codigos no browser.

    Já existe uma tecnica pra isso tb?

    me manda um email se tiver, e desde ja grato pela informação que colhi no seu blog.

  • Fabrício Oliv

    Estou com o mesmo problema do usuário acima, #15 Alexandre.

    Já setei o collation e o charset do bd para utf8 tbm, e não consigo fazer com que os dados do bd venham como utf8. Se puder me ajudar fico grato. Obrigado!

  • Pingback: Ululos Selvagens // Para voce que tem problemas com os acentos()

  • http://www.flashmedia.com.br bruno rios

    Estou tentando passar para o utf-8 mas os espaços em branco estao sendo convertidos para codigos estranhos e ta bagunçando o layout… mas surgiu uma duvida… eu uso iso-8859-1 mas digito o codigo fonte com os caracteres especiais e acentuados normalmente, sem aqueles códigos tipo ação… isso é certo ou nao? interfere em alguma coisa? valew!

  • http://www.flashmedia.com.br bruno rios

    corrigindo: sem aqueles codigos tipo a-&-c-c-e-d-i-l-;-&-a-t-i-l-d-e-;-o (sem os hifens)

  • Augusto

    Olá
    Ainda dentro do tópico do UTF-8, tenho visto duas situações diferentes para o exemplo abaixo que seria uma url de um wordpress:
    1- meusite.com.br/cobranca-online/
    2 – meusite.com.br/Cobran%C3%A7a-online/
    Alguém poderia esclarecer qual das duas urls teria mais peso na otimização?
    Vejo que a ferramenta de busca "parece" reconhecer como mais exata a segunda, considerando que a palavra-chave é "Cobrança Online"
    Qual a sua opinião?
    Augusto