# 4.2. Breve Descrição das Ferramentas do KDevelop

Com KDevelop você escolheu um pacote, que, em conjunto com a utilização de outras ferramentas, lhe disponibilizará um ambiente perfeito e flexível para desenvolvimento orientado por objectos de aplicações em Sistemas Unix. Geralmente, o KDevelop consiste do ambiente de programação e do editor de diálogos; para além disso todos os programas necessários que possam ser úteis para a programação de aplicações estão imbutidos de uma forma ou de outra.

## 4.2.1. Ambiente de Desenvolvimento e Editor de Diálogos

### 4.2.1.1. O Ambiente de Desenvolvimento

O Ambiente de Desenvolvimento é o interface do utilizador que o KDevelop disponibiliza para a criação e manutenção de projectos, utilizando implicitamente muitas outras ferramentas simplificando a sua utilização. O Editor e Navegador de Ajuda incorporados bem como o Navegador de Classes reduzem a quantidade de trabalho que o processo de desenvolvimento normalmente coloca sobre o programador. A facilidade de utilização tornam a programação de aplicações para Unix um prazer por si só e irá provavelmente resultar em ciclos de lançamento de novas versões mais curtos e mais melhorias nas características. A partir daqui, está a gerir o seu projecto através de todos os seus detalhes, mantém uma visão geral das suas classes e não tem de utilizar consolas adicionais para o seu trabalho, bem como a integração de todos os interfaces de utilizador resulta em que você apenas tem de trabalhar com uma janela dentro do X e em vez de ter de controlar várias espalhadas pelo seu ambiente de trabalho.

### 4.2.1.2. O Editor de Diálogos

O editor de diálogos incorporado no KDevelop oferece uma forma simples de desenhar interfaces de utilizador com as bibliotecas Qt e KDE . A sua forma simples de fazer quase tudo com o rato permite uma construção rápida de diálogos e ecrãs principais para aplicações e a sua transformação directa em código C++, que é directamente adicionado ao projecto. Como o editor de diálogos está incorporado no resto do interface do utilizador KDevelop, tem disponíveis os mesmos comandos que teria estando a trabalhar em modo Programação. Isto permite por ex. construir um diálogo, geração de código de output e o seu teste directo dentro do programa pela disponibilidade dos comandos make e pode ainda controlar o output do compilador sem ter de voltar para a vista de programação. Para uma descrição detalhada, veja \|\|.

## 4.2.2. KAppWizard e as Ferramentas de Classes

O KAppWizard e as Ferramentas de Classes oferecidas para geração de projectos e extenção automática de código têm como intuito tornar a criação de aplicações fácil e segura e oferece uma boa forma de iniciados na programação Qt /KDE iniciarem-se e realmente trabalharem nos detalhes de desenho do Interface Gráfico do Utilizador da aplicação, já que os resultados conseguem ser atingidos muito rapidamente.

### 4.2.2.1. KAppWizard

O KAppWizard tem como objectivo criar projectos de aplicações completamente funcionais que estão prontos a correr utilizando ferramentas standard GNU e, para programas gráficos, ganhar proveito das bibliotecas KDE e Qt . Especificando apenas a informação que é requerida como um mínimo, os utilizadores podem começar a trabalhar num novo projecto em segundos. Chamar o KAppWizard deveria ser o primeiro passo a ser realizado para criar novas aplicações com o KDevelop.

O KAppWizard oferece-lhe um chamado esqueleto (ou moldura) de aplicação com todos os ficheiros de código C++ necessários para uma aplicação executável. Depois de você especificar um nome de projecto e defenir as preferências necessárias, o seu novo projecto será gerado e terá uma aplicação completa que já conterá imensas funcionalidades (para projectos KDE e Qt), sem mesmo ter de escrever uma linha de código C++ sozinho. Caso especifique o conjunto total de opções que o gerador de programas disponibiliza, a sua aplicação já conterá:

- um interface SDI (para trabalhar com um documento por janela de aplicação), baseado no modelo de controlo de vista de documento

- Menus e diálogos para abrir e gravar ficheiros bem como diálogos de impressão

- uma barra de ferramentas e de estados já dispondo de total funcionalidade

- um sistema de ajuda, contendo um manual do utilizador baseado em sgml e uma ajuda de barra de estados

- uma documentação API (interface de programação da aplicação) completa baseada em HTML para o estado actual do projecto

- uma rotina de instalação através do make

O KAppWizard está disponível no menu Projecto, opção "Novo...".

### 4.2.2.2. Ferramentas de Classe

O termo "Ferramentas de Classe" descreve uma variedade de funções que estão disponíveis para o programador num projecto não só através de uma linguagem orientada por objectos mas utilizando o código fonte de uma forma orientada por objectos. Trabalhando com classes em vez de ter de olhar para ficheiros oferece uma forma muito flexível de extender o seu projecto e permite ao programador concentrar-se nos objectos que o projecto contém. As ferramentas que o KDevelop oferece são um Gerador de Classes e um Navegador de Classes, em que cada um disponibiliza bastantes funcionalidades automatizadas.

#### 4.2.2.2.1. Criar uma nova classe com o Gerador de Classes

Após gerar um projecto com o KAppWizard o seu trabalho como programador seria adicionar um conjunto de classes que coincidiriam com o desenho da aplicação. O processo típico sem utilizar o KDevelop seria criar um novo header e ficheiro de código fonte, adiciona-los manualmente ao correspondente Makefile.am e começar a escrever as declarações e implementações de classe. Para simplificar todo o processo, o Gerador de Classes permite-lhe fazer isto apenas especificando a nova classe pelo seu nome, classe de onde herda, atributos herdados e mais informação tal como documentação da classe segundo os seus objectivos para o projecto. Adicionalmente, pode também mudar os nomes dos ficheiros que são pré-definidos pelo gerador e se a classe teria por defeito Qt-sinal/espaço (signal/slot).

O resto do trabalho é feito automaticamente- não tem de se preocupar com os Makefile.am, ficheiros e a classe em sí. Uma nova invocação do "make" é o suficiente para incluir a nova classe no processo de compilação. Como o Navegador de Classes se actualiza após a adição de uma classe, a declaração e implementação está disponível desde logo e pode começar a trabalhar na extensão da classe. O Gerador de Classes é invocado pelo menu Projecto, opção "Nova Classe".

#### 4.2.2.2.2. O Navegador de Classes

O Navegador de Classes apresenta todos os tipos de objectos e funções do seu projecto numa árvore à esquerda das janelas de edição. Um analisador de classes percorre todos os ficheiros procurando métodos e classes e torna-os acessíveis através de símbolos gráficos. Sobre eles, menus de contexto oferecem uma funcionalidade especializada para trabalhar com o código fonte focando-se nas classes e funções.

Seleccionar uma classe resultará na abertura do ficheiro que contém a declaração; em métodos e funções isto irá mostrar-lhe a implementação. Para uma descrição completa, veja O Navegador de Classes