Um guia passo-a-passo sobre como começar sua Jornada no GNOME!

Você quer programar aplicações baseadas no GNOME, ou tornar-se um desenvolvedor do GNOME? O que segue é um visão geral simples sobre como começar:


1. Não vá rápido demais

GNOME é um projeto grande, com muitas tecnologias e bibliotecas se espalhando em centenas de milhares de linhas de código. Se você quiser ser bem sucedido, não morda nada maior do que pode engolir, ou se jogue nas profundezas do código -- você não será capaz de entender tudo de uma vez, e ficará frustrado.

É importante em qualquer grande empreendimento quebrar o trabalho numa série de pequenas partes gerenciáveis: escreva aplicações simples para testar seu conhecimento conforme progride. Primeiro dê uma olhada rápida nos vastos recursos de informação ao seu dispor para ter certeza de que é relevante para o que você está trabalhando agora. Poupe seu tempo e atenção fazendo seu código simples funcionar -- você pode aprender o resto depois, quando estiver mais avançado.

Este tipo de gerenciamento de projeto é crítico para um programador.

2. Decida o que você quer fazer

Se você quiser escrever um novo aplicativo GNOME, pense sobre isso duas vezes. Quais as razões que o levaram a criar do zero um novo aplicativo?

Primeiro descubra se algum aplicativo existente não pode ser melhorado, isto beneficiará toda a comunidade GNOME. Claro, se você tiver uma idéia inovadora ou apenas quer começar algo por si próprio com propósitos educativos, esta é uma boa escolha. Você precisará de lápis e papel, e terá de pensar sobre a idéia e começar a elaborar sua nova e fantástica aplicação no papel (claro que vai levar um tempo).

Se não, você precisará decidir em que módulo do GNOME você está mais interessado, e deve estudar como ele funciona no geral: ler o website, juntar-se às MailingLists relevantes, e dar uma passada nos GnomeIrcChannels. Lembre-se, você está apenas começando a entender o básico. Deixe sua curiosidade e interesse guiá-lo.

3. Aprenda da documentação e do código

Agora que você sabe basicamente que bibliotecas/ferramentas você precisa para começar a programar, você agora precisa aprender como elas funcionam. Baixe e instale o DevHelp, um programa que mostra a documentação da API da biblioteca ,auto-gerada a partir do código fonte. Embora ele não ensine como programa uma aplicação GNOME apropriada, é um recurso indispensável e deve ser usado todo o tempo enquanto programando o GNOME.

Também, visite ambos developer website e esta GNOME wiki para começar a procurar por documentação sobre os módulos/bibliotecas que você está interessado. A página de tutoriais para desenvolvedores é um bom lugar para começar. E não esqueça que uma certa quantidade das tecnologias do GNOME vem do FreeDesktop.org, então certifique-se de ir procurar documentação lá também. Finalmente, sempre existe seu mecanismo de busca web favorito.

A forma de documentação mais detalhada, porém mais difícil de compreender, é o próprio código fonte. Pegue uma cópia da última versão -- mas a não ser que você seja um programador supremo, você não irá muito longe tentando ler a coisa toda de uma só vez. Use-o como referência quando você estiver tentando compreender pequenas porções da base de código.

4. Exemplos são bons

A melhor forma de aprender como programar qualquer coisa é escrever programas de exemplo muito simples. Conforme você aprende mais, avance para códigos incrementalmente mais complexos até que você tenha uma aplicação básica funcionando.

Se o módulo que você está aprendendo tiver um tutorial, abra um editor de texto e um terminal, e comece a digitar e compilar o código que você estiver lendo. Interatividade é o melhor.

Se o módulo que você estiver aprendendo não tiver um tutorial então escreva um conforme aprende. Use a si mesmo como audiência alvo. O que 'você' gostaria de saber de um tutorial sobre este módulo? Mesmo que você nunca o mostre aos outros, ele será valioso para lhe dar uma compreensão mais profunda sobre o código. Se você quiser deixar os outros se beneficiarem de seu tutorial, por favor poste-o nesta wiki, ou na do projeto.

Aprender um módulo sem um tutorial é difícil porque você tem apenas a documentação da API e o código fonte para trabalhar:

Se o módulo é um biblioteca, comece navegando pela documentação da API para ter uma idéia de como ela funciona, então comece a escrever simples programas de tentativa e erro que usem a API. Se você chegar num beco-sem-saída de onde não pode sair sozinho, você pode procurar ajuda de seus companheiros programadores nas MailingLists e nos GnomeIrcChannels. Contudo, lembre-se que os desenvolvedores/mantenedores principais também são pessoas ocupadas e que você deve pedir sua ajuda apenas como último recurso.

Se o módulo é um aplicação, então a "API" são os arquivos de cabeçalho (.h) no codigo fonte, e podem não ser bem documentada. Você deverá começar a tarefa de aprender do código fonte. Mais uma vez, pequenas mudanças de tentativa e erro para o código fonte são o melhor.

Aprender uma base de código é uma tarefa sem fim, de forma que você não precisa se colocar na tarefa de aprender a coisa toda de uma vez! Quebre-a em pedaços e saia para respirar um pouco de vez em quando.

5. Envie patches

Agora você deve ter uma compreensão muito básica do módulo. Se seu objetivo é escrever sua própria aplicação, vá para o próximo passo. Se seu objetivo é ajudar o GNOME, você deve começar perguntando por aí como pode ajudar. Lembre-se de começar pequeno, com pedaços do tamanho da sua boca, então trabalhe seu caminho para coisas maiores.

Verifique o #gnome-love no IRC ou leia a seção GnomeLove nesta wiki para conselhos sobre isto, ou pergunte diretamente ao mantenedor do módulo. Comece respondendo as questões que você for capaz na lista de correio, e participe em geral das discussões da comunidade. Vá no bugzilla, crie uma conta para você, e comece a procurar por bugs no seu módulo. Alguns bugs podem ser facilmente marcados como duplicados, ou então podem ser atualizados com detalhes mais corretos. Se você estiver confiante, poderá tentar propor uma solução ou mesmo escrever um patch.

6. Aprenda como usar as ferramentas de desenvolvimento open source

Há várias delas, especializadas no tipo de trabalho para o qual foram criadas, então encontre exatamente aquela que você precisa saber, e não se preocupe com as ferramentas que não são relevantes para sua tarefa escolhida. As ferramentas mais importantes, que todos deveriam conhecer são o CVS, que é o repositório de código fonte onde todas as cópias mais recentes do GNOME são mantidas, e 'diff', que é um programa para gerar patches baseados nas diferenças entre o novo código que você escreveu, e o código original do CVS.

Verifique o guia de desenvolvimento do GNOME, ou o guia de ferramentas de desenvolvimento para aprender como usar os programas que você vai precisar.

7. Divirta-se

Se você não estiver gostando do que faz, então você nunca vai conseguir continuar fazendo.

GnomeLove/HowToStart Pt (last edited 2008-02-03 14:47:00 by localhost)