Recursos especiais neste artigo:
Conteúdo sobre boas práticas .
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.
...Confira outros conteúdos:
Perguntas frequentes
Nossos casos de sucesso
Eu sabia pouquíssimas coisas de programação antes de começar a estudar com vocês, fui me especializando em várias áreas e ferramentas que tinham na plataforma, e com essa bagagem consegui um estágio logo no início do meu primeiro período na faculdade.
Estudo aqui na Dev desde o meio do ano passado!
Nesse período a Dev me ajudou a crescer muito aqui no trampo.
Fui o primeiro desenvolvedor contratado pela minha
empresa. Hoje eu lidero um time de desenvolvimento!
Minha meta é continuar estudando e praticando para ser um
Full-Stack Dev!
Economizei 3 meses para assinar a plataforma e sendo sincero valeu muito a pena, pois a plataforma é bem intuitiva e muuuuito didática a metodologia de ensino. Sinto que estou EVOLUINDO a cada dia. Muito obrigado!
Nossa! Plataforma maravilhosa. To amando o curso de desenvolvimento front-end, tinha coisas que eu ainda não tinha visto. A didática é do jeito que qualquer pessoa consegue aprender. Sério, to apaixonado, adorando demais.
Adquiri o curso de vocês e logo percebi que são os melhores do Brasil. É um passo a passo incrível. Só não aprende quem não quer. Foi o melhor investimento da minha vida!
Foi um dos melhores investimentos que já fiz na vida e tenho aprendido bastante com a plataforma. Vocês estão fazendo parte da minha jornada nesse mundo da programação, irei assinar meu contrato como programador graças a plataforma.
Wanderson Oliveira
Comprei a assinatura tem uma semana, aprendi mais do que 4 meses estudando outros cursos. Exercícios práticos que não tem como não aprender, estão de parabéns!
Obrigado DevMedia, nunca presenciei uma plataforma de ensino tão presente na vida acadêmica de seus alunos, parabéns!
Eduardo Dorneles
Aprendi React na plataforma da DevMedia há cerca de 1 ano e meio... Hoje estou há 1 ano empregado trabalhando 100% com React!
Adauto Junior
Já fiz alguns cursos na área e nenhum é tão bom quanto o de vocês. Estou aprendendo muito, muito obrigado por existirem. Estão de parabéns... Espero um dia conseguir um emprego na área.