MonoTouch、MonoTouch 的未来以及我是否应该将它用于 iPhone 应用程序(而不是 Objective-C)

发布于 2024-09-09 00:44:51 字数 250 浏览 1 评论 0原文

我决定开始编写一个 iPhone 应用程序,并且来自 ac# 背景,我想我应该开始使用 mono 开发它。

尽管这个问题可能是主观的,但我希望您能提供一些指导。

使用这种技术开发我的应用程序是否安全,或者我应该购买一些书籍并开始学习 Objective C?

我知道 Adob​​e 将发布一项功能,允许您使用 Flash CS5 构建 iPhone 应用程序,但这并没有持续多久。

感谢您的反馈。

马尔科

I've decided to start writing an iPhone app and coming from a c# background, I thought I'd start developing it with mono.

Though this question may be subjective, I'd love some guidance from you.

Is it safe to develop my app using this technology, or should I buy some books and start learning objective C?

I know Adobe were going to release a feature that allows you to build iPhone apps using Flash CS5, but this didn't last long.

I appreciate your feedback.

Marko

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(6

山有枢 2024-09-16 00:44:51

Monotouch 在保持最新状态方面做得很好(通常在 api 更新的 24 小时内),所以只是说你不知道 xyz 但你知道 abc 比它好得多,这有点愚蠢。 Monotouch 比 obj c 有一些明显的优势 - 例如 obj c 在过去二十年里只更新了两次!期望良好的 XML、正则表达式、Http 支持吗?再想一想。 Obj c 中的 Linq?绝不。好的操作系统社区吗?不太可能。除了 C# 是一种优越得多的语言之外,使用 MT 的理由还有很多。能够在 MonoDroid 中重用大部分代码就是其中之一。尽管有消息称苹果正在创建一种新语言,但我对此并不抱太大希望。我想我们会看到的。

我在进入 MT 之前学习了 Obj C,我选择 MT 的原因是使用 Obj C 就像回到了 90 年代。它只是没有任何现代语言功能并且远远落后于潮流。使用古老的语言创建您的前沿应用程序?谢谢,但不用谢。

Monotouch is doing a great job of keeping up to date (usually within 24 hours of api updates) so just saying you have no idea about xyz but you know abc is much better than it is a bit silly. Monotouch has some serious advantages over obj c - for instance obj c has only been updated something like twice in the last twenty years!! expect good XML, regex, Http support? Think again. Linq in Obj c? never. Good OS community? Not likely. There's plenty of reasons to use MT, aside from C# being a far superior language. Being able to re-use a good percentage of your code in MonoDroid is one. Though there is word that apple are creating a new language - I'm not holding out too much hope for it. We'll see I guess.

I learned Obj C before getting into MT and the reason I went with MT is that using Obj C is like stepping back into the 90s. It just doesn't have any modern language features and is too far behind the curve. Create your bleeding edge apps with their archaic langauge? Thanks but no thanks.

半仙 2024-09-16 00:44:51

除了与苹果操作系统和应用程序商店政策密切合作的人之外,我们没有人知道使用这项技术开发应用程序是否“安全”。苹果将​​来可以随时拒绝,但我们不知道。我们知道,所有编译的代码都必须是 C、C++ 或 Obj-C 语言。然而有一个问题: 在某些情况下,您可以运行解释语言

如果我是你,我会选择 Objective-C。我们知道 Apple 完全支持它,它已经存在了近 20 年了。既然你了解了 C#,那么学习起来并不难。我是C++/C出身的,大概花了一个月左右的时间才学会了一半的框架。还有许多其他框架我没有学习,因为它们不适用于我的应用程序(例如加速器、GPS、OpenGL ES 等)。你或许也能逃脱惩罚。

再说一遍,还有另一种方法:使用 HTML5 构建它。然而,这样你就必须考虑你的应用程序在使用 Safari 桌面、Firefox、IE 等打开时会做什么。

None of us except people who work very closely with the OS and the App store policy in Apple would know whether it is "safe" to develop apps using this technology. Apple can say no anytime in the future, but we don't know. What we know is that all the compiled code has to be in C, C++, or Obj-C. However there's one catch: In some cases you can run interpreted languages.

If I were you, I'd go with Objective-C. We know that Apple supports it fully, it's been in there for almost 20 years. It's not that hard to learn since you know C#. I came from C++/C and it took me about a month or so to learn half of the frameworks. There are many other frameworks which I didn't learn because they're not applicable in my apps (such as accelerators, GPS, OpenGL ES, etc). You probably can get away with this too.

Once again, there's also another way: build it with HTML5. However that way you'd have to consider what your app'll do when it's opened with Safari desktop, Firefox, IE, etc.

地狱即天堂 2024-09-16 00:44:51

iPhone 开发协议非常明确地表明,C# 不是开发 iPhone 应用程序的公认技术。不管怎样,迄今为止,Monotouch 应用程序仍然被应用程序商店接受,没有任何问题。我的建议是与 Monotouch 论坛保持联系,了解他们对此问题的立场,并据此做出决定。从长远来看,安全的选择是学习 Objective-C。

The iPhone dev agreement is pretty clear that C# is not an accepted technology for developing iPhone apps. Regardless, Monotouch apps have still been accepted to the app store to date without any problems. My suggestion is to keep in touch with the Monotouch forums to see what their stance is on this issue and make your decision based on that. The long term safe bet is to go learn Objective-C.

浅忆流年 2024-09-16 00:44:51

最近,苹果公司更改了与第三方开发工具相关的条款,现在规定,如果您事先获得批准,则可以使用它们。不过,我还没有看到任何官方消息表明 Mono 将被允许。

如果您有 ac# 背景,我强烈建议您学习 Obj-C,因为它总是有助于了解另一种语言,并且您可以相当轻松地掌握它。看看斯坦福大学的iPhone讲座,它们是我学习时最好的资源。

虽然我个人没有使用过 C# 或 Mono,但一旦你了解了 iOS SDK,它背后就有一些非常出色的工作,一旦你习惯了它,它就会变得既简单又强大,如果 Mono 能够利用它,我会感到惊讶全部。

Recently Apple changed the clause relating to the third party development tools now stating that if you have prior approval you can use them. I haven't seen any official word that Mono will be allowed though.

If you are coming from a c# background I would highly recommend learning Obj-C because it always helps knowing another language and you could pick it up reasonably easily. Have a look at the stanford University iPhone lectures, they were the best resource when I was learning.

Although I haven't personally used C# or Mono, the iOS SDK once you get to know it has some really great work behind it making it both easy and powerful once you get used to it and I would be surprised if Mono took advantage of it all.

去了角落 2024-09-16 00:44:51

我认为学习为您选择的平台编写的框架的语言很重要。然后您可以更多地了解框架为何如此,并且通常仅基于了解该语言的典型特征即可预测行为或 API 调用和框架。

最重要的是,现在跨 API(仅限 iOS4 及以上版本)对块提供了大量支持,这可能需要一些时间才能合并到 MonoTouch 中。覆盖框架始终落后于基础平台,因此直接使用框架会更好。

I think it's important to learn the language the frameworks for your platform of choice were written in. Then you can understand more why the frameworks are the way they are, and often anticipate behavior or API calls just based on knowing what is typical for the language and framework.

On top of that there is now a ton of support for blocks across the API (iOS4 and on only), which may take some time to be incorporated into MonoTouch. Overlay frameworks are always a step behind the base platform so it's nicer to be using the frameworks directly.

夕色琉璃 2024-09-16 00:44:51

Flash 崩溃已经过去几个月了,Monotouch 和 Unity 仍然在蓬勃发展。

作为 .NET 商店的开发人员,我们正在考虑扩展到 iOS 开发领域。在用 Objective-C 制作了一些相当基本的东西的原型之后,我们 100% 致力于使用 Monotouch,它值得每一分钱。

It's now been months since the Flash debacle and Monotouch and Unity are still rocking along.

As developers in a .NET shop we're looking at expanding into iOS development. After prototyping some fairly basic stuff in Objective-C, We're 100% committed to using Monotouch, it's worth every penny.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文