Які мови програмування можна використовувати для розробки додатків iPhone, iPod Touch та iPad (iOS)?
Також чи планується в майбутньому розширити обсяг мов програмування, які підтримуватиме iOS?
Відповіді:
Apple зняла обмеження щодо нецільових програм C / C / C ++ - ви просто не можете завантажити код, якого немає в наборі програм.
MonoTouch дозволяє використовувати мови .NET - C # підтримується безпосередньо, але якщо у вас Windows, ви можете створювати збірки на будь-якій мові .NET і використовувати його.
Ходять чутки, що Apple збирається безпосередньо підтримувати інші мови - я продовжую чути рубін, але це лише чутки.
Я думаю, що Lua використовується для ігрової логіки у багатьох додатках.
EDIT (у 2018 році): Як правило, ви можете використовувати будь-яку мову, яку ви можете отримати, для компіляції для iOS або навіть встановлення інтерпретаторів мови. Головне, що ви не можете зробити, це завантажити з Інтернету код, якого не було в пакеті додатків.
Люди все одно роблять це весь час (див. Програми React Native, які завантажують JavaScript із серверів), але технічно це заборонено. Головне, що приверне увагу Apple, якщо ви зробите якийсь App Store, який завантажує цілі речі, схожі на App.
EDIT (у 2020 році): від @Pylot у коментарях: Я знаю, що це давно, але тепер, принаймні технічно, ви можете завантажувати код, який не вбудований у програму, оскільки ви можете писати за допомогою JavaScript за допомогою webview. Не залишаючи свою відповідь неправильно чи що-небудь, я точно з вами погоджуюсь. але я щось шукав і знайшов цей пост по дорозі. Якщо хтось це бачить, це може допомогти їм.
Угоду SDK та інструкції щодо магазину програм було змінено (близько вересня 2010 р.).
Тепер ви, мабуть, можете використовувати будь-яку скомпільовану мову, яка буде компілюватись до того самого формату статичного файлу ARM, що і Xcode, і яка буде посилатися на (лише) загальнодоступні API у рамках Apple і бібліотеках. Однак ви не можете використовувати компільовану мову JIT, якщо не скомпілюєте весь об'єктний код перед тим, як подати на розгляд Apple.
Ви можете використовувати будь-яку інтерпретовану мову, якщо ви вбудовуєте інтерпретатор, і не дозволяєте інтерпретатору або програмі завантажувати та запускати будь-який інтерпретований код, відмінний від коду, вбудованого в пакет програм, перед тим, як подати його на розгляд Apple, або набравши вихідний код -в користувачеві.
Завдання C і C, ймовірно, як і раніше будуть найбільш оптимальною мовою програмування для всього, що вимагає високої продуктивності та останньої підтримки API (* див. Оновлення нижче), оскільки це ті мови, на які Apple націлює свої фреймворки iOS та налаштовує свої чіпсети процесора ARM. Apple також підтримує використання Javascript / HTML5 всередині UIWebView. Це єдині мови, для яких Apple оголосила про підтримку. У будь-якому іншому випадку вам доведеться знайти підтримку в іншому місці.
Але, якщо ви дійсно хочете, зараз у магазині iOS App є щонайменше півтора десятка перекладачів 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 приймає безпечні схеми програмування та додає сучасні функції, щоб спростити програмування, більше гнучкий і веселіший. Чистий арсенал Свіфта, підкріплений зрілими і улюбленими рамками какао та какао 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. Для розробки програм iOS потрібно використовувати платформу Xcode. У наступній версії, яка тепер доступна в бета-версії, Xcode 4 підтримує також C ++.
Також тепер можна використовувати OCaml для розробки додатків для iOS. Він не є частиною стандартного розповсюдження і вимагає змін, наданих компанією Psellos. Дивіться тут для отримання додаткової інформації: http://psellos.com/ocaml/ .
Це може бути стара тема, але я хотів би згадати Appcelerator Titanium , який дозволяє кожному, хто знає HTML5 / JavaScript / CSS, розробляти додатки iOS.
Наразі дозволено лише Objective-C ... але кілька місяців тому ви можете писати сценарії, які будуть інтерпретовані у вашій програмі.
Тож ви можете написати інтерпретатор LUA або інтерпретатор Python, а потім написати якусь частину програми цією мовою сценаріїв. Якщо ви хочете, щоб ваша програма була прийнята в App Store, ці сценарії повинні бути в комплекті з додатком (наприклад, ваша програма не може завантажити його з Інтернету)
переглянути нові правила магазину додатків
Cilj-C - основна мова, що використовується.
я вважаю, що існує фреймворк mono touch, який можна використовувати з c #
Adobe також працює з деякими інструментами, одним з яких є цей пакувальник iPhone, який може використовувати код ActionScript
Ви можете використовувати мову програмування "smart BASIC". Це справжня, але дуже вдосконалена мова BASIC з усією своєю потужністю та простотою. Використовуючи свій безкоштовний SDK, код BASIC можна легко опублікувати як окремий додаток App Store. В App Store є багато додатків, написаних мовою програмування "smart BASIC".