Introdução
Neste tutorial, apresentaremos um guia completo sobre o desenvolvimento de aplicações utilizando o Harbour, um poderoso dialeto da linguagem Clipper, que permite a criação de software robusto e de alta performance. Focaremos em práticas ágeis e na utilização do framework Xharbour, que traz melhorias significativas à linguagem, além de permitir integração com bibliotecas modernas. Também abordaremos o uso do Harbour-GTK, uma biblioteca que facilita a criação de interfaces gráficas atrativas e funcionais. Se você tem interesse em desenvolver aplicações com um forte foco em eficiência e modernidade, este tutorial irá guiá-lo em cada etapa do processo, desde a instalação até a implementação da interface gráfica e testes.
Etapas
Instalação do Ambiente de Desenvolvimento
Primeiramente, instale o Xharbour e o Harbour-GTK em seu sistema. Consulte a documentação oficial para obter as instruções específicas para sua plataforma. Para sistemas baseados em Windows, você pode usar o instalador do Xharbour, e para Linux, a instalação pode ser feita através do gerenciador de pacotes. Verifique se a instalação foi realizada corretamente executando os comandos abaixo.
commands# Verificar instaladores
xharbour --version
harbour --versionCriando um Novo Projeto com Xharbour
Utilize sua linha de comandos para criar um novo projeto. Vamos criar uma pasta de projeto e um arquivo de código inicial. Dentro da pasta do projeto, crie um arquivo chamado `main.prg`.
commands# Criar diretório do projeto
mkdir MeuProjetoHarbour
cd MeuProjetoHarbour
# Criar arquivo main.prg
echo 'PROCEDURE Main' > main.prg
echo ' ? "Olá, Mundo!"' >> main.prg
echo 'RETURN' >> main.prgCompilando seu Primeiro Programa
Com o código de exemplo no arquivo `main.prg`, o próximo passo é compilar seu aplicativo usando o Xharbour. Certifique-se de estar no diretório do projeto e execute o seguinte comando na linha de comandos.
commands# Compilar o programa
xharbour main.prgExecutando o Programa Compilado
Após a compilação, um arquivo executável será gerado. Para executar o seu programa, utilize o comando a seguir. Em caso de sucesso, uma janela deverá abrir exibindo ‘Olá, Mundo!’.
commands# Executar o programa
mainIntegrando o Harbour-GTK para Interfaces Gráficas
Para adicionar uma interface gráfica ao seu aplicativo, você precisará registrar o driver do GTK. Certifique-se que o Harbour-GTK está corretamente instalado. Então, modifique o arquivo `main.prg` para incluir os componentes da interface gráfica. Abaixo está um exemplo que cria uma janela simples com um botão.
main.prgFUNCTION Main LOCAL oWnd, oButton oWnd := CreateObject("GtkWindow") oButton := CreateObject("GtkButton") oButton: set_label("Clique aqui") oWnd: add(oButton) oWnd: show_all() Return
Configurando o Ambiente para Testes
É importante criar um ambiente de testes para sua aplicação. Considere usar frameworks de teste disponíveis para Harbour, como o HBUnit. Para começar, crie uma nova pasta para os testes e adicione um arquivo de teste chamado `test_main.prg`.
commands# Criar diretório para testes
mkdir tests
cd tests
# Criar arquivo de teste test_main.prg
echo 'FUNCTION TestMain()' > test_main.prg
echo ' RETURN .T.' >> test_main.prg
echo 'END FUNCTION' >> test_main.prgExecutando os Testes
Navegue até a pasta de testes e execute seus testes. Isso garantirá que sua aplicação funcione como esperado. Se estiver configurado corretamente, o HBUnit executará os casos de teste que você definiu.
commands# Executar testes
hbunit tests/test_main.prg
Conclusão
Neste tutorial, exploramos o desenvolvimento de aplicações com Harbour, utilizando o framework Xharbour e a biblioteca Harbour-GTK para criar interfaces modernas e funcionais. Começamos com a configuração do ambiente e seguimos com a criação de um projeto básico, integramos a interface gráfica e concluímos com o estabelecimento de um ambiente de testes. Essas etapas garantem que desenvolvedores possam construir soluções ágeis e robustas. Você agora tem uma base sólida para começar a explorar ainda mais as capacidades do Harbour no desenvolvimento de aplicações avançadas.