我期待深入研究.NET框架,但大多数移动应用程序似乎都是用Java开发的。我很可能会针对价格较低的手机,例如诺基亚和摩托罗拉,而不是android或iphone OS。我可以在C#中做这些东西吗?
我期待深入研究.NET框架,但大多数移动应用程序似乎都是用Java开发的。我很可能会针对价格较低的手机,例如诺基亚和摩托罗拉,而不是android或iphone OS。我可以在C#中做这些东西吗?
Answers:
取决于平台-
安卓-JAVA,C#(通过MonoDroid)iPhone-
目标C,C#(通过MonoTouch)
Windows Phone-C#(Silverlight)
Meego-C ++(QT)
Symbian-C ++,JAVA
我认为大多数公司都会放弃Symbian。智能手机是未来。对于每种类型的智能手机操作系统,C#/ mono以及本机平台语言都将可用(您必须支付额外费用,但值得使用)。因此,您可以使用C#。
可能无法实现真正的平台独立性,但是,如果您在任何地方都使用C#,则将能够使用相同的核心库并调整平台的UI。
但是对于低成本手机,C#不会。你必须去JAVA。
如果您想为Windows Phone 7开发,则C#非常完美(即将推出VB.NET。)您也可以利用您所拥有的任何Silverlight或XNA知识。我不知道该平台是否会成功,但是为什么不使用自己熟悉的语言来优化您的应用程序,一旦对用户体验,逻辑,计算等有信心,就将其移植到其他语言?该仿真器显然非常好,并且可以通过加速计仿真器和gps仿真器进行补充,以完成除拨打电话之外的所有操作。(实际上,谁在使用智能手机打电话?)
我开始用Java编写具有C#经验的Android应用程序。我发现该语言的许多基本概念是相似的,因此这仅仅是学习一些差异的问题,尤其是对于库。如果您可以学习,则用另一种编码非常简单(根据我的经验)。
我建议从Java开始。Android有望成为最受欢迎的移动操作系统,因此您一定会知道它会出现一段时间。另外,Java较旧,因此有无数的库和教程供您使用和学习。一旦了解了Java的核心概念,学习C#就会变得轻而易举-并且,您将真正欣赏C#必须提供的一些简洁功能(例如属性和LINQ)。
免责声明:我从C#开始(主要用于ASP.NET MVC Web开发),然后学习了用于编写Android应用程序的Java。我还没有使用C#进行任何移动编程,所以我无法告诉您它是什么样的。