Google Blink faz fork do WebKit

Posted by admin On abril - 6 - 2013

06-04-2013_chrome

O Google anunciou que deve avançar com o fork do seu próprio WebKit chamado Blink. O novo fork tem por objetivo tornar mais poderosos os navegadores Chromium e Chrome. O Opera, tem acompanhado a compilação do Chromium no WebKit, e já revelou que deverá seguir o fork do Google, e também passando a utilizar o Blink. Bruce Lawson, em seu blog, explicou  que a necessidade do fork veio por conta da sua arquitetura de multiprocessamento de navegador ser diferente de outros navegadores usando o WebKit e que a complexidade e o custo de oferecer suporte às múltiplas arquiteturas foi diminuindo em termos de desenvolvimento.

O WebKit fornece um motor de renderização para muitos browsers e possui suas raízes no fork da Apple do projeto KHTML, utilizado para criar o navegador Safari. O código de renderização KHTML foi chamado “WebCore e Apple” no projeto WebKit, e o Google e outros interessados fizeram suas modificações para usar o código sob licença BSD. Dentro do projeto, as funções auxiliares, tais como suporte a JavaScript e acesso à rede, foram tratadas por uma coleção de código BSD de codinome WebKit.

Mas o Google, com seu motor de JavaScript próprio, o V8, tinha pouca utilidade para esse código e menos ainda para o WebKit2 (próxima geração do WebKit, que adiciona uma arquitetura de multiprocessamento ao renderizador) uma vez que já havia construído o Chrome para ser executado em um modelo de processamento múltiplo. Ao fazer o fork para criar o Blink, uma grande quantidade de código do WebKit pode se perder pelo caminho – acredita-se que cerca de 7 build systems, 7.000 arquivos e 4.5 milhões de linhas de código seriam eliminados quase que imediatamente. O Google afirma que tal ação deve levar a uma base de código mais estável e mais saudável ao longo do tempo.

A página do projeto Blink enfatiza que o Google deseja executá-lo como “uma comunidade de código aberto inclusiva” e convida desenvolvedores de fora a participarem do projeto. A empresa já está delineando os planos para a nova base de código. Uma das principais mudanças planejadas é o suporte para iFrames que permitirão o sandboxing (mode seguro) na própria página web. Libertos das obrigações mais antigas da API, os desenvolvedores do Google também planejam uma reformulação do código de rede utilizado no Chromium e no Blink. Entre os planos mais provisórios está a ideia de integrar o DOM (Document Object Model) como estruturas de dados JavaScript, em vez do modelo stand-alone (autônomo); a esperança é de que essa implementação aumente o desempenho dos aplicativos JavaScript na web.

Entre outras mudanças orquestradas pelo Google, encontra-se um modelo de melhorias web “sem prefixo”. Fornecedores de prefixos têm sido utilizados ​​durante muitos anos em navegadores para simbolizar características experimentais. Infelizmente, os desenvolvedores web frequentemente utilizaram​​ e contaram com esses prefixos. Mas com o Blink não haverão prefixos, exceto aqueles herdados do WebKit. Em vez disso, os desenvolvedores terão que ativar recursos experimentais em uma página about:flags até que o recurso esteja adequado para ser ativado por padrão. O Google aponta que a Mozilla está se movendo em direção a uma política semelhante e que o W3C também tem explorado uma ideia similar.

De acordo com Alex Russell, desenvolvedor do Chrome, subjacente a escolha do Google está a máxima de “seguir adiante com rapidez”. Em um post em seu blog pessoal, Alex Russell explica que mais rápido neste caso não é apenas o desempenho do código, mas a complexidade e o tempo necessário para construí-lo. Apesar do trabalho feito para acelerar o tempo de construção e tornar todo o processo de desenvolvimento mais rápido, Russell afirma que o fork irá permitir que programadores do Google iterem com o Blink, Chrome e Chromium mais rapidamentem e que eles já conhecem os benefícios da iteração rápida com o código do Chrome.

O Google já está trabalhando no Blink e o primeiro Chrome baseado em Blink deve estar disponível no Chrome 28; o Chrome 26 acaba de ser lançado como uma versão estável. O Opera está usando o Chromium Content API para trabalhar com o WebKit e deve passar por um trabalho relativamente fácil de migração para o Blink. O Google revela que, a curto prazo, o fork do Blink deve ter pouco impacto para desenvolvedores web. Uma vez estabelecido, porém, o Google obviamente pretende aumentar a velocidade de desenvolvimento de seu navegador.

Com informações de The H Online

FireStats icon Produzido pelo FireStats