C#与Python:XML处理效率对比
我打算写一个中等规模的网页应用,这个应用会大量使用XML。我需要进行复杂的XML处理。当用户请求一个网页时,程序会从数据库中获取XML,然后处理这些XML,最后把结果展示给浏览器。虽然这些XML文件不大,但我需要不时地修改XML的规则。我在考虑使用asp.net mvc的C#或者Python的Django。我想知道这两种语言中,哪一种在处理XML时效率更高。
另外,如果你有其他的建议,除了C#或Python,也请告诉我。谢谢!
2 个回答
我对Python不太熟悉,但我敢说它处理XML的能力很强。其实.NET也一样,特别是如果你使用像LINQ to XML这样的工具。基于这些,如果不了解你具体的背景,我觉得选择编程语言是关键。如果你喜欢C#,那么ASP.NET MVC会是个不错的选择。如果你觉得Python更有趣,那Django可能是最受欢迎的网页框架。
说到LINQ to XML,这是我用过的最好的XML处理工具。一旦你理解了它,包括可用的转换操作符,以及它如何与LINQ to Objects互动,真的会觉得非常好用。
当然,你使用的具体网页框架对XML处理来说并不是特别重要。如果你的应用需要处理很多XML,我希望大部分工作是在用户界面之外完成的。虽然如果它们基于同一平台会更简单,但你也可以用IronPython来做用户界面,用C#来处理XML,或者反过来。
我对C#不太熟悉,但我敢说它处理XML的能力很强。Python也一样,特别是如果你用像lxml这样的工具。考虑到这些,再加上我对你具体背景的不了解,我觉得这主要还是看你选择哪种编程语言。如果你喜欢Python,Django可能是最受欢迎的网页框架。如果你觉得C#更有趣,那ASP.NET MVC可能是个不错的选择。
我想补充一点关于网页托管的事。如果你的预算有限,可能会发现Python兼容的(也就是*类Unix系统)托管服务比Windows便宜。如果预算不是问题,那就不用考虑这个因素了。
有些人可能对Python的IDE支持有些顾虑。我发现PyDev在处理Python方面表现得相当不错。当然,还有很多其他的IDE可供选择。