De que se trata o artigo

Este artigo demonstra uma importante ferramenta para auxiliar na depuração das aplicações desenvolvidas no Delphi XE 2, o CodeSite, abordando suas principais características, componentes e formas de empregá-la no dia-a-dia, com o intuito de ajudar na identificação e solução de possíveis falhas de execução, bem como registrar tudo o que ocorre no Software através de arquivos de Log.


Em que situação o tema é útil

Agilizar no processo de identificação de erros presentes na aplicação que podem ser difíceis de ser encontrados por meio dos métodos tradicionais de depuração, empregando formas avançadas para este processo, visando assim uma maior produtividade para o desenvolvedor e qualidade para o Software final.

CodeSite

No ambiente de desenvolvimento de Softwares, os indesejáveis “erros” são praticamente inevitáveis, principalmente em casos onde complexas rotinas devem ser empregadas. Evidentemente, problemas simples podem ser resolvidos de uma forma rápida mesmo sem uma avançada ferramenta de auxílio, apenas utilizando um depurador básico e o recurso de breakpoints, revisando o trecho que apresenta o problema, mas nem sempre este processo é assim. Podem surgir falhas complexas ou erros pouco detalhados, fazendo com que o desenvolvedor tenha que revirar a aplicação em busca de uma reposta, perdendo muito tempo que poderia ser empregado em outras tarefas. Diante deste fator, existe uma ferramenta que acompanha a suíte de aplicativos do RAD Studio, o CodeSite. Esta ferramenta incorpora a implementação de novas técnicas para auxiliar na identificação das possíveis falhas, através de métodos e visualizadores que permitem um monitoramento dos processos em tempo real ou ainda, através da gravação de arquivos de Log. Neste artigo serão apresentadas formas de gerar informações sobre os processos internos do Software, facilitando assim a identificação de erros, primeiramente adotando um processo manual, através da simples gravação de um arquivo txt e posteriormente, de uma maneira mais ampla e produtiva, com a utilização dos recursos da ferramenta CodeSite.

O desenvolvimento de aplicações é um processo que envolve diversas etapas que se iniciam no planejamento e seguem até as fases de manutenção e atualização. Contudo, quando um Software começa a receber uma série de recursos e se torna cada vez mais complexo, é comum que erros e outros contratempos apareçam, embora isto ocorra também em aplicações de pequeno porte. Muitas vezes, as falhas são fáceis de serem identificadas e corrigidas, porém, erros difíceis de serem encontrados também fazem parte do cotidiano da equipe de desenvolvimento. Diante deste fator, um recurso extremamente comum que é adotado é a depuração (Debug), que pode estar presente na própria ferramenta de desenvolvimento, através de Softwares de terceiros ou ainda ser efetuada de forma manual, através da geração de arquivos de Log ou mensagens.

O Delphi conta com uma ferramenta de Debug integrada em seu ambiente, que auxilia no processo de análise e identificação de falhas, onde recursos específicos como os Breakpoints podem ser utilizados. Todavia, a identificação de certos tipos de erros pode ser uma tarefa demorada, onde surgem diversas dificuldades que devem ser consideradas. Dentro deste fator, existe a ferramenta CodeSite desenvolvida pela Raize Software e que acompanha o Delphi e as outros IDEs do RadStudio desde as versões mais antigas, oferecendo diversas funcionalidades para o recurso de depuração, permitindo uma análise mais rápida e detalhada do Software para os desenvolvedores e garantindo assim uma melhor qualidade do mesmo. Através dele, o desenvolvedor pode inserir comandos no código fonte da aplicação em questão com o intuito de enviar mensagens para as ferramentas de visualização que compõem o CodeSite e assim, poder analisar o comportamento da mesma de uma forma otimizada e no momento em que as ações são executadas, facilitando assim a descoberta de erros. Este processo pode ser efetuado sem que a execução do programa seja interrompida, uma vez que traz consigo um novo modelo de depuração, dispensando o uso de breakpoints, permitindo que logs possam ser gerados e facilmente consultados para que as prováveis falhas possam ser identificadas. Vale lembrar que o CodeSite também não se limita a estruturas de dados simples, registrando além dos processos e falhas, o momento em que as mesmas ocorrem. O sistema de registros do CodeSite é baseado praticamente em três componentes principais, sendo eles as classes de Log (Logging Classes), o Dispatcher (despachante) e os visualizadores (Viewers). Para o processo de log a classe principal que pode ser utilizada no Delphi é a TCodeSiteLogger, que por sua vez possui uma diversidade de funções, sendo o método Send um dos mais utilizados, já que o mesmo permite o envio de diversas mensagens para a ferramenta. Este método também é sobrecarregado (overload), suportando diversos tipos para o envio das mensagens. Outra classe que pode ser empregada na utilização da ferramenta CodeSite é a TCodeSiteManager. Ela possui várias propriedades que podem ser definidas para as instâncias da classe TCodeSiteLogger. A próxima ferramenta, o Dispatcher, assim como seu nome sugere, é um processo que roda em segundo plano na qual tem o objetivo de transferir as mensagens enviadas pelos métodos da classe TCodeSiteLogger para um destino final, que pode ser uma aplicação rodando em paralelo ou um arquivo presente no disco rígido, localmente ou remotamente através de uma rede. Contudo, apesar das mensagens serem enviadas e se tornarem uma tarefa a mais para aplicação, o desempenho da mesma é mantido. Também existe uma aplicação externa que permite o gerenciamento de algumas funcionalidades da ferramenta Dispatcher, o CodeSite Controller. Já os visualizadores são as outras ferramentas presentes no CodeSite para que as informações geradas possam ser visualizadas e analisadas em tempo real, através da ferramenta CodeSite Live Viewer, ou posteriormente, por meio do carregamento de um arquivo de log, através da ferramenta CodeSite File Viewer, onde diversos recursos estão presentes para que a informação possa ser filtrada. Vale a pena salientar também que a extensão adotada para os arquivos de log do CodeSite é a csl. Outro ponto interessante é que as ferramentas podem ser rapidamente executadas através do Delphi através do menu Tools>CodeSite.

...
Quer ler esse conteúdo completo? Tenha acesso completo