【iOS/Android】モバイルクロスプラットフォーム開発環境まとめ
iOSとAndroidに対応するクロスプラットフォームな開発環境をプログラミング言語別にまとめます。iOSとAndroidで同時開発することで、大幅な労力の軽減が期待できます。
2015年現在、ほとんどの言語にスマホの開発環境があるので、自分の好きな言語でマルチデバイスアプリを作ることができます!
Java
libGDX
- 対応プラットフォーム
Android | iOS | HTML5 | Windows | Mac OS | Linux |
---|---|---|---|---|---|
libGDXはオーストリアのbadlogicgamesというコミュニティが中心となって開発しているJavaで書けるゲーム開発用のライブラリです。libGDXの日本での知名度はありません。しかし、世界的に見れば後に紹介するCocos2d-xと肩をならべるライブラリです。
例えば、Ingress(Google発売のゲーム)もlibGDXで書かれています。
そのため、StackOverFlowなどで調べれば手厚いサポートが得られるでしょう。英語ができない人にとって、日本語での情報が少ないところがネックです。
- libGDXの中の人が書いた本: Androidゲームプログラミング A to Z
- StackOverFlow質問数 : 15,893
- Qiita : libGDXに関する44件の投稿 - Qiita
C++
Cocos2d-x
- 対応プラットフォーム
Android | iOS | HTML5 | Windows | Mac OS | Linux |
---|---|---|---|---|---|
Cocos2d-xは中国の Chukong Technologies という会社が中心となって開発しているC++で書かれた主に2Dゲーム開発用のライブラリです。日本の会社での採用実績は多数あり、これからの2Dゲーム開発を担うライブラリと言えるでしょう。注意しておきたいのは、version 2.x系と vesion 3.x系は命名規則などを含めいろいろなところが違うということです。version 3.x系になって、シンプルで使いやすくなりました。これからやるなら当然 3.x系でしょう。
- 公式サイト : http://jp.cocos2d-x.org/
- StackOverFlow質問数 : 8,037
- Qiita : cocos2d-xに関する559件の投稿 - Qiita
Qt
- 対応プラットフォーム
Android | iOS | HTML5 | Windows | Mac OS | Linux |
---|---|---|---|---|---|
Qtはノルウェーに本社を持つTrolltech社が中心に開発しているGUIフレームワークであり、古くから使われている有名なものです。そのため、WEB上には大量のQtに関する情報や日本のフォーラムもあります。2013年12月に公式にスマートフォン対応しました。
- 公式サイト : http://qt-project.org/
- 参考入門記事 : Qtプログラミング入門 | densan-labs.net
- StackOverFlow質問数 : 44,162
- Qiita : Qtに関する138件の投稿 - Qiita
Python
Kivy
- 対応プラットフォーム
Android | iOS | HTML5 | Windows | Mac OS | Linux |
---|---|---|---|---|---|
Kivyはオープンソースコミュニティが中心となって開発しているGUIアプリ開発フレームワークです。日本語の情報は少ないので、英語のドキュメントを読み進めながらの開発となるでしょう。いちおう日本語の書籍が一冊出ています。内容は公式のドキュメントと同じみたいです。
- 公式サイト : http://kivy.org
- 参考入門記事 : kivyでデスクトップアプリケーション - くろねこ日記
- StackOverFlow質問数 : 3,792
- Qiita : Kivyに関する13件の投稿 - Qiita
Ruby
RubyMotion
- 対応プラットフォーム
Android | iOS | HTML5 | Windows | Mac OS | Linux |
---|---|---|---|---|---|
RubyMotionはアップル社に7年間務めていたLaurent Sansonetti氏が創業したHipByte社が中心となって開発しているクロスプラットフォームライブラリです。クロスプラットフォームを謳っている割にはWindowsにへの出力には対応していません。しかし、Rubyは日本由来ということもあってか、日本語の情報はそこそこあります。
- 公式サイト: http://www.rubymotion.com/
- 参考書籍(英語) : RubyMotion (The Pragmatic Programmers)
- StackOverFlow質問数 : 1,568
- Qiita : RubyMotion 158 posts - Qiita
JavaScript
cordova
- 対応プラットフォーム
Android | iOS | HTML5 | Windows | Mac OS | Linux |
---|---|---|---|---|---|
Cordovaは現在、Adobe社を中心として開発が続けられているHTML,JavaScript,CSSを使ってiOS,Androidのネイティブアプリケーションが作れるライブラリです。昔の名前はPhoneGapです。
JavaScriptの豊富なライブラリを使って様々なアプリケーションが作れます。日本のアシアル社が開発するweb統合開発環境Monacaなども便利です。ちなみにcordovaなどの技術を使ってHTML5で動くコンテンツをアプリ化したものをハイブリッドアプリと言います。
- 公式サイト: https://cordova.apache.org/
- 参考入門記事 : Cordovaを用いた開発環境を構築する - Build Insider
- StackOverFlow質問数 : 38,310
- Qiita : Cordovaに関する233件の投稿 - Qiita
C#
Unity
- 対応プラットフォーム
Android | iOS | HTML5 | Windows | Mac OS | Linux |
---|---|---|---|---|---|
Unityはサンフランシスコに本社を構えるUnity Technology社が開発している有名な3Dゲーム用のゲームエンジンです。有料版のみの機能もありますが、無料でも十分使えます。Unity5から、WebGL(HTML5)への出力を可能にしました。すごいですね。また、3Dだけでなく、最近では2Dのゲームなどの環境も割とととのって来ているという話です。JavaScriptでも書けます。
- 公式サイト: Unity - Game Engine
- 参考入門記事 : Unity入門 (全26回) - プログラミングならドットインストール
- StackOverFlow質問数 : 25,774
- Qiita : Unityに関する2014件の投稿 - Qiita
Scala, Kotlin, Clojure
libGDX
- 対応プラットフォーム
Android | iOS | HTML5 | Windows | Mac OS | Linux |
---|---|---|---|---|---|
他のJVMでもlibGDXが使えます。ちなみにlibGDXでiOS部分を実現しているのはRoboVMという、JVMでネイティブなiOSアプリを作れるようにするすごいツールです。
- Scala + libGDX : Develop games in Scala with libGDX -- Getting... - Will It Rain Tomorrow?
- Kotlin + libGDX : libgdx + Kotlin で開発する(セットアップ編) - Qiita
- Clojure + libGDX : CLAN : Clojure, LibGDX, Android, Neko アプリケーション構築キット
- 参考書籍: Androidゲームプログラミング A to Z