【问题标题】:iOS and Android development on WindowsWindows 上的 iOS 和 Android 开发
【发布时间】:2011-02-14 14:04:58
【问题描述】:

我正面临一个困境:我在 C# 方面拥有扎实的 ASP.NET 开发经验,并希望开始移动开发。我做过研究,知道在 Windows 上获取 iOS 开发环境有一些技巧,最近在 Apple 取消对 3rd 方开发应用程序的禁令后,Adobe Flash CS5 可用于打包 iOS 应用程序。我确实有一些使用 Flash 和 AS2 的经验。 所以我的问题是:我应该在 iOS 上使用 Flash CS5,在 Android 上使用 MonoDroid,还是应该在 Mac 上学习 iOS 上的 Objective C 并在 Android 上学习 Java?最实用的解决方案是什么?

提前谢谢你

编辑:最后,在尝试了针对 Android SDK 的 Java 开发和针对 Android 的 Mono 之后,我决定最好在本机环境中编写 Android 应用程序。日食 FTW!至于 iOS,我认为最好还是使用原生 Mac 工具和 Objective C。

【问题讨论】:

  • 已经过时了,我觉得这个问题应该再问一遍

标签: android ios xamarin.ios xamarin.android flash-cs5


【解决方案1】:

虽然有很多方法可以绕过使用 Objective-C 进行 iOS 开发,但我还是建议您学习它。反正你需要一台 Mac 来部署,你也可以用它来开发。

Objective-C 在您第一次开始使用时非常奇怪,它有奇怪的方括号和奇怪的做事方式。然而,一旦你花了一些时间在其中编写代码,你的大脑就会发生变化,你会突然意识到这确实是一种优雅的工作方式。 Xcode 也是一个相当出色的 IDE。

您可以从斯坦福大学的 iTunesU 上的 iPhone 应用程序编程课程开始。它是免费的,涵盖了您需要了解的所有内容。

最糟糕的情况是,您学习了一门新语言,以及 Apple 认为应该如何开发 iPhone 应用程序。即使您最终使用了其他东西,这种理解也会对您有所帮助。

【讨论】:

    【解决方案2】:

    看看 monotouch 和 MonoDroid(即将推出),它仍然需要 Mac。但是您可以在 VS2010 中打开您的解决方案并使用 resharper,而只需使用 Mac 进行部署和构建。看看这个Here 在 Visual Studio 中打开 monodevelop 解决方案。

    http://monotouch.net

    【讨论】:

    • MonoTouch 似乎是开发 iOS 应用程序的好方法,但我很难理解一件事:它在 Mac 上作为 IDE 运行吗?还是集成到 Mac 的开发平台中?还是类似于 MonoDroid、SDK 和 VS2010 插件?我认为购买 Mac,然后购买 MonoTouch 许可证以仅使用 c# 不是很实用。如果我买 Mac,我不妨学习 Objective C
    • 它是一个在 Mac 上工作的 MonoDevelop IDE 工具链。所以是的,你确实需要一个mac。您总是可以在 vmware 中安装 OSX 并以这种方式使用它。
    【解决方案3】:

    对于 Android,我建议学习 Java。在开发了一些 ASP.NET 站点之后,我才开始在我的 Windows 机器上使用 Java 中的 Android。我熟悉 Java,但语法与 C# 非常相似,因此很容易理解和掌握。到目前为止,与语言相比,弄清楚和记住移动应用程序架构的细节更加困难。还有很多好书和在线资源可以帮助您从 C# 转换为 Java,反之亦然。

    更新:我在programmers.stackexchange.com 上找到了一篇很好的帖子,其中讨论了C# 与Java 的Android 开发,并很好地讨论了切换的优缺点:https://softwareengineering.stackexchange.com/questions/33076/as-a-c-developer-would-you-learn-java-to-develop-for-android-or-use-monodroid-i

    【讨论】:

    • 嗨,本,感谢您的链接。我确实发现这篇文章很有趣,一个被标记为这样的答案有一个很好的观点:代码重用。如果您使用 MonoDroid 在 c# 中编写 Android 应用程序,您可以使用 Mono Touch 轻松地将相同的应用程序移植到 iOS,并且 Windows Phone 将原生支持 .NET。所以我想即使它不会是“最推荐”的方式,我确实看到了这种方法背后的逻辑。
    • 我已经了解 Java 并且对它很熟悉,但我仍将朝着 monodroid 方向发展。为什么?拥有一个包含所有业务逻辑的代码库会使您的工作效率更高,无需管理分歧,没有分歧的错误等。也让我们面对现实吧,c# 是一种比 Java 更现代、更灵活的语言。
    【解决方案4】:

    @Dimitri 在 iOS 2.0 发布时,我的技能几乎与您相同。我决定尝试学习 Objective-C,现在它是我的首选语言。一开始它有点不同,但大多数变化都很容易学习。无论你是使用 Objective-C 还是 Monotouch 之类的 iOS 编程,你都必须学习框架。如果您使用 Monotouch,您将永远无法处于 iOS 增强功能的最前沿。使用 Objective-C,您将能够使用最新的 beta API 并确保您的应用程序正常运行。您将需要一台 Mac 才能部署到 App Store,所以只要硬着头皮买一台 Mac。购买 13 英寸 MacBook Air

    【讨论】:

      【解决方案5】:

      我选择了 iOS 的 Monotouch 和 Android 的 Java。不幸的是,Monotouch 仍然需要 Mac。我目前正在参与 MonoDroid 测试版,它看起来也很有希望。这完全是口味问题。我还应该指出,在大多数情况下,HTML/Javascript 是在某些情况下获得可移植应用程序的好方法。随着工具的改进,我希望 HTML5 应用程序变得更加可行。

      【讨论】:

        【解决方案6】:

        我选择使用 Novell 的 Mono、MonoTouch 和 Mono for Android 技术堆栈。当与 MonoCross(Google 代码中的开源代码)之类的微框架结合使用时,它可以帮助我为 iPhone 和 Android 设备编写应用程序,同时在其中大部分使用共享代码库。我强烈建议同样的路线,它使我能够为小型企业和企业客户实施众多解决方案。

        我没有像你这样的 ASP .NET 经验,但我是一名 Pocket PC/Windows CE 开发人员,所以当我在很多个月前开始迈向 Mono 之旅时,C# 和 .NET Framework 也是我最强大的工具。

        【讨论】:

          【解决方案7】:

          您可以使用 Xamarin 开发 iOS、Android 和 Windows。

          Android 和 Windows 可以轻松完成,但目前在 Windows 上执行 iOS 很困难,因为调试和开发需要联网的 mac,但现在情况发生了变化。

          Microsoft 推出了 Xamarin Live Player,您可以使用它调试、开发和部署完全在windows没有任何Apple系统的帮助,但要签署并将应用程序发布到appstore,您将需要Apple系统

          【讨论】:

            猜你喜欢
            • 2021-01-07
            • 1970-01-01
            • 2012-03-24
            • 2021-12-20
            • 1970-01-01
            • 1970-01-01
            • 2011-02-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多