Lição 2: Conhecer seu ambiente de desenvolvimento

Autodesk Support

31 de março de 2023


Visão geral do meu primeiro plug-in do AutoCAD> Lição 1 > Lição 2 > Lição 3 > Lição 4 > Lição 5 >> Lição 6 >> Lição 7 > Lição 8

Na lição anterior, você viu como aumentar a produtividade no AutoCAD implementando um plug-in criado a partir de uma pequena quantidade de código Visual Basic .NET.

.NET (ou .NET Framework) é uma tecnologia criada pela Microsoft que permite aos programadores criar e estender aplicativos de software. Um programador pode usar o .NET Framework para criar um novo aplicativo de software a partir do zero, para implementar comunicação ou interoperabilidade entre dois aplicativos de software ou para estender um aplicativo de software implementando um plug-in para ele (como você está fazendo aqui para o AutoCAD). Se estiver interessado em saber mais, você encontrará informações na seção Tópicos adicionais.

Agora, você verá mais de perto o que aconteceu quando construiu e executou o código na lição anterior.

Fornecer feedback: forneça comentários sobre este treinamento do AutoCAD ou esta lição em email:%00a0myfirstplugin@autodesk.com

O que significa "construir" código?

O código que você digitou na Comunidade do Visual Studio na Lição 1 foi um conjunto de instruções legível por humanos (código fonte) que precisavam ser convertidas em código que pudessem ser entendidas e executadas pelo computador. A "compilação" que você executou fez exatamente isso: empacotou o código executável resultante em um DLL (Biblioteca de vínculo dinâmico) que pode ser carregado no AutoCAD.

A captura de tela a seguir mostra a saída no formulário DLL junto com o banco de dados de depuração do programa associado (que fornece informações adicionais ao solucionar o problema da DLL) que você criou usando a Comunidade do Visual Studio na Lição 1. O caminho para onde a DLL é compilada é especificado nas configurações do projeto da Comunidade do Visual Studio e é definido, por padrão, para a subpasta bin\Release ou bin\Debug da pasta de projeto da Comunidade do Visual Studio (dependendo se você estiver desenvolvendo uma versão de Liberação ou Depuração de sua DLL - falaremos sobre isso mais tarde).

Escolher uma ferramenta de desenvolvimento e linguagem de programação

