Pergunta

Estou investigando o Argotic Syndication Framework , e eu estou muito impressionado até agora. No entanto, um monte da implementação atual - pelo menos por RSS e Atom-- parecem bastante comparável System.ServiceModel.Syndication . Alguém tem alguma opinião a respeito de um sobre o outro?

Foi útil?

Solução

Aqui está a minha perspectiva, depois de ter seguido dois caminhos:

System.ServiceModel.Sydication

  • é de cerca de 9 vezes mais rápido do que Argotic
  • não tem suporte rdf
  • não tem suporte para versões átomo <1
  • não tem suporte para versões RSS <1
  • falha com XmlException em cerca de 30% dos alimentos que dou no "do selvagem" (este é o disjuntor do negócio para mim)

Argotic

  • não foi atualizado desde 02 de julho de 2008
  • é lenta (ver acima)
  • tem suporte muito bom para todos os tipos de feeds: toda a versão do átomo, rss, rdf (tanto quanto eu posso dizer)
  • é um pouco mais difícil de usar do que System.ServiceModel.Sydication; é preciso determinar que tipo de alimento que você tem antes de deixar Argotic analisá-lo, e então você precisa lógica personalizada para lidar com cada uma das 3 classes diferentes dependendo do tipo de alimentação. Em outras palavras, você precisa envolvê Argotic antes que seja útil.

Outras dicas

Se tudo que você precisa é RSS e Atom, eu iria com System.ServiceModel.Syndication. Restrição de tudo o resto, há um benefício significativo para usando o framework .NET em alternativas de código aberto: A familiaridade. Se você optar por usar a estrutura Argotic, isso é outro componente de terceiros que novas adições à sua equipe de desenvolvimento vão ter de aprender (ou outra habilidade que você terá que procurar em seus candidatos potenciais.) Se você optar por usar o solução .NET Framework, você tem a piscina potencial de milhões de programadores à sua disposição, que provavelmente já sabem disso. Mesmo se eles não sabem System.ServiceModel.Syndication, segue os mesmos padrões consistentes como o resto do framework .NET, que ainda fornece um elemento de familiaridade com a maioria dos desenvolvedores .NET.

Enquanto OSS muitas vezes pode oferecer algumas opções intrigantes para áreas problemáticas nitch, quando se trata de áreas problemáticas comuns, não subestime o valor de familiaridade e onipresença. Uma paleta diversificada de quadros geralmente significa um muito mais íngreme curva de novas adições para uma equipe de desenvolvimento de aprendizagem, maior custo de integração entre frameworks, versionamento e questões de segurança, etc., etc.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top