编写Windows Web服务而不确定使用哪种语言?

时间:2010-06-03 20:43:11

标签: c# asp.net c++ web-services

所以我需要编写一个相当基本的Windows服务,之前从未这样做过。在C#,C ++(Visual Studio套件)中,开发的最佳语言是什么?我是学生,最熟悉Java等OO语言。

此外,如果任何人都可以推荐与该项目相关的任何书籍,文章或谷歌搜索,我将非常感激。

谢谢!

badPanda

4 个答案:

答案 0 :(得分:9)

如果它是1990年或者你有极端的性能要求或需要链接很多本机代码,那么选择C ++。

如果是2010年并且您没有任何不寻常的要求,请使用C#。

答案 1 :(得分:5)

如果你熟悉Java,我会选择C#。它将与您习惯的最相似。

以下是Web服务,WCF和Windows服务的链接:

WCF Essentials - WCF是MS推荐的有关Web服务的技术。

Web Services

Windows服务与Web服务不同,但既然你提到了两者,我想我会把它们包括在内

Old Windows Service Article

MSDN Link on Windows Services

Windows Service Example

这是一本优秀的C#书,我建议你阅读:http://www.manning.com/skeet2/

以下是WCF MVPS的链接:http://www.danrigsby.com/blog/

以下是将C#与Java进行比较的链接:http://www.25hoursaday.com/CsharpVsJava.html

答案 2 :(得分:1)

正如其他人所说,C#比Java更接近于Java。

关于Web服务,我根据您的问题的标题和标签将其作为您的重点,在.NET,ASMX或WCF中有两个选项。

ASMX Web服务是较旧的技术,基本上ASP.NET使用ASP.NET堆栈拦截和处理请求。这些服务可以作为参考添加到其他.NET应用程序中,这些应用程序生成代理代码以轻松访问服务。还有IIS Web服务器扩展,提供安全性和其他功能。 ASMX服务已被WCF取代,但仍受支持。

WCF 是Microsoft最新的服务技术,您可以轻松配置它以侦听http并使用SOAP进行传输,并且它具有内置的所有安全和加密功能。这是更好的解决方案,如果您可能希望非.NET客户端调用您的服务,或者您可能希望在其他非Web应用程序中重用您的服务逻辑。有更多的学习曲线,但更多的力量和灵活性。

你应该可以谷歌搜索asmx和WCF的教程/演练 - 如果它是一个较旧的教程并且没有说“WCF”,它可能是asmx。对于WCF服务,我真的很喜欢Microsoft模式和版本中的Service Factory。实践,它提供了很多良好的代码生成和设计师表面来规划您的服务,并生成和配置项目来托管它们。

答案 3 :(得分:0)

我没有在C#中做过很多网络,但我认为Java有比C#更好的网络组件......

如果你想在java中编写网络内容,请尝试Michael J. Donahoo编写的“Java中的TCP / IP套接字”。这是我曾经合作过的最好的书之一。这是一本非常简短但又完整的书。