Avançar para a área de conteúdo

Ao clicar em Enviar, você concorda com os termos e condições do developerWorks.

A primeira vez que acessar o developerWorks, um perfil será criado para você. Informações do seu perfil (tais como: nome, país / região, e empresa) estarão disponíveis ao público, que poderá acompanhar qualquer conteúdo que você publicar. Seu perfil no developerWorks pode ser atualizado a qualquer momento.

Todas as informações enviadas são seguras.

  • Fechar [x]

Ao se conectar ao developerWorks pela primeira vez, é criado um perfil para você e é necessário selecionar um nome de exibição. O nome de exibição acompanhará o conteúdo que você postar no developerWorks.

Escolha um nome de exibição de 3 - 31 caracteres. Seu nome de exibição deve ser exclusivo na comunidade do developerWorks e não deve ser o seu endereço de email por motivo de privacidade.

Ao clicar em Enviar, você concorda com os termos e condições do developerWorks.

Todas as informações enviadas são seguras.

  • Fechar [x]

Desenvolvendo folhas de dicas no Eclipse V3.2

Aprenda os aprimoramentos da V3.2

Philipp Tiedt, Software Engineer, IBM
Philipp Tiedt é engenheiro de software do Laboratório de Desenvolvimento da IBM em Boeblingen, Alemanha. Ele é bacharel em ciência da computação pela Open University. Antes de entrar para a IBM Alemanha em 2004, ele concluiu seu bacharelado no T.J. Watson Research Center da IBM em Hawthorne, Nova York. Suas áreas de interesse são Eclipse, design de interface com o usuário, tecnologia Java e arquitetura orientada a serviços.

Resumo:  As folhas de dicas, uma importante ferramenta de produtividade para usuários de Eclipse, ficaram ainda melhores no Eclipse V3.2. Nesta continuação do tutorial "Building cheat sheets in Eclipse", o engenheiro de software IBM Philipp Tiedt descreve os novos recursos de folhas de dicas e fornece exemplos de como usá-los.

Data:  22/Jul/2011 (Publicado em: 22/Jul/2011)
Nível:  Intermediário Também disponível em :   Inglês
Atividade:  1883 visualizações
Comentários:  


As folhas de dicas permitem que os usuários de Eclipse visualizem tutoriais interativos dentro do Eclipse Workbench para aprender a executar tarefas complexas no Eclipse. (Consulte "Building cheat sheets in Eclipse" para obter uma introdução abrangente sobre a criação de folha de dicas). As folhas de dicas são uma ótima maneira de guiar os usuários dos seus plug-ins Eclipse ou produtos baseados em Eclipse nas etapas que devem executar para usar seu software. O Eclipse V3.2 aprimora a tecnologia de folhas de dicas tornando-as mais fáceis de serem construídas e mais versáteis para os usuários.

Procurar no conteúdo de folhas de dicas

O mecanismo de procura da Ajuda do Eclipse foi bastante aprimorado. Uma das melhorias é que as folhas de dicas agora são indexadas, de forma que os resultados da procura na Ajuda incluem conteúdo correspondente nas folhas de dicas. Por exemplo, se quisermos ajuda para criar um plug-in, uma procura na Ajuda pelo termo "plug-in" retornará, entre outros conteúdos, folhas de dicas que correspondam à sua consulta. Uma procura por "plug-in" retorna quase 500 resultados em uma instalação básica do Eclipse V3.2, como mostrado na Figura 1.


Figura 1. Procura por "plug-in"


Com todos esses resultados, ainda pode ser difícil localizar as folhas de dicas que têm a ver com plug-ins. Refinar sua procura com o acréscimo dos termos "folha de dicas" à consulta pode reduzir demais os resultados e excluir conteúdo útil. Felizmente, é possível mostrar explicitamente os resultados em folhas de dicas se os resultados da procura forem exibidos em categorias, usando o botão de categoria mostrado na Figura 2.


Figura 2. Categorizando os resultados da procura


Abrir folhas de dicas a partir de arquivos de conteúdo

Até agora, as folhas de dicas eram ativadas a partir da página de abertura ou de uma lista na caixa de diálogo Cheat Sheet Selection. A caixa de diálogo Cheat Sheet Selection foi atualizada para permitir a abertura de um arquivo de conteúdo diretamente no sistema de arquivos (veja a Figura 3). Isso é útil principalmente ao escrever e revisar uma folha de dicas. Não é necessário implementá-la como um plug-in ou iniciar um ambiente de trabalho de tempo de execução para ver o resultado do seu trabalho. Basta abri-la como está, fornecendo o caminho completo para seu arquivo de conteúdo na área de trabalho.


