Construções

Construtores criam ou modificam recursos da área de trabalho baseados, geralmente, na existência e estado de outros recursos. Eles representam um mecanismo poderoso para reforçar as limitações de algum domínio. Por exemplo, um construtor Java converte arquivos fonte Java (arquivos .java) em arquivos de classe executáveis (arquivos .class), um construtor de link da web atualiza links para arquivos cujo nome/localização tenha sido alterado, etc.  Conforme os recursos são criados e modificados, os construtores são executados e as limitações são mantidas. Essa transformação não precisa ser de um para um. Por exemplo, um único arquivo .java pode produzir vários arquivos .class. 

Construção Automática vs. Construção Manual

Há dois modos de trabalho de usuário distintos relativos à construção: a confiança na construção automática ou a construção manual iniciada pelo usuário.

Usuários que não precisam de controle refinado sobre quando ocorrem as construções, podem escolher simplesmente ativar a construção automática.  Com sua ativação, as construções ocorrem depois de cada conjunto de alterações de recursos (por ex., salvamento de um arquivo, importação de um zip, ...).  A construção automática é eficiente porque a quantidade de trabalho realizado é proporcional à quantidade de alteração feita.  A vantagem da construção automática é que seus recursos derivados (por ex., arquivo .class Java) estão sempre atualizados. A construção automática é ativada/desativada através da opção Executar construção automaticamente na modificação de recursos na página Janela > Preferências > Workbench.

Usuários que precisam de mais controle sobre quando as construções ocorrerão poderão desativar a construção automática e chamar as construções manualmente. Às vezes, isso é desejável em casos onde, por exemplo, você sabe que a construção não terá nenhum valor até que você termine um grande conjunto de alterações. Nesse caso, não há vantagem em se pagar o custo da construção automática. As construções podem ser chamadas manualmente de várias maneiras, por exemplo, selecionando-se Reconstruir Tudo a partir do menu de contexto de um projeto. 

A desvantagem da construção manual é que as tarefas que foram geradas para indicar erros de construção tornam-se rapidamente desatualizadas até você realizar a construção. Além disso, é muito importante que você se lembre de construir manualmente antes de confiar na saída da construção (por ex., antes de executar o programa Java).

Construções Completas vs. Incrementais

Há dois tipos de construções: a completa e a incremental.  A incremental funciona com um estado de construção anterior e aplica as transformações dos construtores configurados somente nos recursos que foram alterados desde que o estado anterior foi calculado (ou seja, desde a última construção).  A construção automática utiliza a construção incremental para maior eficiência.

Uma construção completa (a.k.a. reconstrução) descarta qualquer estado de construção existente e transforma todos os recursos solicitados de acordo com as regras de domínio dos construtores configurados.  A primeira construção incremental equivale a uma construção completa, pois não há estado anterior a partir do qual trabalhar.

Dependendo das necessidades do usuário, as construções completas e incrementais podem ser feitas em um determinado conjunto de projetos ou na área de trabalho como um todo. Arquivos e pastas específicos não podem ser construídos.