2013年7月25日木曜日

Android・iOSの次はTizen?

Tizenの 開発中止疑惑 が飛び交う中、intel主催のTizenセミナーに
参加してきました。

参加してみたところ、



Tizenの開発は順調に進んでいます。笑

疑惑後もSDKは頻繁に更新されており、Samsungのテスト端末の貸し出しもしてもらえました。
そもそもなくなるOSならお金かけて無料セミナーを開かないでしょう。

それではセミナーで分かったことをまとめます。



Tizenの概要
intel、Samsungが推進している新しいスマートデバイス向けOSです。
モバイル端末のみでなく、カメラ・家電・車載機にも対応する方針で、
現状のAndroidやiOSでは難しいこれらの機器間の連携も目指しているようです。



Tizenの開発言語
Tizenの開発言語は大きく分けて二つです。
  1. C++
    ネイティブの言語です。実際に触ってみて、テスト端末にプリンストールされているC++のアプリを起動しましたが、相当速いです。Tizenの可能性を感じました。
  2. HTML5
    Tizenの目玉となる言語です。HTML5と聞いて、Webベースのもっさりしたアプリがメインになるのかと思っていましたが、実際の端末のデモで、ゲームや3Dがストレスなく動いていました。

    ローカルに置いているWebサイトをブラウザで起動させると、サクサク動く訳ですが、それをOSで起動するようなイメージです。
    書き方としてはCSSでデザインを、JavaScriptで複雑な処理を書き、それらを取りまとめるのがHTML5という、よくあるWebサイトな感じです。<a>タグのリンク先として、アプリ内のウィンドウを指定できるのでAndroidのインテントをリンクとして扱う感じでした。iOSやAndroidで面倒くさいUIが、すごく簡単に実装できたりするのがHTML5のいいところです。

    例えば
    password :

    のようなデザインが

    <input placeholder="パスワードを入力" type="text" />

    の一行で書けてしまいます。
    この「パスワードを入力」の部分がHTML5からの新機能らしいです。

    プログレスバーも

    <progress value ="60" max=100>

    たったこれだけで書けちゃいます。

    ダウンロード中 :60% 


    HTML5のシンプルさは以下のサイトが参考になります。

      HTML5とは何かを簡単にまとめてみた
カメラ、ファイル、動画、音声、描画など、だいたいのことはHTML5で出来ます。HTML5とC++を組み合わせたハイブリッドなアプリも作れるようなので、基本はHTML5で実装し、画像解析など速度が求められる部分はC++といった感じでしょうか。
C++では画像解析やマルチメディア処理などの高度なAPIが提供されるそうです。



Tizenの開発
Tizenの開発環境はAndroidと同じように、EclipseのIDEとTizen SDKのセットで提供されます。
開発環境の構築はすごく簡単です。

MacOS Xでインストールしましたが、インストーラーに従って次へ進むだけで、すべて完了しました。もちろん、Windows版とLinux版もあります。

Tizen SDK | Tizen Developers

Androidのようなもっさりしたエミュレーターに加え、Chromeベースのシュミレーターがあるのも、HTML5ベースならではといった感じ。こちらはビルドなしで即時にアプリの動作をチェックできて便利です。

お絵描きアプリや時計アプリなど、サンプルが25個も含まれていて、実際にサンプルのソースを見ていじったりするのが、理解の近道だと思います。

プロジェクトにはいくつかのカテゴリがあります。
  • Basic 
     HTMLが動くベースとなるプロジェクト
  • Tizen UI Framework
     Tizen独自のUIフレームワークが利用出来る標準的なプロジェクト
     jQueryMobileをベースとしています。
  • jQueryMobile 
     jQueryMobileを利用したプロジェクト
     Webサイト等、他のリソースと完全互換できます。
  • Tizen Web UI Builder Project
     GUIからビューを簡単につくることができるプロジェクトです。
     フォルダ構成が若干複雑になります。

セミナーではTizen UI Frameworkを使いました。JQM開発に慣れた方なら簡単に開発出来るようです。JQM?なにそれ?な私でもだいたい分かりました。

アプリのストア上でのカテゴリや、使用する機能の使用許可などはconfig.xmlに記載します。

Emulaterや実機での起動には開発者の署名が必要ですが、デバッグ時にはAndroid同様、適当なものでOKです。
IDE内からPreferences -> TizenSDK -> Security Profiles で設定できます。

まとめ
Tizenが出現すると、開発すべき言語が増えるのかと、憂鬱に考えていましたが、実際に触ってみて、HTML5を使った開発は案外シンプルで面白く、今まで開発言語の問題でスマホアプリ開発に踏み出せなかったWeb技術者の方でもスムーズにアプリ開発が出来るということで、近年のWebサイトの増加と同じようにアプリの種類が増えて、ユーザーにとってもメリットとなるのではないかと思いました。そう考えると、Tizenが第三極となりうるのかも。














0 件のコメント:

コメントを投稿