그렇다면 모바일 OS의 맥락에서 우리가 안드로이드를 지원한다고 말하는 이유는 무엇입니까?
"우리"가 누구인지는 알 수 없습니다. 숙련 된 컴퓨터 프로그래머는 그런 말을하지 않을 것이고, 심지어 당신이 만든 견적서도 그렇게 말하지 않을 것입니다.
모든 OS의 역할은 특정 언어 권한을 지원하지 않는 명령을 실행하는 것입니까?
수정. 뿌리를 내린 안드로이드 기기가 있다면 원하는 언어를 Android로 포팅 해보십시오. 맞춤 ROM 모드에서는 지원되는 언어로 원하는 프로그램을 실행할 수 있습니다.
그러나 대부분의 사람들은 Android 기기를 뿌리 째 뽑지 않았습니다. 일반적인 Android 기기에서 Android 프레임 워크는 프로그래밍에 쉽게 사용할 수있는 것에 제한을두고 있습니다.
후자의 시나리오에서는 프로그래밍에 완벽한 유연성을 가지지 않을 것입니다. 아마도 JVM 기반 스크립팅 언어를 통합 할 수 있지만 C++ 사용에 어려움이있을 수 있습니다. OS —에서 문제가되지 않습니다. 서버 자체가 C++ 프로그램을 완벽하게 실행할 수 있습니다. 이것은 여러분의 코드가 실행되고있는 프레임 워크의 문제입니다 (요즘 WAR를 사용하는 사람들은 서버 측 Java 개발에서 일한 이래로 오랜 시간이 걸렸습니다).
Android 개발을위한 기본 프레임 워크는 Java를 기반으로합니다. WebView
의 호의에 따라, 이것은 또한 하이브리드 개발 (HTML/CSS/JS)을위한 후크를 열어 준다.NativeActivity
을 사용하면 C/C++로 전체 Android 앱을 작성할 수 있습니다. 다양한 툴체인을 사용하면 Android 프레임 워크에서 작동하는 것으로 컴파일되는 다른 언어 (예 : Kotlin)로 작성하고 스크립트 언어를 내장 할 수 있습니다. 그러나 여전히 프레임 워크를 고수 할 필요가 있습니다. 프레임 워크는 수행 할 수있는 작업과 수행 할 수있는 작업에 제한을두고 있습니다. 이것은 안드로이드 OS의 잘못이 아니라 오히려 프레임 워크입니다.
더 많은 android and java와 매우 흡사합니다. android는 Java 기반입니다. –
OS가 자체적으로 언어 프로그램을 전혀 실행하지 않습니다. 컴파일러/인터프리터/링커가 필요합니다. 안드로이드 OS에서 C# 컴파일러를 추가하십시오! – Rohit5k2
BTW C++에서 NDK와 코드를 사용하거나 C#에서 Xamarin과 코드를 사용할 수 있습니다. – Rohit5k2