Este tutorial é destinado a ser o trampolim que irá transformá-lo em um desenvolvedor profissional de extensões do Firefox em pouco tempo. Colocamos anos de experiência XUL nele, oferecendo diversas soluções para os problemas dos desenvolvedores de extensões.
O Tutorial da Escola XUL(XUL School Tutorial) foi criado pelo Appcoast (formerly Glaxstar), uma das poucas empresas dedicadas à construção de extensões de alta qualidade no Firefox. Uma equipe de mais de uma dúzia de desenvolvedores XUL forma Glaxstar no momento em que este tutorial foi criado, e as experiências combinadas de anos criando extensões do Firefox são refletidas aqui.
Com este tutorial você vai aprender como desenvolver extensões do Firefox. Você vai aprender a fazer rapidamente as tarefas mais comuns no desenvolvimento de extensão, comparando várias abordagens diferentes para resolvê-los. Na maioria dos casos nós vamos fornecer exemplos de códigos que você pode facilmente copiar e adaptar às suas necessidades, bem como alguns trabalhos de exemplo. O tutorial tem como objetivo ser o mais breve possível, frequentemente recorrendo à documentação Mozilla para informações mais detalhadas. Você pode pensar nisso como um guia rápido para o mundo expansivo que é a plataforma Mozilla. A maioria dos links nesta documentação são feitos para serem clicados e ler.
Vamos começar com uma breve introdução a alguns conceitos-chave, no caso de você não estiver familiarizado com o Mozilla e Firefox.
Mozilla e Firefox
O termo Mozilla pode ser usado para se referir a vários conceitos: o projeto Mozilla, a Mozilla Foundation, a Mozilla Corporation e o antigo Mozilla browser. Até mesmo Firefox é referido às vezes como "Mozilla". Se você não estiver familiarizado com esses termos, é bom que você tome algum tempo e aprender um pouco sobre a Mozilla. Isso ajudará você a entender a cultura que envolve a comunidade Mozilla.
Mozilla gerou vários produtos e projetos, sendo o mais notável o navegador Mozilla Firefox. Firefox é um dos mais bem sucedidos projetos de código aberto da história, combinando a abertura, padrões de conformidade e sofisticação de open source com foco na experiência do usuário e poderoso alcance mais comumente visto em empresas menos abertos.
A versão 1.0 do Firefox foi lançada em Novembro de 2004, a versão 2.0 em outubro de 2006, ea versão 3.0 em junho de 2008. Este tutorial foi escrito após Firefox 3 foi lançado, e foi atualizado com o tempo. Enquanto a maioria dos que ainda deve trabalhar para a criação de extensões do Firefox 3 (e até mesmo o Firefox 2), é altamente recomendável que você vise apoiar as versões modernas do Firefox, para incentivar os usuários a manter-se atualizado com as correções de segurança. Um lançamento que é mais do que 6 meses de idade é provável vulnerável a bugs de segurança publicados.
Firefox e outras aplicações da Mozilla pode ser visto como composto de duas partes distintas: uma camada de interface de usuário que é diferente para cada projeto, e uma plataforma comum sobre a qual a camada de interface é construída. A interface de usuário é construído com a tecnologia conhecida como XUL, e a plataforma é conhecido como XULRunner.
XUL
XUL (pronunciado "zool") é uma das muitas tecnologias utilizadas para a criação de produtos e extensões baseados em Mozilla. É apenas uma parte da paisagem de desenvolvimento, mas dado que é praticamente exclusivo para Mozilla, que tende a ser utilizado para identificar todo o desenvolvimento relacionado Mozilla. Às vezes você vai ler termos como "aplicações XUL" e "extensões" XUL, mas raramente eles se referem a projetos que são construídos exclusivamente com XUL. Isso normalmente significa que os projetos foram construídos usando tecnologias Mozilla. Até mesmo este projeto, chamado Escola XUL, abrange várias outras tecnologias como JavaScript, CSS, XBL e XPCOM.
XULRunner
XULRunner inclui o Motor de Renderização Gecko, a biblioteca de rede Necko, e vários outros componentes que fornecem OS-gerenciamento independente de arquivo, acessibilidade e localização, entre outros. É esta poderosa plataforma que tem permitido um crescimento tão rápido da comunidade de desenvolvimento em torno Mozilla e Firefox.
XULRunner está disponível em forma binária na página XULRunner, e é a base para vários projetos, como o Songbird, Miro e Eudora. Há uma lista muito abrangente de aplicações XULRunner no XULRunner Hall da Fama.
Gecko
O Motor Gecko é a parte do Firefox usada para processar páginas da web e sua própria interface de usuário. Você pode identificar o nível de compatibilidade de padrões web em Gecko-navegadores baseados olhando para a string User Agent, que deve incluir a versão Gecko. Versões Gecko são um pouco independentes das versões do Firefox, e você pode ver um mapeamento das versões do Firefox e versões Gecko na página Gecko. A string User Agent para Firefox no momento da redação deste artigo (em Inglês dos EUA, Mac OS X) é:
Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:7.0.1) Gecko/20100101 Firefox/7.0.1
A seção de destaque é a versão Gecko: 7.0.1. Você pode ler e copiar a seqüência de agente do usuário de qualquer janela do Firefox, escolha "Ajuda> Informações sobre a Resolução de Problemas" no menu principal.
Para o Tutorial
Com os conceitos básicos para fora do caminho, agora podemos ir direto para o desenvolvimento da extensão. Você provavelmente ainda está se perguntando o que exatamente é uma extensão, o que pode fazer, e como você pode fazê-los. Bem, todo este tutorial é dedicado paraa explicar isso para você.
Bem-vindo ao mundo do desenvolvimento da extensão. Agora vamos chegar a ela.
Este tutorial foi gentilmente doado à Mozilla pelo Appcoast.