53
ハッシュタグ #devsumiC iOSAndroid 百花繚乱モバイル開発環境 を比較する at Developers Summit 13-C-4 2014/02/13 株式会社シリアルゲームズ エンバカデロ MVP / Delphi-ML 管理人 細川淳

Developer Summit 2014, 13-C-4 セッション

Embed Size (px)

DESCRIPTION

Developer Summit 2014, 13-C-4 セッション 「iOS に Android 百花繚乱モバイル開発環境を比較する」 のセッション原稿です。

Citation preview

Page 1: Developer Summit 2014, 13-C-4 セッション

ハッシュタグ

#devsumiC

iOSにAndroid

百花繚乱モバイル開発環境を比較する

at Developers Summit 13-C-4

2014/02/13

株式会社シリアルゲームズ

エンバカデロ MVP / Delphi-ML 管理人

細川淳

Page 2: Developer Summit 2014, 13-C-4 セッション

ハッシュタグ

#devsumiC

•株式会社シリアルゲームズ

–サーバ・クライアントをワンストップで作るゲーム会社!

–ゲーム以外のソフトウェアも沢山つくってます!

Page 3: Developer Summit 2014, 13-C-4 セッション

ハッシュタグ

#devsumiC

•最近クライアントサイドは

–Windows / OS X 両用アプリ

–Android / iOS 両用アプリ

を多く作っています。

→この経験を元に用途毎のベストな開発環境を考察します。

Page 4: Developer Summit 2014, 13-C-4 セッション

ハッシュタグ

#devsumiC

•知識が足りなかったり

•間違っていたら

•#devsumiC をつけて

#Shine

と、ツイート 輝け!かもしれない!

Page 5: Developer Summit 2014, 13-C-4 セッション

ハッシュタグ

#devsumiC

Android / iOS

普通の開発環境

Page 6: Developer Summit 2014, 13-C-4 セッション

ハッシュタグ

#devsumiC Native + SDK

•Android SDK

–Java

–Android Studio / eclipse

•利点

–純正!

–Java!(Dalvik)

Page 7: Developer Summit 2014, 13-C-4 セッション

ハッシュタグ

#devsumiC Native + SDK

• iOS SDK

–Objective-C

–Xcode

•利点

–純正!

–お、Objective-C

Page 8: Developer Summit 2014, 13-C-4 セッション

ハッシュタグ

#devsumiC Native+SDK

最新機能に対応

情報が豊富

環境・言語の強制

それ以上のモノは提供されない

しかも

両対応は無理!!

Page 9: Developer Summit 2014, 13-C-4 セッション

ハッシュタグ

#devsumiC Native+SDK

•純正ということ

–最新の機能に対応する

•Framework を使うモノだと、Framework の改修が必要

–情報が豊富

•メーカーの情報はもちろん、ユーザー同士の情報も豊富

Page 10: Developer Summit 2014, 13-C-4 セッション

ハッシュタグ

#devsumiC Native+SDK

•純正ということ

–環境・言語の強制

•Java / Objective-C

•AndroidStiduo / eclipse / Xcode

→学習コスト 人生は

有限なのよ!

Page 11: Developer Summit 2014, 13-C-4 セッション

ハッシュタグ

#devsumiC Native+SDK

•純正ということ

–それ以上のモノは提供されない

•便利なライブラリなどは、自分やユーザー同士で作らねばならない –google が提供しているモノもある

Page 12: Developer Summit 2014, 13-C-4 セッション

ハッシュタグ

#devsumiC

ライブラリを作ろう!

両対応にしよう!

百花繚乱の

戦国時代へ!

Page 13: Developer Summit 2014, 13-C-4 セッション

ハッシュタグ

#devsumiC

Android / iOS 両対応

開発環境詳細

Page 14: Developer Summit 2014, 13-C-4 セッション

ハッシュタグ

#devsumiC

HTML5 Script +

Framework

Mono Native + Framework

グループ分布

完成度

生産性

Native +

SDK

※個人の見解です

Native+SDK

HTML5

Script

Mono

Native+Framework

Page 15: Developer Summit 2014, 13-C-4 セッション

ハッシュタグ

#devsumiC

みんな知ってる!

HTML5 / JavaScript

Page 16: Developer Summit 2014, 13-C-4 セッション

ハッシュタグ

#devsumiC HTML5 グループ

•HTML5

•PhoneGap

•Sencha Touch

•Titanium

–JS + NativeUI

•etc...

Page 17: Developer Summit 2014, 13-C-4 セッション

ハッシュタグ

#devsumiC HTML5 グループ

•(程度の差はあれ)ほとんどの技術者が知っている

→技術者が多い

利点

Page 18: Developer Summit 2014, 13-C-4 セッション

