"Escuta e serás sábio. O começo da sabedoria é o silêncio."
Quando trabalhamos com um framework vasto como o .NET sempre imaginamos que o mesmo irá resolver nossos problemas mais simples em projetos. O problema é que nem sempre a Microsoft pensa em tudo (sarcasmo).
Atendendo um pedido interno da Mindworks, fiz um projeto muito simples que tinha um requisito principal: Copiar pastas de várias origens para um mesmo destino. Fiz o projeto rapidamente, usei TDD para construção dos processos e Serialização e Desserialização para obtenção das origens e destinos. O problema é que em uma linha de código eu copiava a pasta de um lugar para o outro, e só nesse momento lembrei que o .NET não copia o conteúdo das pastas automaticamente. Apesar de não ser tão trabalhoso a construção desse código, eu não tinha muito tempo restante, então, decidi procurar por uma biblioteca pronta que o fizesse. Foi meu primeiro contato com o xDirectory.
Como produzi o código respeitando a separação de responsabilidades e a coesão dos componentes, só precisei alterar uma linha de código para usar o xDiretory, sendo assim, todo o processo que construí manualmente estava coberto por testes unitários, e como meu código não estava usando o componente diretamente realizar a alteração do mesmo foi muito simples.
O xDirectory pode ser encontrado no link abaixo, vale a pena conferir:
http://www.codeproject.com/KB/files/xdirectorycopy.aspx
Abraços!
últimos comentários