Figura 3. Abrindo folhas de dicas a partir de um arquivo de conteúdo


Embora esse seja um recurso interessante para a visualização de resultados à medida que se desenvolve o conteúdo, há uma restrição: todos os comandos e ações referenciados nesse arquivo de conteúdo devem ser carregados na instância do Eclipse na qual o conteúdo é aberto. Ou seja, se desenvolvermos nossas próprias ações de folha de dicas e comandos de Eclipse em nosso plug-in de folha de dicas, não será possível carregá-los e usá-los simplesmente abrindo o arquivo de conteúdo. A plataforma exibirá um erro, informando que o plug-in ou classe referenciado ainda não foi carregado, como mostrado na Figura 4.


Figura 4. Erro ao tentar executar uma ação


Nesse caso, é necessário voltar ao modo antigo: implementar seu plug-in ou iniciar um ambiente de trabalho de tempo de execução para carregar seu código.


Integrar links de comando em conteúdo de assistência ao usuário

Com o Eclipse V3.2, é possível integrar comandos Eclipse a folhas de dicas. Isso acrescenta outra alternativa para automatizar seus tutoriais. A Listagem 1 mostra como integrar um comando.


Listagem 1. Comandos integrados

<?xml version="1.0" encoding="UTF-8"?>
<cheatsheet title="Open Browser">
  <intro>
    <description>This cheat sheet helps you to launch a browser via an 
        embedded command.</description>
  </intro>  
  <item title="Open Browser">
     <description>Use the following embedded command to launch the Eclipse Web site 
        in a browser</description>
     <command serialization=
        "org.eclipse.ui.browser.openBrowser(url=http://www.eclipse.org)"/>
  </item>
</cheatsheet>>

Comandos parametrizados

Os comandos parametrizados são comandos Eclipse que podem ser serializados em String. A cadeia de caractere do comando serializado contém o ID do comando e pares opcionais de valores de parâmetro. Para obter mais informações, veja a especificação da API de ParameterizedCommand (consulte Recursos).

O elemento command é um novo filho do elemento item . Ele permite especificar um comando serializado que usa o atributo serialization . Em geral, essa é apenas uma serialização String do ID de comando. Dependendo do comando, a serialização pode ter parâmetros adicionais. O elemento command pode especificar os atributos confirm e when , que são manipulados da mesma maneira que um elemento action .

O comando integrado na Listagem 1 simplesmente ativa o navegador do Eclipse e abre o Web site Eclipse.org passando a URL como parâmetro. Alguns comandos podem ter um valor de retorno, que pode ser designado a uma variável de folha de dicas usando o atributo returns . O valor retornado pode ser então usado como entrada de condição ou ser simplesmente apresentado ao usuário. Para obter mais informações sobre o elemento command , veja a especificação do formato de arquivo de conteúdo de folha de dicas (veja Recursos).


Acrescentar mensagens de conclusão

As folhas de dicas agora suportam mensagens de conclusão para itens e tarefas. Isso é especialmente útil para mostrar ao usuário que um procedimento complexo foi concluído. A mensagem de conclusão é uma sequência de texto simples que pode conter tags de formatação, como <b>/</b>. Veja a especificação do formato de arquivo de conteúdo de folha de dicas para obter mais informações (veja Recursos).

A mensagem pode conter referências a variáveis de folha de dicas a fim de exibir seu conteúdo. O código abaixo mostra uma mensagem de conclusão simples que exibe o conteúdo da variável.

<onCompletion>The content of the \
cheat sheet variable is ${variableName}.</onCompletion>


Desenvolvimento de folhas de dicas compostas

Um novo recurso interessante do Eclipse V3.2 é a capacidade de desenvolver folhas de dicas compostas, que permitem estruturar as folhas de dicas como árvores. Uma folha de dicas composta consiste em tarefas, e cada tarefa representa uma folha de dicas. As tarefas são agrupadas em grupos de tarefas.

Registrando uma folha de dicas composta

O ponto de extensão para o registro de uma folha de dicas composta é o mesmo que para uma simples. Contudo, um novo atributo composite aparece e ele marca se a folha de dicas é simples ou composta.


Listagem 2. Registrando uma folha de dicas composta

<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.2"?>
<plugin>
   <extension
         point="org.eclipse.ui.cheatsheets.cheatSheetContent">
      <cheatsheet
         composite="true"
         contentFile="content/content.xml"
         id="devworks.tutorial.cheatsheets.updated.composite"
         name="Composite Cheat Sheet"/>
   </extension>
</plugin>

Como acontece com as folhas de dicas simples, uma composta recebe um ID, nome e arquivo de conteúdo. O atributo composite deve ser configurado como true. Contudo, os arquivos de conteúdo das folhas de dicas compostas seguem uma especificação de esquema XML totalmente diferente.

