Artigo do tipo Teórico
Recursos especiais neste artigo:
Conteúdo sobre boas práticas .
Realizando manutenção em código existente
Este artigo apresenta algumas recomendações para se trabalhar com código legado. A discussão das recomendações é apresentada no contexto de aplicações .NET sob um ponto de vista prático, mas o conteúdo pode ser aproveitado e aplicado ao desenvolvimento de sistemas utilizando qualquer linguagem/tecnologia.

Em que situação o tema é útil
A utilidade deste artigo é voltada para o desenvolvedor que recebe a tarefa de trabalhar com código fonte legado na plataforma .NET. As recomendações apresentadas são úteis tanto do ponto de vista técnico como do ponto de vista gerencial e pessoal, pois o artigo discute desde aspectos como tamanho das modificações até comportamentos e habilidades desejadas por quem trabalha com código legado.

Os profissionais que estão começando a aprender a programar devem ter em mente que, mais cedo ou mais tarde, será necessário fornecer manutenção ao código fonte existente. Este código fonte pode necessitar de modificações de acordo com novos requisitos, correção de bugs, refatoração para transformá-lo em algo mais legível ou mesmo estudo para montar novos códigos fonte. Além disso, faz parte da profissão de desenvolvedor de software saber lidar com código fonte existente, seja ele criado por quem está fazendo a manutenção ou por outra pessoa.

Baseado neste cenário este artigo apresenta algumas recomendações, melhores práticas, sugestões e ferramentas que podem auxiliar quem possui a tarefa de fornecer manutenção em código fonte existente na plataforma .NET. As práticas apresentadas neste artigo têm como objetivo evitar que o profissional mergulhe de cabeça no código fonte e gaste mais tempo e esforço mental do que o necessário para compreender e, eventualmente, modificar código existente.

O artigo está dividido em sessões que contém tópicos voltados para auxiliar a tarefa de manipular código fonte existente, porém tais sugestões também podem ser utilizadas no dia a dia de profissionais envolvidos na programação durante a criação de novos projetos. Apesar de o conteúdo se concentrar na programação da plataforma .NET, o conteúdo do artigo pode ser adaptado para outras linguagens de programação sem muita dificuldade.

Verifique a versão da plataforma

A plataforma .NET possui alguns anos no mercado e é comum encontrar projetos que utilizem as muitas tecnologias compatíveis com esta plataforma. Falando especificamente do .NET Framework, que engloba as linguagens de programação, diversas versões foram lançadas e cada uma destas versões contou com recursos, funcionalidades, classes, métodos e outros elementos de programação novos, modificados ou que foram depreciados, isto é, removidos.

Devido a esta característica é muito importante saber identificar qual a versão da plataforma, das bibliotecas, dos frameworks e demais componentes que são utilizados no projeto legado. Isso pode ficar evidente em algumas partes do código fonte como, por exemplo, no uso de coleções tipadas e genéricos que foram inseridas em versões relativamente recentes do .NET Framework. Contudo, outros componentes e elementos da linguagem podem não ter suas versões facilmente identificadas. Para resumir: vale a pena gastar um tempo identificando qual é a versão do .NET Framework, dos componentes, do Visual Studio utilizado, do banco de dados, do mecanismo de conexão e outros elementos antes de sequer começar a analisar o código. Proceder desta maneira evita surpresas no futuro e ajuda ao desenvolvedor saber quais recursos e técnicas ele pode utilizar durante a manutenção do código.

Conheça as dependências do código fonte

Geralmente projetos desenvolvidos em .NET com tamanho médio ou grande contam com muitas dependências externas que podem assumir a forma de bibliotecas, frameworks, arquivos binários externos (vídeo, áudio, imagem, etc.), arquivos de configuração XML e outros.

O Visual Studio possui uma maneira muito interessante de separar referências, arquivos externos, código fonte, representação da interface (web ou desktop), imagens e outros elementos, porém quando abrimos projetos grandes do Visual Studio, é importante conhecer estas dependências.

Um exemplo clássico: no Visual Studio é comum criar uma solução que contenha mais de um projeto, sendo que um deles é uma biblioteca e os outros utilizam esta biblioteca. Quando nos deparamos com soluções com vários projetos, vale a pena compreender bem como é a dependência entre eles, pois esta característica influencia a compilação, a geração de arquivos e, muitas vezes, a ordem na qual as modificações devem ser implementadas.

Infelizmente nem sempre contamos com uma documentação adequada a respeito das dependências de um projeto. É comum encontrarmos apenas projetos que disponibilizam o código fonte da solução, mas que não fornecem o arquivo README.txt com instruções básicas descrevendo a estrutura dos projetos, suas dependências, a ordem de compilação e outros detalhes importantes para fazer uma compilação básica e garantir que, no mínimo, o projeto compila e pode ser executado.

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