- ベストアンサー
アプリはなんというプログラミング言語で出来てるの
Androidのアプリはなんというプログラミング言語で出来てるのですか?
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
Androidアプリと呼ばれているものは、正確に言えば Androidが標準で備えているソフトウェアインターフェイスを対象として なんらかのプログラミング言語で作られた実行ファイル群ということになります。 実行ファイルは、大別すると二種類あって バイナリーファイルとテキストファイルがあります。 テキストファイルの実行ファイルは Windows,MS-DOSのバッチファイルや、UNIX,Lnux等で使われるシェルスクリプト 日本発で世界で使われているRubyや、昔からあるPerlや、最近流行りのPythonなど さまざまなものがあります。 こういったものは、通常Androidでは利用できないので 手軽に自動処理を構築できないことは AndroidやiOSの不便なところの一つとも言われます。 (Windows,OS X,Linux等ではわかっている人が盛んに活用しています) バイナリー形式の実行ファイルは、Windowsでは拡張子.EXEのファイルが有名で MS-DOSでは拡張子.COMのものもありました。 こういったものは、それぞれのOS特有のソフトウェアインターフェイスを対象とし その性質から、Windows用ソフトは、MacやLinuxでは動かない。 もちろんAndroidでも動きません。 同じWindowsブランドでも、いわゆるWindowsのソフトウェアインターフェイスは x86,x86-64(Intel64)といったCPUアーキテクチャーに依存しているので 通常のWindows用実行ファイルは、ARM搭載のWindows Phoneや 短期間に収束したWindowsRTでは動かず、そのシェア拡大の障壁となりました。 それを踏まえて、Androidのソフトウェアインターフェイスは 基礎となるLinux系OSのソフトウェアインターフェイスと Android用アプリ向けのものと、二系統があり 通常は、前者を利用することはできません(スマフォメーカーなどは利用できます) Android用としては、当初はDalvik仮想マシンがAndroid5.0以降はARTが 一般のAndroidアプリのソフトウェアインターフェイスとなっています。 これらが、CPUの違いを吸収することによって ARMでも、x86,x86-64でもMIPSやPOWERでも 共通のアプリが使えるようになっています。 Linux由来のライブラリーなどは、DalvikやARTを通して利用されます。 それらは製品開発者によって、それぞれのCPUアーキテクチャーに合わせて 再構築されているため、たとえばマウスやペンタブレットやウェブカメラなども Android端末の機種によっては利用可能になっています。 要約すれば、そのソフトウェアインターフェイスに対応した APKに準拠したバイナリーファイルであれば それを開発するために、どんな言語が使われても構いません。 前述のPythonで書かれたテキストファイル(スクリプト)を APKに変換するツールも存在しているくらいです(よく知りませんが) 逆に、AndroidでPythonのスクリプトが動くように Python環境を導入することもできるようになっているようです。 閑話休題、一般的なAndroid向けの開発は Android SDKにも含まれているEclipseなどでしょう。 ほかにもいろいろありますが、入門書なども探しやすいと思います。 また、現在ではゲーム開発では、他プラットフォーム対応のために Unityなどを利用して開発されることが多くなっているようです。 メジャーなゲームソフトの多くが、AndroidとiOSに対応していますが Unityなどを利用して、開発コストを抑えている場合が多いはずです。
その他の回答 (3)
- amanojaku1
- ベストアンサー率54% (265/488)
【iOS/Android】モバイルクロスプラットフォーム開発環境まとめ http://www.iandprogram.net/entry/2015/03/29/0030 ちょっと分かりづらいかもしれませんが「Java、C++、Python、Ruby、JavaScript、C#、Scala、Kotlin、Clojure」が言語で、「libGDX、Cocos2d-x、Qt、Kivy、RubyMotion、cordova、Unity、Xamarin」はフレームワーク(ライブラリー)などです。
お礼
ありがとうございました。
- OKWavex
- ベストアンサー率22% (1222/5383)
きまってません
お礼
ありがとうございました。
- AsarKingChang
- ベストアンサー率46% (3467/7474)
作った人が自由に決めれるよ。 ほとんどは、Java系だけど、 C言語だったり、AS3(Air系)なんてこともあって、 JavaScriptなんてなこともあったり、自分が使いたいものを選んで開発。 とりあえず、触ってみたいだけ?なら、 https://www.microsoft.com/ja-jp/dev/products/visual-studio-2015.aspx Androidのエミュレーター入りで、いきなり実行可能+実機にも転送可能な 統合開発ツールを試してみればいいかなと(無料) ただし、パッケージは、恐ろしくでかい! 遅いPCだとインストールに半日~1日かかるかも! もちろん、Windowsアプリも作れるので、勉強用にはこの程度で十分。
お礼
ありがとうございました。
お礼
ありがとうございました。