Какие языки программирования можно использовать для разработки приложений для iPhone, iPod Touch и iPad (iOS)?
Есть ли планы в будущем расширить количество языков программирования, которые будет поддерживать iOS?
Ответы:
Apple сняла ограничения на приложения, не относящиеся к Objective C / C / C ++ - вы просто не можете загружать код, которого нет в комплекте приложений.
MonoTouch позволяет использовать языки .NET - C # напрямую поддерживается, но если у вас Windows, вы можете создавать сборки на любом языке .NET и использовать их.
Ходят слухи, что Apple собирается напрямую поддерживать другие языки - я все время слышу ruby, но это всего лишь слухи.
Я думаю, что Lua используется для игровой логики во многих приложениях.
РЕДАКТИРОВАТЬ (в 2018 г.): Как правило, вы можете использовать любой язык для компиляции для iOS или даже установить языковые интерпретаторы. Главное, что вы не можете сделать, это загрузить из Интернета код, которого не было в комплекте приложений.
В любом случае люди делают это постоянно (см. Приложение React Native, загружающее JavaScript с серверов), но технически это не разрешено. Главное, что привлечет внимание Apple, если вы создадите какой-то App Store, который загружает целые App-подобные вещи.
РЕДАКТИРОВАТЬ (в 2020 году): от @Pylot в комментариях: я знаю, что это было давно, но теперь, по крайней мере, технически вы можете загружать код, который не встроен в приложение, так как вы можете писать с помощью JavaScript, используя веб-просмотр. Не задерживаться на вашем ответе неправильно или что-то в этом роде, я определенно с вами согласен. но я что-то искал и по дороге нашел этот пост. Подумал, если кто-нибудь увидит это, это может им помочь.
Соглашение о SDK и правила магазина приложений были изменены (примерно сентябрь 2010 г.).
Теперь вы, вероятно, можете использовать любой скомпилированный язык, который будет компилироваться в тот же формат статического объектного файла ARM, что и Xcode, и который будет связываться (только) с общедоступными API в рамках структур и библиотек Apple. Однако вы не можете использовать JIT-скомпилированный язык, если вы предварительно не скомпилируете весь объектный код перед отправкой в Apple для проверки.
Вы можете использовать любой интерпретируемый язык, если вы встраиваете интерпретатор, и не позволяете интерпретатору или приложению загружать и запускать любой интерпретируемый код, кроме кода, встроенного в пакет приложения, перед отправкой в Apple для проверки или набранным исходным кодом. -в пользователем.
Objective C и C, вероятно, по-прежнему будут наиболее оптимальными языками программирования для всего, что требует высокой производительности и новейшей поддержки API (* см. Обновление ниже), поскольку это языки, для которых Apple нацеливает свои фреймворки iOS и настраивает свои наборы микросхем процессоров ARM. Apple также поддерживает использование Javascript / HTML5 внутри UIWebView. Это единственные языки, для которых Apple объявила о поддержке. В остальном вам придется искать поддержку в другом месте.
Но, если вы действительно хотите, в магазине приложений iOS сейчас доступно как минимум полдюжины интерпретаторов BASIC, так что теперь разрешена даже методология программирования «каменного века».
Добавлено: (*) С конца 2014 года можно также разрабатывать приложения с использованием нового языка программирования Apple Swift. По состоянию на начало 2015 года представленные двоичные файлы должны включать поддержку 64-разрядных (arm64).
Планируя постепенно отказаться от давно используемого Objective-C, Apple представила новый язык программирования Swift для разработки приложений и приложений для работы на устройствах Apple iOS и компьютерах Apple Macintosh.
Apple заявляет: « Swift - это новый язык программирования для приложений iOS и OS X, основанный на лучшем из C и Objective-C, без ограничений совместимости с C. Swift принимает безопасные шаблоны программирования и добавляет современные функции, чтобы упростить программирование. гибкий и веселый. Чистый лист Swift, подкрепленный зрелыми и всеми любимыми фреймворками Cocoa и Cocoa Touch, дает возможность переосмыслить принцип работы разработки программного обеспечения ».
Какие языки программирования можно использовать для разработки приложений для iPhone, iPod Touch и iPad (iOs)?
Ruby, Python, Lua, Scheme, Lisp, Smalltalk, C #, Haskell, ActionScript, JavaScript, Objective-C, C ++, C. Это как раз те, которые приходят мне в голову прямо сейчас. Я уверен, что есть сотни, если не тысячи других. (Например, нет причин, по которым вы не могли бы использовать какой-либо язык .NET с MonoTouch, то есть VB.NET, F #, Nemerle, Boo, Cobra, ...)
Также есть ли планы в будущем расширить количество языков программирования, которые будут поддерживать iOS?
Конечно. Практически все сообщества языков программирования на этой планете в настоящее время работают над запуском своего языка на iOS.
Кроме того, многие люди работают над языками программирования, специально разработанными для сенсорных устройств, таких как iPod touch, iPhone и iPad, например, языком Thyrd Фила Меркурио .
Язык программирования iOS (и Mac OS) - Objective-C и C. Вы должны использовать платформу Xcode для разработки приложений iOS, в следующей версии, которая теперь доступна в бета-версии, Xcode 4 поддерживает также C ++.
Также теперь можно использовать OCaml для разработки приложений iOS. Он не входит в стандартный комплект поставки и требует внесения изменений со стороны компании Psellos. См. Здесь для получения дополнительной информации: http://psellos.com/ocaml/ .
Это может быть старый поток, но я хотел бы упомянуть Appcelerator Titanium , который позволяет любому, кто разбирается в HTML5 / JavaScript / CSS, разрабатывать приложения для iOS.
Сейчас разрешен только Objective-C ... но несколько месяцев назад вам разрешено писать сценарии, которые будут интерпретироваться в вашем приложении.
Таким образом, вы можете написать интерпретатор LUA или интерпретатор Python, а затем написать часть своего приложения на этом языке сценариев. Если вы хотите, чтобы ваше приложение было принято в App Store, эти сценарии должны быть связаны с приложением (например, ваше приложение не может загрузить его из Интернета).
посмотреть новые правила магазина приложений
objective-c - это основной используемый язык.
Я считаю, что есть моно-сенсорная структура, которую можно использовать с С #
Adobe также работает над некоторыми инструментами, одним из которых является iPhone Packager, который может использовать код ActionScript.
Вы можете использовать язык программирования "smart BASIC". Это настоящий, но очень продвинутый язык BASIC со всей его мощью и простотой. Используя бесплатный SDK, код BASIC можно легко опубликовать как отдельное приложение в App Store. В App Store есть много приложений, написанных на языке программирования "smart BASIC".