Capítulo 4. Importação e Geração de Código

O Umbrello UML Modeller é uma ferramenta de modelação de UML e, como tal, o seu objectivo principal é ajudá-lo na análise e desenho dos seus sistemas. Contudo, para fazer a transição entre o seu desenho e a sua implementação, o Umbrello UML Modeller permite-lhe gerar código-fonte em várias linguagens de programação diferentes para o preparar a si. Também, se você quiser começar a usar o UML num projecto já iniciado de C++, o Umbrello UML Modeller pode ajudá-lo a criar um modelo do seu sistema a partir do código-fonte, analisando-o e importando as classes que forem encontradas nele.

Geração de Código

O Umbrello UML Modeller pode gerar código para várias linguagens de programação, baseando-se no seu Modelo UML para o ajudar a iniciar a implementação do seu projecto. O código gerado consiste nas declarações das classes, com os seus métodos e atributos, de modo a que você possa preencher as lacunas, fornecendo a funcionalidade das operações das suas classes.

O Umbrello UML Modeller 2 vem com o suporte de geração de código para ActionScript, Ada, C++, C#, D, IDL, Java™, JavaScript, MySQL e Pascal.

Gerar Código

Para poder gerar código com o Umbrello UML Modeller, você precisa primeiro de criar ou carregar um modelo que contenha pelo menos uma classe. Quando estiver pronto para começar a escrever algum código, seleccione a opção Assistente de Geração de Código do menu Código que o irá guiar no processo de geração de código.

O primeiro passo é seleccionar as classes para as quais deseja gerar código-fonte. Por omissão, todas as classes do seu modelo estão seleccionadas e remover as que não quer gerar, passando-as para a lista do lado esquerdo.

O próximo passo do assistente permite-lhe modificar os parâmetros que o Gerador de Código usa ao criar o seu código. Estão disponíveis as seguintes opções:

Opções de Geração de Código no Umbrello UML Modeller

Opções de Geração de Código no Umbrello UML Modeller

Opções de Geração

Detalhe dos Comentários

A opção Escrever os comentários de documentação mesmo que vazios diz ao Gerador de Código para criar os comentários do tipo /** texto */ , mesmo que os blocos de comentários estejam vazios. Se você tiver adicionado documentação às suas classes, métodos ou atributos do seu modelo, o Gerador de Código irá escrever esses comentários como documentação do Doxygen, independentemente do que tenha indicado aqui, mas se você seleccionar esta opção, o Umbrello UML Modeller irá escrever os blocos de comentários para todas as classes, métodos e atributos, mesmo que não exista nenhuma documentação no modelo, onde neste caso deverá documentar as suas classes mais tarde no próprio código-fonte.

A opção Escrever os comentários para as secções mesmo que estas estejam vazias faz com que o Umbrello UML Modeller escreva os comentários no código-fonte para delimitar as várias secções de uma classe. Por exemplo, os métodos públicos ou os Atributos antes das secções correspondentes. Se você seleccionar esta opção, o Umbrello UML Modeller irá escrever os comentários de todas as secções da classe, mesmo que a secção esteja vazia. Por exemplo, iria escrever um comentário a dizer métodos protegidos, mesmo que estes não existam na sua classe.

Pastas

Criar todos os ficheiros gerados na pasta. Aqui você deverá indicar a pasta onde quer que o Umbrello UML Modeller coloque o código gerado.

A opção Incluir os ficheiros da pasta permite-lhe inserir um cabeçalho no início de cada ficheiro gerado. Os ficheiros de cabeçalho poderão conter alguma informação de direitos de cópia ou de licenças ou conterem variáveis que sejam avaliadas na altura da geração. Você poderá dar uma vista de olhos nos ficheiros de cabeçalho-modelos que vêm com o Umbrello UML Modeller para ver como é que poderá usar essas variáveis para substituir o seu nome ou a data actual na altura da geração.

Política de Sobreposição

Esta opção diz ao Umbrello UML Modeller o que fazer se o ficheiro que ele desejar criar já existir na pasta de destino. O Umbrello UML Modeller não pode modificar os ficheiros de código existentes, por isso você terá de optar entre sobrepor o ficheiro existe, ignorar a geração desse ficheiro em particular ou deixar que o Umbrello UML Modeller escolha um nome de ficheiro diferente. Se você escolher a opção para usar um nome diferente, o Umbrello UML Modeller irá adicionar um sufixo ao nome do ficheiro.

Linguagem

O Umbrello UML Modeller irá gerar por omissão o código para a linguagem que você tenha indicado como Linguagem Activa mas, com o Assistente de Geração de Código, você tem a opção de alterar isto para outra linguagem.

Assistente de Geração - Geração

O terceiro e último passo do assistente mostra o estado do processo de Geração de Código. Você só terá de carregar no botão Gerar para ficar com as classes criadas para si.

Tenha em atenção que as Opções que seleccionar durante o assistente de Geração de Código só são válidas para a geração actual. Da próxima vez que você executar o Assistente, você terá de seleccionar de novo todas as opções (a sua pasta de cabeçalhos, a política de sobreposição, e assim por diante). Você poderá configurar os valores por omissão usados pelo Umbrello UML Modeller na secção de Geração de Código da configuração do Umbrello UML Modeller, a qual está disponível em ConfiguraçãoConfigurar o Umbrello UML Modeller...

Se você tiver configurado as suas opções de Geração de Código para os valores correctos e quiser gerar já algum código sem ter de percorrer o assistente, você poderá seleccionar a opção Gerar Todo o Código do menu Código. Isto irá gerar o código para todas as classes do seu modelo com as opções actuais (incluindo a Pasta do Resultado e a Política de Sobreposição, por isso use isto com cuidado).