Conteúdo composto

A Listagem 3 mostra como as tarefas e os grupos de tarefas são usados em uma folha de dicas composta e também explica atributos e elementos adicionais.


Listagem 3. Folha de dicas composta

<?xml version="1.0" encoding="UTF-8"?>
<compositeCheatsheet name="Work with the Eclipse Platform">
   <taskGroup name="Work with the Eclipse Platform" kind="choice">
      <intro>
         This cheat sheet offers different groups of tasks. Choose
         one or more groups and complete them.
      </intro>
      <onCompletion>
         Great! You have completed one or more task groups.
      </onCompletion>
      <taskGroup name="Java Development Tools" kind="sequence">
         <intro>
            Creating a Java project and a SWT Application.
            <br />
            You need to first complete the Java project task before
            you can start with the SWT Application.
         </intro>
         <onCompletion>
            Congratulations you have built both Java applications.
         </onCompletion>
         <task kind="cheatsheet" name="A Java project"
            id="createJavaProject">
            ...
         </task>
         <task kind="cheatsheet" name="A simple SWT application"
            id="createSWTApplication">
            ...
         </task>
      </taskGroup>
      <taskGroup name="Other tutorials" kind="set">
         <intro>
            This group contains several different tutorials. Just
            complete them in any order.
         </intro>
         <onCompletion>
            Great! You have completed all tutorials
         </onCompletion>
         <task kind="cheatsheet" name="Simple Plug-in tutorial"
            skip="true">
            ...
         </task>
         <task kind="cheatsheet" name="An other tutorial">
            ...
         </task>
      </taskGroup>
   </taskGroup>
</compositeCheatsheet>

O conteúdo da folha de dicas na Listagem 3 define um grupo de tarefas raiz que contém dois grupos de subtarefas, cada qual contendo duas tarefas. Use o elemento taskgroup para definir os grupos de tarefas. Em geral, os grupos de tarefas são usados para agrupar um conjunto de folhas de dicas relacionadas. Use o atributo kind para configurar o grupo de tarefas como um de três tipos:

  • set -- As folhas de dicas contidas podem ser concluídas em qualquer ordem. Contudo, todas devem ser concluídas para que o grupo seja concluído.
  • sequence -- As folhas de dicas contidas devem ser todas concluídas na ordem em que estão listadas.
  • choice -- Qualquer folha de dicas pode ser concluída em qualquer ordem.

O atributo skip deve ser configurado como true se todo o grupo de tarefas puder ser ignorado. O atributo name especifica o nome exibido para esse grupo de tarefas. Os elementos adicionais intro e onCompletion são utilizados da mesma maneira que para folhas de dicas simples e resultam em mensagens de introdução e de conclusão, respectivamente, para o grupo de tarefa.

A Listagem 3 compõe folhas de dicas para guiar o usuário por alguns tutoriais em áreas diferentes da plataforma Eclipse. Um tópico importante são as Java™ Development Tools, no primeiro grupo de tarefas, e os outros tópicos importantes são outros tutoriais que talvez sejam de interesse do usuário. (Note que essa é apenas uma amostra e não uma visão geral completa dos tutoriais em Eclipse).

O grupo de tarefas raiz é do tipo choice , o que significa que o usuário pode selecionar qualquer grupo de subtarefa e concluí-lo. O grupo de tarefas para as Java Development Tools é definido como sequence, de modo que o usuário deve primeiro concluir o tutorial do projeto Java antes de criar um aplicativo SWT simples. O último grupo de tarefas é definido como set, de modo que o usuário fica livre para concluir as subtarefas em qualquer ordem. A Figura 5 mostra a estrutura em árvore da folha de dicas.


Figura 5. Estrutura da folha de dicas composta


Na Figura 5, note que diferentes ícones representam diferentes tipos de grupos de tarefas. Além disso, a segunda tarefa no grupo Java Development Tools está esmaecida porque não pode ser iniciada antes de a primeira tarefa ser concluída.

Tarefas

Uma tarefa representa uma folha de dicas implementada usando o elemento task . A Listagem 4 explica isso com um pouco mais de detalhes.


Listagem 4. Elemento task

<task kind="cheatsheet" name="A Java project"
   id="createJavaProject">
   <param name="id" value="org.eclipse.pde.helloworld" />
   <param name="showIntro" value="false" />
   <intro>
      This tutorial guides you through the creation of a Java project.
   </intro>
   <onCompletion>
      Finished creating a Java project.
   </onCompletion>
</task>

