[Cascavel-pm] NFe: Assinatura digital em arquivos XML

Eden Cardim edencardim em gmail.com
Quarta Março 11 11:02:14 PDT 2009


2009/3/11 Nelson Ferraz <nferraz em gmail.com>:
> O problema é adicionar esta dependência para um módulo genérico do
> CPAN, que pode vir a ser utilizado por aplicacões que não dependem, ou
> simplesmente não podem usar o Moose.

Eu acho que código escrito e testado por uma única pessoa/equipe
dentro de um prazo razoável tende a ser mais perigoso/arriscado do que
usar um módulo que já está pronto e testado e que tem várias
dependências prontas e testadas também. Isso é uma lei básica da
engenharia.

> Afinal, o Moose tem suas própria cadeia de dependências:
>
> http://deps.cpantesters.org/?module=Moose&perl=any+version&os=any+OS
>
> Portanto:
>
> - Se você vai criar uma aplicacão ou framework, use todos os módulos e
> dependências que você quiser. Você estabelece os "minimum
> requirements" para o seu sistema (ex: Perl 5.10, etc)
>
> - Se você vai criar um módulo genérico, e quer que ele possa ser
> utilizado por outros frameworks e aplicacões, tente ser o mais
> genérico e auto-contido possível. Evite colocar "minimum
> requirements", pois eles irão se propagar para os sistemas que o
> utilizarem.

Discordo novamente, pra mim a regra é "reuse o máximo de código e
módulos possíveis, em todos os casos". Você tá falando como se
dependências fossem uma doença. De novo, não consigo enxergar porque
dependências são ruins, é apenas código, igual ao que você iria
escrever, só que bem melhor, por um simples fator: já existe e já está
testado. Me explica por favor porque dependências são ruins, de
preferência com exemplos e casos reais.

> No caso em questão, creio que temos uma aplicacão que pode (e deve)
> usar o Moose, e um módulo (que deve funcionar independentemente da
> aplicacão, e evitar dependências desnecessárias).
>
> Se o Moose é necessário ou não, cabe ao autor decidir. Mas ele deve
> estar consciente dos riscos.

O risco é menor do que escrever tudo por conta própria, eu nunca ouvi
falar de um projeto que fracassou por reaproveitar código, talvez seja
uma boa idéia enriquecer a estatística.

-- 
   Eden Cardim       Need help with your Catalyst or DBIx::Class project?
  Code Monkey                    http://www.shadowcat.co.uk/catalyst/
 Shadowcat Systems Ltd.  Want a managed development or deployment platform?
http://edenc.vox.com/            http://www.shadowcat.co.uk/servers/


Mais detalhes sobre a lista de discussão Cascavel-pm