iPhone, iPod Touch 및 iPad (iOS) 응용 프로그램을 개발하는 데 사용할 수있는 프로그래밍 언어는 무엇입니까?
또한 iOS가 지원할 프로그래밍 언어의 양을 확장 할 계획이 있습니까?
답변:
Apple은 비 목표 C / C / C ++ 앱에 대한 제한을 해제했습니다. 앱 번들에없는 코드는로드 할 수 없습니다.
MonoTouch를 사용하면 .NET 언어를 사용할 수 있습니다. C #은 직접 지원되지만 Windows가있는 경우 모든 .NET 언어로 어셈블리를 만들어 사용할 수 있습니다.
애플이 다른 언어를 직접 지원할 것이라는 소문이 있습니다. 루비는 계속 들리지만 소문 일뿐입니다.
Lua는 많은 앱에서 게임 로직에 사용되고 있다고 생각합니다.
편집 (2018 년) : 일반적으로 iOS 용으로 컴파일하거나 언어 인터프리터를 설치할 수있는 모든 언어를 사용할 수 있습니다. 할 수없는 가장 중요한 것은 앱 번들에없는 코드를 인터넷에서로드하는 것입니다.
어쨌든 사람들은이 작업을 항상 수행하지만 (서버에서 JavaScript를로드하는 React Native 앱 참조) 기술적으로는 허용되지 않습니다. 전체 앱과 유사한 것을로드하는 일종의 App Store를 만들면 Apple의 관심을 끌 것입니다.
편집 (2020 년) : @Pylot에서 주석 : 오래 전 일이라는 것을 알고 있지만 이제는 웹뷰를 사용하여 JavaScript로 작성할 수 있으므로 적어도 기술적으로 앱에 포함되지 않은 코드를로드 할 수 있습니다. 당신의 대답을 지키지 않는 것은 잘못된 것입니다. 나는 당신에게 확실히 동의합니다. 그러나 나는 무언가를 찾고 있었고 도중에이 게시물을 발견했습니다. 누군가 이것을 본다면 도움이 될 것이라고 생각했습니다.
SDK 계약 및 앱 스토어 지침이 변경되었습니다 (2010 년 9 월경).
이제 Xcode가 생성하는 것과 동일한 정적 ARM 개체 파일 형식으로 컴파일되고 Apple의 프레임 워크 및 라이브러리 내의 공용 API에만 연결되는 컴파일 된 언어를 사용할 수 있습니다. 그러나 검토를 위해 Apple에 제출하기 전에 모든 개체 코드를 미리 컴파일하지 않는 한 JIT 컴파일 언어를 사용할 수 없습니다.
인터프리터를 임베드하는 한 모든 인터프리터 언어를 사용할 수 있으며, 인터프리터 또는 앱이 검토를 위해 Apple에 제출하기 전에 앱 번들에 빌드 된 코드 또는 입력 된 소스 코드 이외의 해석 가능한 코드를 다운로드하고 실행하는 것을 허용하지 않습니다. -사용자에 의해.
Objective C와 C는 Apple이 iOS 프레임 워크를 대상으로하고 ARM 프로세서 칩셋을 조정하는 언어이기 때문에 고성능과 최신 API 지원 (* 아래 업데이트 참조)이 필요한 모든 것에 가장 적합한 프로그래밍 언어 일 것입니다. Apple은 또한 UIWebView 내에서 Javascript / HTML5 사용을 지원합니다. Apple이 지원을 발표 한 유일한 언어입니다. 다른 곳에서 지원을 찾아야 할 것입니다.
그러나 정말로 원한다면 iOS 앱 스토어에 최소 6 개의 BASIC 인터프리터가 있으므로 이제 "Stone Age"프로그래밍 방법론도 허용됩니다.
추가됨 : (*) 2014 년 말부터 Apple의 새로운 Swift 프로그래밍 언어를 사용하여 앱을 개발할 수도 있습니다. 2015 년 초부터 제출 된 바이너리에는 64 비트 (arm64) 지원이 포함되어야합니다.
오랫동안 사용 된 Objective-C를 서서히 폐기 할 계획에 따라 Apple은 Apple iOS 장치 및 Apple Macintosh 컴퓨터에서 실행할 앱과 응용 프로그램을 설계하기 위해 Swift라는 새로운 프로그래밍 언어를 도입했습니다.
Apple은 다음과 같이 말합니다. " Swift는 C 호환성의 제약없이 C 및 Objective-C를 기반으로 구축 된 iOS 및 OS X 앱용 새로운 프로그래밍 언어입니다. Swift는 안전한 프로그래밍 패턴을 채택하고 최신 기능을 추가하여 프로그래밍을보다 쉽고 간편하게 수행 할 수 있습니다. 유연하고 더 재미 있습니다. 성숙하고 많은 사랑을받는 Cocoa 및 Cocoa Touch 프레임 워크가 뒷받침하는 Swift의 깔끔한 슬레이트는 소프트웨어 개발 작동 방식을 재창조 할 수있는 기회입니다. "
iPhone, iPod Touch 및 iPad (iO) 응용 프로그램을 개발하는 데 사용할 수있는 프로그래밍 언어는 무엇입니까?
Ruby, Python, Lua, Scheme, Lisp, Smalltalk, C #, Haskell, ActionScript, JavaScript, Objective-C, C ++, C. 바로 지금 제 머릿속에 떠오르는 것들입니다. 수천 명은 아니더라도 수백 개가있을 거라고 확신합니다. (예 : 당신이 사용할 수없는 이유를 이유가 없다 어떤 MonoTouch, 즉, VB.NET, F 번호, Nemerle, 우우, 코브라와 .NET 언어, ...)
또한 앞으로 iO가 지원할 프로그래밍 언어의 양을 확장 할 계획이 있습니까?
확실한. 이 행성의 거의 모든 프로그래밍 언어 커뮤니티는 현재 iOS에서 언어를 실행하기 위해 노력하고 있습니다.
또한 많은 사람들이 iPod touch, iPhone 및 iPad와 같은 터치 장치 용으로 특별히 설계된 프로그래밍 언어 (예 : Phil Mercurio의 Thyrd 언어)를 작업하고 있습니다.
iOS (및 Mac OS)의 프로그래밍 언어는 Objective-C 및 C입니다. 현재 베타 릴리스에서 사용할 수있는 다음 버전에서 Xcode 플랫폼을 사용하여 iOS 앱을 개발해야합니다. Xcode 4는 C ++도 지원합니다.
이제 iOS 애플리케이션 개발에 OCaml을 사용할 수도 있습니다. 표준 배포의 일부가 아니며 Psellos 회사에서 제공하는 수정이 필요합니다. 자세한 내용은 http://psellos.com/ocaml/ 을 참조하십시오 .
이것은 오래된 스레드 일 수 있지만 HTML5 / JavaScript / CSS에 정통한 모든 사람이 iOS 애플리케이션을 개발할 수 있도록 허용하는 Appcelerator Titanium 을 언급하고 싶습니다 .
지금은 Objective-C 만 허용되지만 몇 달 전부터 애플리케이션에서 해석 될 스크립트를 작성할 수 있습니다.
따라서 LUA 인터프리터 또는 Python 인터프리터를 작성한 다음이 스크립팅 언어로 애플리케이션의 일부를 작성할 수 있습니다. 응용 프로그램을 App Store에서 수락하려면 이러한 스크립트를 응용 프로그램과 함께 제공해야합니다 (예 : 응용 프로그램은 인터넷에서 다운로드 할 수 없음).
목표 -c는 사용되는 기본 언어입니다.
C #과 함께 사용할 수 있는 모노 터치 프레임 워크 가 있다고 생각합니다 .
Adobe는 또한 일부 도구에서 작업하고 있습니다. 하나는 액션 스크립트 코드를 활용할 수있는 이 iPhone Packager 입니다.
"스마트 BASIC"프로그래밍 언어를 사용할 수 있습니다. 그것은 모든 힘과 단순함을 가진 진짜이지만 매우 진보 된 BASIC 언어입니다. 무료 SDK를 사용하면 BASIC 코드를 독립형 App Store 애플리케이션으로 쉽게 게시 할 수 있습니다. App Store에는 "smart BASIC"프로그래밍 언어로 작성된 많은 앱이 있습니다.