Atribua a cada tarefa um nome e ID. O nome é exibido na árvore da folha de dicas, como mostrado acima na Figura 5. Use o valor do atributo ID para fazer referência a uma tarefa, por exemplo, ao declarar dependências entre tarefas ou grupos de tarefas. É possível configurar o skip opcional como true se o usuário puder ignorar a tarefa. Como acontece com grupos de tarefas, é possível usar os elementos intro e onCompletion para exibir uma mensagem de introdução e de conclusão da tarefa. O elemento parameter é usado para fazer referência a uma folha de dicas. Em geral, a folha de dicas é referenciada por seu ID, como mostrado na Listagem 4. O elemento parameter contém atributos de name e value .

A Tabela 1 mostra os parâmetros atualmente definidos.

Tabela 1. Parâmetros
nomevalor
idO ID (como definido na extensão org.eclipse.ui.cheatsheets.cheatSheetContent ) da folha de dicas que deve ser associado à tarefa.
pathPode ser uma URL absoluta do arquivo de conteúdo de outra folha de dicas ou uma URL do arquivo de conteúdo relativo ao arquivo de conteúdo do arquivo de conteúdo composto. Note que apenas um dos parâmetros ID e path deve ser especificado, não os dois.
showIntroSe for configurado como false, a introdução da folha de dicas será suprimida.

Dependências

Se uma tarefa ou grupo de tarefas depender da conclusão de outra tarefa ou grupo de tarefas, é possível usar o elemento dependency para conseguir isso. Ele simplesmente contém o atributo task , que especifica o ID da tarefa ou grupo de tarefas que deve ser concluído antes de iniciá-lo.

Um exemplo é uma tarefa que só pode ser executada se um projeto Java tiver sido criado primeiro. Essa tarefa teria uma dependência na tarefa mostrada na Listagem 4. O código abaixo mostra o elemento dependency com uma referência à tarefa que cria um projeto Java.

<dependency task="createJavaProject"/>


Conclusão

Este artigo apresentou uma breve visão geral das novidades sobre folhas de dicas no Eclipse V3.2, incluindo o recurso de folhas de dicas compostas. As folhas de dicas são um conceito-chave na assistência ao usuário do Eclipse e estão se tornando cada vez mais importantes. A tecnologia vai passar por mais melhorias. Alguns recursos adicionais estão em estado provisório para o Eclipse V3.2.

Dê uma olhada na documentação do ponto de extensão org.eclipse.ui.cheatsheets.cheatSheetContent para saber mais sobre os conceitos do taskEditor e taskExplorer (veja Recursos).


Recursos

Aprender

Obter produtos e tecnologias

Discutir

Sobre o autor

Philipp Tiedt

Philipp Tiedt é engenheiro de software do Laboratório de Desenvolvimento da IBM em Boeblingen, Alemanha. Ele é bacharel em ciência da computação pela Open University. Antes de entrar para a IBM Alemanha em 2004, ele concluiu seu bacharelado no T.J. Watson Research Center da IBM em Hawthorne, Nova York. Suas áreas de interesse são Eclipse, design de interface com o usuário, tecnologia Java e arquitetura orientada a serviços.

Ajuda para Relatar Abuso

Relatar abuso

Obrigado. Esta entrada foi sinalizada para atenção do moderador.


Ajuda para Relatar Abuso

Relatar abuso

Falha no envio do Relatório de abuso. Tente novamente mais tarde.


developerWorks: Registre-se


Precisa de um ID IBM?
Esqueceu seu ID IBM?


Esqueceu sua senha?
Alterar sua senha

Ao clicar em Enviar, você concorda com os termos de uso do developerWorks.

 


Na primeira vez que você efetua sign in no developerWorks, um perfil é criado para você. Informações selecionadas do seu perfil developerWorks são exibidas ao público, mas você pode editá-las a qualquer momento. Seu primeiro nome, sobrenome (a menos que escolha ocultá-los), e seu nome de exibição acompanharão o conteúdo que postar.

Selecione seu nome de exibição

Ao se conectar ao developerWorks pela primeira vez, é criado um perfil para você e é necessário selecionar um nome de exibição. O nome de exibição acompanhará o conteúdo que você postar no developerWorks.

Escolha um nome de exibição de 3 - 31 caracteres. Seu nome de exibição deve ser exclusivo na comunidade do developerWorks e não deve ser o seu endereço de email por motivo de privacidade.

(Deve possuir de 3 a 31 caracteres.)


Ao clicar em Enviar, você concorda com os termos de uso do developerWorks.

 


Classificar este artigo

Comentários

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=80
Zone=Software livre
ArticleID=742994
ArticleTitle=Desenvolvendo folhas de dicas no Eclipse V3.2
publish-date=07222011
author1-email=philipp_tiedt@de.ibm.com
author1-email-cc=