Prós e contras do uso de pacotes em uma classe/pacote

Prós e contras do uso de pacotes em uma classe/pacote

Considere umpacote(ouaula) que fornece macros com dois argumentos opcionais. Alguém poderia

(eu uso twoopt. O código do .styarquivo é fácil de ler e, consequentemente, de entender.

(ii) codificar manualmente a macro. O código parece horrível, mas não vincula o usuário a um pacote adicional.

Além disso, às vezes existem vários pacotes para conseguir o mesmo: ifthen, xifthene ifthenx.

Como escolho qual pacote usar? Em quais casos eu codifico manualmente as coisas? Existem melhores práticas? Observe que os exemplos exemplificam a questão geral.

Responder1

Na dúvida, opte pelo padrão.

Mesmo que ainda não esteja consolidado (como ifthenestá), a camada de programação do emergente kernel LaTeX3— expl3—é poderosa e muito estável. Mesmo notexlive-corepacote do repositório de pacotes do Arch Linux (pense no mínimo do minimalista), todo o kernel L3 está incluído. Ele estará sempre disponível para seus usuários.

Da experiência com problemas relacionados,nãocodifique as coisas manualmente, a menos que seja necessário - torna-se quase impossível de manter e, como você diz, impossível de entender pelo valor nominal.

Pode haver falta de convenção aqui, mas a melhor convenção em qualquer caso é usar o material oficial.


A partir daqui: procure o seguinte com texdoc:

  • expl3explica o raciocínio por trásexperiênciaelementareuaTeX3sintaxe e introduz o componente 'pacotes' (na prática, você apenas\usepackage{expl3}
  • interface3serve como referência para toda a expl3biblioteca e interface
  • xparserecurso inestimável na definição de comandos com uma sintaxe mais complexa

Responder2

Se o twooptpacote atende às suas necessidades, não há nada de errado em usá-lo...

Em geral, o LaTeX é um sistema em constante desenvolvimento. Os pacotes são o motor desse processo. Ao negligenciar seu uso universalmente ou optar por codificar se houvesse um pacote adequado, você recusaria uma propriedade importante do sistema LaTeX.

Embora a última afirmação pareça um pouco dramática, há verdade nela. Além disso, muitas vezes é uma questão de escolha e hábitos (somos todos humanos!). Mas, se você tiver a oportunidade de obter um código mais legível através do uso do pacote,vá em frente. Este critério é, aliás, uma questão importante do projeto LaTeX3.

Estar vinculado a um pacote em um arquivo .styou .clsnão está limitando você de forma alguma. Mesmo que um pacote que você usou em seu próprio código de pacote seja obsoleto no futuro por causa de um pacote mais recente ser melhor ou algo assim, isso não significa que o recurso que você usou não seja mais viável. Além disso, como redator de pacotes, você pode manter/atualizar seu pacote de acordo com a situação atual. Além disso, gostaria de lembrar que o LaTeX2e está muito estável no momento. Portanto, “[usar] o material oficial” (@Sean Allred, veja acima) é totalmente razoável deste ponto de vista.

E finalmente, se três pacotes fazem exatamente o mesmo trabalho para um problema específico, refiro-me à afirmação acima “somos todos humanos!”: Use aquele que você mais gosta ou aquele com o qual está acostumado.

informação relacionada