一个人可以使用哪些编程语言来开发iPhone,iPod Touch和iPad(iOS)应用程序?
将来是否还有计划扩大iOS支持的编程语言的数量?
Answers:
苹果取消了对非目标C / C / C ++应用程序的限制-您只能加载应用程序捆绑包中没有的代码。
MonoTouch使您可以使用.NET语言-直接支持C#,但是如果您使用Windows,则可以使用任何.NET语言制作程序集并使用它。
有传言称苹果将直接支持其他语言-我一直在听红宝石,但它们只是谣言。
我认为Lua在许多应用程序上都用于游戏逻辑。
编辑(在2018年):通常,您可以使用可为iOS编译甚至安装语言解释器的任何语言。您不能做的主要事情是从Internet中加载应用程序捆绑包中没有的代码。
人们总是会一直这样做(请参阅React Native应用程序从服务器加载JavaScript),但是从技术上讲,这是不允许的。如果您制作某种可加载整个类似App之类的App Store的应用,那么它将引起Apple的注意。
编辑(在2020年):来自@Pylot的评论:我知道这是很久以前的事了,但是现在至少从技术上讲,您可以加载未嵌入应用程序中的代码,因为可以使用Webview使用JavaScript编写代码。不留下您的答案是错误的或其他任何事情,我绝对同意。但我一直在寻找东西,并在途中找到了这篇文章。想通了,如果有人看到这可能会帮助他们。
SDK协议和App Store指南已更改(大约2010年9月)。
现在,您可能可以使用将编译为Xcode生成的静态ARM对象文件格式的任何编译语言,并且可以(仅)链接到Apple框架和库中的公共API。但是,除非在将所有对象代码提交给Apple进行审阅之前对其进行预编译,否则不能使用JIT编译语言。
您可以使用任何解释语言,只要您嵌入了解释器,并且不允许解释器或应用下载并运行除应用程序捆绑包中内置的代码以外的任何可解释代码,然后再提交给Apple进行审查或键入源代码-由用户输入。
对于需要高性能和最新API支持(*参见下面的更新)的任何事物,目标C和C仍然可能是最理想的编程语言,因为苹果公司针对其iOS框架并对其ARM处理器芯片组进行了调整。苹果还支持在UIWebView中使用Javascript / HTML5。这些是Apple宣布支持的唯一语言。您还必须在其他地方寻求支持。
但是,如果您真的想要,iOS App Store中现在至少有六种BASIC解释器可用,因此现在甚至允许使用“石器时代”编程方法。
补充:(*)截至2014年底,您还可以使用Apple的新Swift编程语言开发应用。从2015年初开始,提交的二进制文件必须包含64位(arm64)支持。
一个人可以使用哪些编程语言来开发iPhone,iPod Touch和iPad(iOs)应用程序?
Ruby,Python,Lua,Scheme,Lisp,Smalltalk,C#,Haskell,ActionScript,JavaScript,Objective-C,C ++,C。这些现在就浮现在我的脑海。我敢肯定还有成百上千的其他人。(例如,没有理由不能在MonoTouch中使用任何.NET语言,即VB.NET,F#,Nemerle,Boo,Cobra等)。
将来是否还有计划扩大iO支持的编程语言的数量?
当然。这个星球上几乎所有的编程语言社区目前都在努力使其语言在iOS上运行。
另外,许多人正在开发专门为iPod touch,iPhone和iPad等触摸设备设计的编程语言,例如Phil Mercurio的Thyrd语言。
iOS(和Mac OS)的编程语言是Objective-C和C。您必须使用Xcode平台来开发iOS应用程序,在beta版现在可用的下一个版本中,Xcode 4还支持C ++。
现在也可以使用OCaml来开发iOS应用程序。它不是标准发行版的一部分,需要Psellos公司提供的修改。有关更多信息,请参见此处:http : //psellos.com/ocaml/。
这可能是一个旧线程,但是我想提到Appcelerator Titanium,它允许精通HTML5 / JavaScript / CSS的任何人开发iOS应用程序。