Quais linguagens de programação podem ser usadas para desenvolver aplicativos para iPhone, iPod Touch e iPad (iOS)?
Além disso, existem planos no futuro para expandir a quantidade de linguagens de programação que o iOS oferecerá suporte?
A Apple suspendeu as restrições sobre aplicativos não Objective C / C / C ++ - você simplesmente não pode carregar o código que não está no pacote de aplicativos.
MonoTouch permite que você use linguagens .NET - C # é diretamente compatível, mas se você tiver o Windows, pode fazer assemblies em qualquer linguagem .NET e usá-la.
Há rumores de que a Apple oferecerá suporte a outros idiomas diretamente - eu continuo ouvindo ruby, mas são apenas rumores.
Acho que Lua está sendo usada para lógica de jogo em muitos aplicativos.
EDIT (em 2018): Geralmente você pode usar qualquer idioma que possa compilar para iOS ou até mesmo instalar intérpretes de idioma. A principal coisa que você não pode fazer é carregar o código da Internet que não estava no pacote de aplicativos.
As pessoas fazem isso o tempo todo de qualquer maneira (consulte React Native Apps carregando JavaScript de servidores), mas, tecnicamente, não é permitido. A principal coisa que chamará a atenção da Apple se você fizer algum tipo de App Store que carregue coisas inteiras do tipo App.
EDIT (em 2020): de @Pylot nos comentários: Eu sei que isso é muito tempo atrás, mas agora, pelo menos tecnicamente, você pode carregar o código que não está embutido no aplicativo, já que você pode escrever com JavaScript usando o webview. Não ficar sua resposta é errado ou algo assim, definitivamente concordo com você. mas estava procurando algo e encontrei este post no caminho. Descobri que se alguém ver isso, isso pode ajudá-los.
O contrato SDK e as diretrizes da App Store foram alterados (cerca de setembro de 2010).
Agora você provavelmente pode usar qualquer linguagem compilada que compilará no mesmo formato de arquivo de objeto ARM estático que o Xcode produz e que se vinculará a (apenas) APIs públicas dentro das estruturas e bibliotecas da Apple. No entanto, você não pode usar uma linguagem compilada JIT, a menos que pré-compile todo o código-objeto antes de enviá-lo à Apple para revisão.
Você pode usar qualquer linguagem interpretada, desde que incorpore o intérprete e não permita que o intérprete ou o aplicativo baixe e execute qualquer código interpretável que não seja o código embutido no pacote de aplicativos antes do envio à Apple para revisão ou o código-fonte digitado -in pelo usuário.
Objective C e C provavelmente ainda serão as linguagens de programação mais ideais para qualquer coisa que exija alto desempenho e o suporte API mais recente (* veja a atualização abaixo), já que essas são as linguagens para as quais a Apple direciona seus frameworks iOS e ajusta seus chipsets de processador ARM. A Apple também oferece suporte ao uso de Javascript / HTML5 dentro de um UIWebView. Esses são os únicos idiomas para os quais a Apple anunciou suporte. Qualquer outra coisa você terá que encontrar suporte em outro lugar.
Mas, se você realmente quiser, há pelo menos meia dúzia de intérpretes BASIC disponíveis na App Store do iOS, então até a metodologia de programação da "Idade da Pedra" agora é permitida.
Adicionado: (*) No final de 2014, também é possível desenvolver aplicativos usando a nova linguagem de programação Swift da Apple. Desde o início de 2015, os binários enviados devem incluir suporte de 64 bits (arm64).
fonte
Com planos de aposentar aos poucos o Objective-C, usado há muito tempo, a Apple introduziu uma nova linguagem de programação, chamada Swift, para projetar aplicativos e aplicativos para rodar em dispositivos Apple iOS e computadores Apple Macintosh.
Apple diz: " Swift é uma nova linguagem de programação para aplicativos iOS e OS X que se baseia no melhor de C e Objective-C, sem as restrições de compatibilidade com C. Swift adota padrões de programação seguros e adiciona recursos modernos para tornar a programação mais fácil, mais flexível e mais divertido. A ardósia limpa de Swift, apoiada pelos frameworks Cocoa e Cocoa Touch maduros e muito amados, é uma oportunidade de reimaginar como o desenvolvimento de software funciona. "
Apresentando o Swift
fonte
Ruby, Python, Lua, Scheme, Lisp, Smalltalk, C #, Haskell, ActionScript, JavaScript, Objective-C, C ++, C. Esses são apenas os que vêm à minha cabeça agora. Tenho certeza de que há centenas, senão milhares de outros. (Por exemplo, não há razão para que você não possa usar qualquer linguagem .NET com MonoTouch, ou seja, VB.NET, F #, Nemerle, Boo, Cobra, ...)
Certo. Quase todas as comunidades de linguagem de programação neste planeta estão trabalhando atualmente para fazer sua linguagem funcionar no iOS.
Além disso, muitas pessoas estão trabalhando em linguagens de programação projetadas especificamente para dispositivos de toque, como iPod touch, iPhone e iPad, por exemplo, a linguagem Thyrd de Phil Mercurio .
fonte
A linguagem de programação do iOS (e Mac OS) é Objective-C e C. Você tem que usar a plataforma Xcode para desenvolver aplicativos iOS, na próxima versão que já está disponível em beta, o Xcode 4 suporta também C ++.
fonte
Agora também é possível usar OCaml para desenvolver aplicativos iOS. Não faz parte da distribuição padrão e requer modificações fornecidas pela empresa Psellos. Veja aqui para mais informações: http://psellos.com/ocaml/ .
fonte
Este pode ser um tópico antigo, mas eu gostaria de mencionar o Appcelerator Titanium , que permite que qualquer pessoa versada em HTML5 / JavaScript / CSS desenvolva aplicativos iOS.
fonte
Apenas Objective-C é permitido por agora ... mas desde alguns meses atrás você tem permissão para escrever scripts que serão interpretados em sua aplicação.
Portanto, você pode escrever um interpretador LUA ou um interpretador Python e, em seguida, escrever alguma parte de seu aplicativo nesta linguagem de script. Se você quiser que seu aplicativo seja aceito na App Store, esses scripts devem ser incluídos no aplicativo (seu aplicativo não pode baixá-lo da Internet, por exemplo)
veja as novas regras da app store
fonte
objetivo-c é o idioma principal usado.
eu acredito que existe uma estrutura mono touch que pode ser usada com c #
A Adobe também está trabalhando em algumas ferramentas, uma delas é o iPhone Packager, que pode utilizar código Actionscript
fonte
Você pode usar a linguagem de programação "smart BASIC". É uma linguagem BASIC genuína, mas muito avançada, com todo o seu poder e simplicidade. Usando seu SDK gratuito, o código BASIC pode ser facilmente publicado como um aplicativo independente da App Store. Existem muitos aplicativos na App Store, escritos em linguagem de programação "smart BASIC".
fonte