Assim como os humanos usam diferentes idiomas para se comunicar, você tem várias opções de idioma disponíveis ao criar um plug-in do AutoCAD: para os fins deste guia, escolhemos o Visual Basic .NET, uma forte linguagem de programação de uso geral. O Visual Basic .NET é particularmente popular entre as pessoas que aprendem a programar, porque a sintaxe da linguagem é mais facilmente legível que muitas outras linguagens (como C# ou C++).

Há diversas ferramentas disponíveis para desenvolver o código Visual Basic .NET. Elas variam de ferramentas de código aberto, como o SharpDevelop e o MonoDevelop, até o ambiente de desenvolvimento profissional mais importante da Microsoft, o Visual Studio. Este tutorial presume que você esteja usando a Comunidade do Visual Studio, uma versão gratuita do Visual Studio para a criação de aplicativos Visual Basic .NET.

A Comunidade do Visual Studio é um Ambiente de Desenvolvimento Integrado (IDE) porque é composta por diversas ferramentas, menus e barras de ferramentas que facilitam a criação e o gerenciamento do seu código.

O sistema de projeto na Comunidade do Visual Studio compreende os arquivos de Solução e Projeto, bem como os itens de projeto, os arquivos individuais que pertencem aos projetos. Uma solução é um contêiner para um ou mais projetos. Cada projeto pode, por sua vez, ser considerado um container para itens do projeto - como arquivos de origem, ícones, etc. - a maioria dos quais é compilada no arquivo executável resultante (EXE ou DLL). A Comunidade do Visual Studio fornece um Gerenciador de Soluções que organiza e exibe o conteúdo da solução carregada em um formato de visualização em árvore:

A interface da Comunidade do Visual Studio também contém um editor de texto e um projetista de interface. Estes são exibidos na janela principal dependendo do tipo de arquivo que está sendo editado. O editor de texto é onde você irá inserir o código Visual Basic .NET para seu plug-in do AutoCAD. Este editor fornece recursos avançados como IntelliSense e seções de código recolhíveis junto com os recursos mais clássicos de edição de texto, como marcadores e a exibição de números de linha.

O IntelliSense é um recurso extremamente valioso da família Visual Studio que melhora muito a produtividade do programador: ele fornece automaticamente sugestões para o código que está sendo escrito com base nos objetos disponíveis e nas letras que estão sendo digitadas. Você já terá visto o IntelliSense em funcionamento se tiver digitado o código na Lição 1. Essa é uma das razões pelas quais sugerimos que você não copie e cole.

Claramente, um dos principais recursos da Comunidade do Visual Studio é sua capacidade de criar o código Visual Basic .NET em um arquivo executável. Durante o processo de compilação, o compilador de linguagem executa diversas verificações e análises no código. Uma dessas verificações é garantir que o código esteja em conformidade com as regras sintáticas da linguagem Visual Basic .NET. O compilador também executa várias outras verificações, como se uma variável foi definida ou não adequadamente. Os erros detectados são reportados através da janela Lista de erros, normalmente encontrada na parte inferior da janela principal. Se você cometeu um erro ao digitar o código na lição 1, talvez já tenha visto isso quando tentou construir o plug-in.

 Revisar o uso da Comunidade do Visual Studio

Nesta seção, você analisará as etapas executadas usando a Comunidade do Visual Studio na lição anterior. No entanto, vamos colocá-los no contexto do que você acabou de aprender sobre programação em geral e construção do seu código.

1. Na primeira etapa, você simplesmente iniciou a Comunidade do Visual Studio. 

2. Em seguida, você criou um novo projeto Visual Basic .NET do tipo plug-in do AutoCAD. Este modelo de projeto foi adicionado quando você instalou os Assistentes do AutoCAD .NET.

Como o idioma de desenvolvimento usado para este guia é o Visual Basic .NET, você está trabalhando com o Visual Basic na Comunidade do Visual Studio e, portanto, verá o Visual Basic na parte Modelos instalados da caixa de diálogo Novo projeto. O modelo de plug-in do AutoCAD é essencialmente um modelo de Biblioteca de classes, mas com algumas configurações adicionais.

Na seção central desta caixa de diálogo, você viu vários tipos de aplicativos que podem ser criados; você seleciona o modelo de acordo com o tipo de aplicativo que deseja criar.

O nome inserido na parte inferior da caixa de diálogo é utilizado para identificar o projeto dentro da solução.

3. Seu projeto em branco foi criado, contendo algumas referências de projeto padrão para os principais componentes .NET, juntamente com referências para os três arquivos que definem a API do AutoCAD (AcCoreMgd.dll, AcMgd.dll e AcDbMgd.dll). O projeto também inclui dois arquivos de classe Visual Basic .NET (MyCommands.vb e MyPlugin.vb - você pode ter opcionalmente excluído o arquivo MyPlugin.vb do projeto porque ele não é necessário para este tutorial). Estes arquivos continham alguns códigos simples padronizados. Clicar em um desses arquivos no Gerenciador de Soluções exibe o código que contém na janela do editor de texto.

4. Você observou a seção Referências das configurações do projeto ‘Meu projeto’ e verificou se AcCoreMgd.dll, AcDbMgd.dll e AcMgd.dll estavam corretamente referenciados (Observação: AcCoreMdg.dll é do AutoCAD 2013 e superior).


5. Salvar a solução criou arquivos físicos que representam o conteúdo do projeto no disco rígido do computador, permitindo que você abra e edite em outro momento no futuro. Você fechou e reabriu o projeto para garantir que a Comunidade do Visual Studio tivesse analisado corretamente os arquivos de projeto.

6. AcCoreMgd.dll, AcMgd.dll e AcDbMgd.dll contêm definições das APIs do AutoCAD que você usará com mais frequência em seus plug-ins. Você sempre fará referência a esses arquivos em seus projetos de plug-in do AutoCAD. Às vezes, você também fará referência a outros.

  • AcMgd.dll contém as APIs para controlar o próprio aplicativo AutoCAD - definindo comandos personalizados abrindo e fechando documentos, plotando, etc.
  • AcDbMgd.dll contém as APIs para criar, editar ou consultar o conteúdo de um arquivo DWG.
  • A partir do AutoCAD 2013, as APIs em AcMdg.dll foram divididas entre AcMgd.dll e AcCoreMgd.dll. AcCoreMgd.dll contém APIs relacionadas ao login do aplicativo AutoCAD (como conjunto de seleções, comandos e palavras-chave) e AcMgd.dll contém APIs relacionadas à "Interface do usuário" (como caixas de diálogo).

Quando você criou o projeto de plug-in do AutoCAD, a caixa de diálogo AutoCAD .NET Wizard Configurator tinha esses arquivos selecionados por padrão (não é possível cancelar a seleção). Havia opções para incluir outros arquivos de definição de API que ignoramos.

7. Em seguida, você adicionou o código Visual Basic .NET usando a API do AutoCAD em seu projeto. Em outras palavras, fornecer ao AutoCAD instruções sobre como modificar o comportamento de um atributo de bloco quando ele é rotacionado.

Ao desenvolver o código, é uma boa ideia criar a solução de tempos em tempos, para verificar se os erros foram introduzidos no código. O código não precisa necessariamente ser completo ou funcional ao criar a solução. Essa abordagem pode ajudar a evitar uma solução de problemas potencialmente demorada quando o código for concluído e tem o benefício colateral de salvar automaticamente quaisquer arquivos de origem editados antes do início da compilação.

Para criar uma solução dentro da Comunidade do Visual Studio, selecione Criar solução no menu suspenso Construir.

Se o processo de compilação for bem-sucedido, você verá um status Compilação bem-sucedida no canto inferior esquerdo da estrutura do aplicativo da Comunidade do Visual Studio. Se houver um erro no código, a Comunidade do Visual Studio exibirá uma lista de erros explicando os erros encontrados. Ele também sublinhará o erro em azul no seu código. Aqui está um exemplo onde adicionamos deliberadamente um erro ao código que você digitou na lição um:

Nesta lição, você observou brevemente o que acontece quando você cria um projeto, bem como algumas informações de fundo sobre o Visual Basic .NET e a Comunidade do Visual Studio. Você revisou as etapas que tinha tomado na lição anterior para criar seu plug-in básico do AutoCAD, colocando-o no contexto do que você aprendeu sobre programação.

Tópicos adicionais

Comunidade do Visual Studio vs. Visual Studio Professional
Neste guia, você está usando a Comunidade do Visual Studio. Esta é uma versão gratuita do Visual Studio e, portanto, é uma ótima ferramenta para começar a aprender. A Microsoft tem como alvo as edições da Comunidade do Visual Studio para estudantes, amadores e outros programadores em meio período. Embora forneça a maioria dos recursos do Visual Studio Professional, como o IntelliSense, ele tem certas limitações. Por exemplo, ele contém menos modelos de projeto e tem opções limitadas para depuração e solução de problemas de seu código. Se você estiver falando sério sobre o desenvolvimento de plug-ins além deste guia de introdução - e especialmente se quiser começar a desenvolver plug-ins comerciais - recomendamos investir em um dos membros mais reproduzidos da família de produtos Visual Studio.

*Há várias versões "profissionais" do Visual Studio. Visite o site do Microsoft Visual Studio para obter mais informações.

O que é .NET?
O restante desta lição inclui um pouco de jargão técnico. Não se preocupe se você não entender completamente tudo quando ler pela primeira vez. Isso fará mais sentido quando você se familiarizar com o .NET depois de escrever alguns de seus próprios plug-ins.

O .NET Framework é uma estrutura de software que se encontra sobre o sistema operacional Microsoft® Windows®* e fornece a plataforma, as bibliotecas e os serviços subjacentes para todos os aplicativos .NET. Os serviços incluem gerenciamento de memória, coleta de lixo, sistema de tipo comum, bibliotecas de classe etc.

* Subconjuntos de .NET também estão disponíveis em outros sistemas operacionais, seja por meio do projeto Mono de código aberto ou por meio do Microsoft® Silverlight®, mas esses não são tópicos para este guia. Você se concentrará exclusivamente em usar o .NET no Microsoft Windows.

O que o .NET Framework contém?
A estrutura contém dois componentes principais:

1. CLR (Common Language Runtime) - Este é o agente (ou mecanismo de execução) no .NET Framework responsável por gerenciar a execução do código. É por isso que o código gravado para este tempo de execução também é conhecido como código gerenciado. Todos os códigos gerenciados são executados sob a supervisão do CLR, mas o que isso significa? O CLR gerencia o código fornecendo serviços essenciais, como gerenciamento de memória (que inclui a liberação automática da memória do computador para reutilização em outras tarefas quando ele não for mais necessário), tratamento de erros (ou exceções), gerenciamento do uso de vários threads de execução e garantia de que as regras relacionadas ao uso de diferentes tipos de objetos sejam seguidas. O CLR é realmente a base do .NET Framework. 

2. Biblioteca de classes do .NET Framework - Como o nome sugere, esta é uma biblioteca ou coleção de tipos de objetos que podem ser usados de seu próprio código ao desenvolver aplicativos .NET. Esses aplicativos .NET são direcionados para o Windows (seja com base em prompt de comando ou com uma interface gráfica do usuário), para a Web ou dispositivos móveis. Esta biblioteca está disponível para todos os idiomas que usam o .NET Framework.

Como mencionado acima, o CLR melhora a robustez do código ao assegurar que o código de execução esteja em conformidade com um sistema de tipo comum (CTS). O CTS garante que todos os códigos .NET (ou gerenciados) - independentemente do idioma - utilizem um conjunto similar de tipos de objetos e possam trabalhar juntos no mesmo ambiente. É esse recurso que permite escrever aplicativos na linguagem de desenvolvimento de sua escolha e, ainda assim, usar componentes/códigos escritos por programadores usando outras linguagens .NET.

Executáveis de construção
Quando você compilou seu código em um EXE, ele foi compilado em um código de Linguagem Intermediária Comum (CIL - também conhecido como MSIL) usando o compilador específico de linguagem. CIL é um conjunto de instruções independente de CPU que pode ser executado pelo CLR em sistemas operacionais Windows. A CIL é normalmente portável em sistemas de 32 e 64 bits e até mesmo - até certo ponto - em sistemas operacionais não Windows. O código CIL gerado a partir do código fonte VB foi empacotado em uma montagem .NET. Essa montagem é uma biblioteca de código CIL armazenada no formato Executável portátil (PE) (que contém o CIL e seus metadados associados). As montagens podem ser montagens de processo (EXEs) ou montagens de biblioteca (DLLs).

Durante o curso deste guia, você se concentrará no desenvolvimento de um determinado tipo de plug-in do AutoCAD: uma montagem de processo (EXE) que se comunica com o AutoCAD. Devido à sobrecarga associada ao seu desenvolvimento, você não perderá tempo examinando os complementos do AutoCAD, que normalmente são montagens de biblioteca (DLLs) que são carregadas e executadas no espaço de memória do AutoCAD. Um motivo pelo qual a implementação de um EXE para trabalhar com o AutoCAD é mais simples do que desenvolver um AddIn está relacionado à sua interface de usuário: os executáveis não precisam se integrar perfeitamente à interface de usuário do AutoCAD adicionando botões da faixa de opções (por exemplo).

Executáveis em execução

Durante a execução de uma montagem .NET, a CIL (residente na montagem) é passada através do compilador just-in-time (JIT) do CLR para gerar código nativo (ou de máquina). A compilação JIT do código nativo CIL ocorre quando o aplicativo é executado. Como nem todo o código é necessário durante a execução, o compilador JIT converte somente o CIL quando necessário, economizando tempo e memória. Ele também armazena qualquer código gerado na memória, tornando-o disponível para uso posterior sem a necessidade de recompilar.

Na última etapa desse processo, o código nativo é executado pelo processador do computador.

Se desejar obter mais detalhes sobre o processo de criação de aplicativos .NET, consulte a Biblioteca MSDN.

Visão geral do meu primeiro plug-in do AutoCAD> Lição 1 > Lição 2 > Lição 3 > Lição 4 > Lição 5 >> Lição 6 >> Lição 7 > Lição 8



Essas informações foram úteis?


Precisa de ajuda? Pergunte ao Autodesk Assistant!

O assistente pode ajudar você a encontrar respostas ou falar com um agente.


Qual é o seu nível de suporte?

Diferentes planos de assinatura oferecem categorias distintas de suporte. Saiba qual é o nível de suporte do seu plano.

Visualizar níveis de suporte