ハッシュタグ

#devsumiC HTML5 グループ

•技術者のレベル差が大きい

–ある程度は書けてしまう

–チューニングに長けている者と、そうではない者の差が激しい

•ライブラリの使用についても同じ。

難点

Page 19: Developer Summit 2014, 13-C-4 セッション

ハッシュタグ

#devsumiC HTML5 グループ

オススメ!

•Webサービスのモバイル展開

–Facebook とか…

•HTML5 のせいじゃない!

by Sencha

Page 20: Developer Summit 2014, 13-C-4 セッション

ハッシュタグ

#devsumiC HTML5 グループ

個人的には

•Sencha Touch

–開発チームの HTML5 レベルがやばい(褒

–Win/Mac どちらでも apk/ipa が作れる

–日本代理店がある •キヤノンITソリューションズ

Page 21: Developer Summit 2014, 13-C-4 セッション

ハッシュタグ

#devsumiC

Scriptで作る!

LL + Framework

Page 22: Developer Summit 2014, 13-C-4 セッション

ハッシュタグ

#devsumiC Script グループ

•Python + Kivy

–iOS用(ゲーム向け?)

•Ruby Motion

–iOS 用

•Ruboto

–Android 用

•Adobe Air

•etc...

Page 23: Developer Summit 2014, 13-C-4 セッション

ハッシュタグ

#devsumiC Script グループ

•LL言語を使える!

–Python, Ruby, ActionScript3

利点

「好きな言語を使える」 というのは

全てに当てはまること

Page 24: Developer Summit 2014, 13-C-4 セッション

ハッシュタグ

#devsumiC Script グループ

•Adobe Air

–Flasher が力を発揮できる

•Ruby Motion

–LLVM の使用によりネイティブになる

利点

Page 25: Developer Summit 2014, 13-C-4 セッション

ハッシュタグ

#devsumiC Script グループ

•Adobe Air

–AVM で動作

•大分高速化されているそうです

•Python/Ruby

–iOS/Android 両対応している Framework が存在しない?

難点

Page 26: Developer Summit 2014, 13-C-4 セッション

ハッシュタグ

#devsumiC Script グループ

オススメ!

•Web API 経由のアプリなど

–やはり、LL言語は Web との親和性が高い(と思う)

Page 27: Developer Summit 2014, 13-C-4 セッション

ハッシュタグ

#devsumiC Script グループ

個人的には

•Adobe Air

–Flasher が狂喜する

–ゲームも結構出ている

–日本語情報も多いほう

Page 28: Developer Summit 2014, 13-C-4 セッション

ハッシュタグ

#devsumiC

.NETの知識が活きる

Mono touch

Page 29: Developer Summit 2014, 13-C-4 セッション

ハッシュタグ

#devsumiC Mono グループ

•Xamarin.iOS / Xamarin.Android

•Unity3D

Page 30: Developer Summit 2014, 13-C-4 セッション

ハッシュタグ

#devsumiC Mono グループ

•.NET Framework

•.NET Framework

•.NET Framework

•.NET Framework

•.NET Framework

•.NET Framework

•.tanasinn…

利点

Page 31: Developer Summit 2014, 13-C-4 セッション

ハッシュタグ

#devsumiC Mono グループ

•C#

–みんな大好き C# が使える!

利点

Page 32: Developer Summit 2014, 13-C-4 セッション

ハッシュタグ

#devsumiC Mono グループ

• Xamarin / Unity3D

– iOS に関してはネイティブにコンパイルされる

•Unity3D

–3Dゲーム用機能が充実!

–Boo/JavaScript(UnityScript)も、使用可能

利点

Page 33: Developer Summit 2014, 13-C-4 セッション

ハッシュタグ

#devsumiC Mono グループ

•.NET Framework

–利点でもあり難点でもあるかも

難点

Page 34: Developer Summit 2014, 13-C-4 セッション

ハッシュタグ

#devsumiC Mono グループ

•Xamarin

–GUI は Native を使う

•iOS - StoryBoard 等で構築可能

•Android - Layout.xml を使う

難点

Page 35: Developer Summit 2014, 13-C-4 セッション

ハッシュタグ

#devsumiC Mono グループ

•Unity3D

–GUI

•2D Framework / NGUI etc...

•日本語が…

難点

Page 36: Developer Summit 2014, 13-C-4 セッション

ハッシュタグ

#devsumiC Mono グループ

オススメ!

•Xamarin

–一般的なアプリ

•オールマイティ

•Unity3D

–ゲーム!ゲーム!ゲーム!

Page 37: Developer Summit 2014, 13-C-4 セッション

ハッシュタグ

#devsumiC Mono グループ

個人的には

•Xamarin / Unity3D

–アプリとゲームですみ分け •C#.NET Framework 好きなら、どっちも使えばいいじゃない!

Page 38: Developer Summit 2014, 13-C-4 セッション

ハッシュタグ

#devsumiC

回り回って Native!?

Delphi / C++Builder

+ FireMonkey

Page 39: Developer Summit 2014, 13-C-4 セッション

ハッシュタグ

#devsumiC Native + Library Delphi グループ

•Delphi

•C++Builder

※Xamarin.iOS はここでは除外

Page 40: Developer Summit 2014, 13-C-4 セッション

ハッシュタグ

#devsumiC Native + Library Delphi グループ

•Native ! Native ! Native ! Native ! Native ! Native ! Native ! Native ! Native ! Native ! Native ! Native ! Native ! Native ! Native ! Native ! Native ! Native ! Native ! Native ! Native ! tanasinn…

利点

Page 41: Developer Summit 2014, 13-C-4 セッション

ハッシュタグ

#devsumiC Native + Library Delphi グループ

• iOS / Android 双方とも Nativeになる

–やっぱり速い

–Android は NDK を使用

•OS API にシームレスアクセス

–Objective-C Bridge / JNI

利点

Page 42: Developer Summit 2014, 13-C-4 セッション

ハッシュタグ

#devsumiC Native + Library Delphi グループ

• iOS/Android 2つに完全対応

–GUI も1ソースで

•Windows/OS Xとも

単一コードベースで –メニューなど、それぞれの文化に合わせた変更は必要です

利点

ちなみに

Page 43: Developer Summit 2014, 13-C-4 セッション

ハッシュタグ

#devsumiC Native + Library Delphi グループ

•FireMonkey

–2D/3D 対応

–DPI フリー(FormFamily)

–Style 機構

•iOS/Android 両方の NativeUI の見た目に対応する – iOS7 への対応も1週間(iOS7Style の配布)

利点

Page 44: Developer Summit 2014, 13-C-4 セッション

ハッシュタグ

#devsumiC Native + Library Delphi グループ

•コンポーネント

–Indy や DB系コンポーネントも、使えます。

•Indy –総合ネットワークコンポーネント

•OS の API に依存しないため、

真の単一コードベースになります。

利点

Page 45: Developer Summit 2014, 13-C-4 セッション

ハッシュタグ

#devsumiC Native + Library Delphi グループ

•言語

–みんな知ってる C++

–僕も大好き Delphi Language

•完全なデバッグ

–ブレークポイントを置いたりといった普通のデバッグができる

利点

Page 46: Developer Summit 2014, 13-C-4 セッション

ハッシュタグ

#devsumiC Native + Library Delphi グループ

•Native

–Android では弱点でもある

•Delphi Language

–Pascal 系列の言語

–C++Builder なら C++

難点

Page 47: Developer Summit 2014, 13-C-4 セッション

ハッシュタグ

#devsumiC Native + Library Delphi グループ

•Style

–NativeUI の見た目を自分で描いている(PixelPerfect)

•見た目が変わった場合、新しい Style が必要になる

難点

Page 48: Developer Summit 2014, 13-C-4 セッション

ハッシュタグ

#devsumiC Native + Library Delphi グループ

•IDE が Windows

–OS X 上で動く IDE が出れば……

•iOSアプリの開発にはMacも必要 –Xcode Command Line Tools

–Windows on OS X

•VMware とかで。

難点

Page 49: Developer Summit 2014, 13-C-4 セッション

ハッシュタグ

#devsumiC Native + Library Delphi グループ

オススメ!

•一般的なアプリ

–オールマイティ

–ゲームも? •カスタムシェーダーにも対応している

•OpenGL ES

–Windowsアプリもあるなら 超オススメ!

Page 50: Developer Summit 2014, 13-C-4 セッション

ハッシュタグ

#devsumiC Native + Library Delphi グループ

個人的には

•Delphi

–FireMonkey を含めすべてのライブラリが Delphi Language で書かれている

Page 51: Developer Summit 2014, 13-C-4 セッション

ハッシュタグ

#devsumiC

結論

Page 52: Developer Summit 2014, 13-C-4 セッション

ハッシュタグ

#devsumiC

•一般的なアプリ

–Delphi

–Xamarin

•エンタテインメント分野

–Unity3D

※発言は個人の見解であり云々

GUI まで

1ソースで作るか

GUI はあくまで

NativeUI とするか

Page 53: Developer Summit 2014, 13-C-4 セッション

ハッシュタグ

#devsumiC 皆さんに期待するアクション

•興味を持ったツールに トライしてみましょう!

モバイルパビリオン(華しらべ)には 体験コーナーがあります。

ココへ 行こう!

今ココ