SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

話題のあの人にインタビュー!

グリーに学ぶ、スマートフォン開発向けWebアプリ要素の最新技術 ~HTML5、CSS3を採用したポイントとは


  • X ポスト
  • このエントリーをはてなブックマークに追加

積極的に採用された新技術~HTML5、CSS3、JavaScriptを駆使

 こういったスマートフォンならではのデザイン面の課題を考慮し、操作性の高いUIを実現するために、GREEではHTML5やCSS3などを採用。具体的には、HTML5のフォーム機能の各属性を使用して表示部分を節約したり、CSS3のレベル3セレクタの設定、アイコンのCSS実装などで、よりリッチな画面デザインを実装した。

 これまでの携帯向けサイトでは、デスクトップPCで表現されるWebのインタラクションを実装したくても、表示に限界があるのは仕方のないことだった。しかし、スマートフォン開発ではJavaScriptが使用できるため、これまで携帯では実現できなかったインタラクションがWebと同じように表現できる。

 さらに、iPhoneおよびAndroidのブラウザがWebkitベースで統一されていることにより、表示の差異を気にすることなくデスクトップの開発とほぼ同じ手法で実装が可能だ。デスクトップ開発で問題となる、Internet ExplorerにおけるCSS実装の不具合なども意識する必要が無くなるのだ。開発者にとっての一番のメリットはブラウザで作ったものが、ほぼそのままiPhone/Android上で動くと言うことだろう。

 また、実際の開発現場では「HTML5やCSS3を画面デザインに取り入れることで、開発の生産性が向上した」点が大きいと言う。例えば「ボタンを画像で作って、角を丸くして、グラデーションをかける」などは、これまでデザイナに依頼しないといけなかったが、これらがCSSで表現可能となったことにより、開発者自身で見た目の部分も調整することが可能となり、デザイナの負担を軽減することに繋がるのだ。

HTML5は「仕様は若いが、機能自体は枯れてエンジニアに身近なもの」

 まだ仕様が確定していないとされているHTML5の現状について、熊谷氏は以下のように捉えている。

 「きちんと動く範囲を把握していることが大事。仕様としては新しいが、機能としては昔からブラウザの拡張機能などとして既に実装されていた技術であり、それが広く一般的に使えるようになっただけ」

OSの違いによる問題

iOSアプリとAndroidアプリの違い

 ブラウザエンジンがWebkitで統一されているとはいえ、現状はOSが搭載するブラウザの違いによる問題点も残されている。例えば、AndroidのブラウザはiPhoneに比べまだ発展途上のため、gifアニメが非サポートのためうまく再生されず、代替策としては今のところHTML5のcanvas要素で実装するしかない。

 一方で、ブラウザとネイティブAPIとの連携の面では、Androidの方が考慮されている。現状HTMLのみでは実現できず、連携が必要な具体例として、写真のアップロード機能やローカルへのファイルアクセス機能などが挙げられるが、AndroidではJava側からブラウザに関数を定義できるため、JavaScript側から関数を呼ぶことで、Javaのネイティブのメソッドが呼ぶことができる。この連携により、HTML側の値をJavaのネイティブが変更でき、HTMLのみでは実現できないことをJava側で補完することが可能だ。

App Storeの制約

 また、iPhoneにおいては、独自の課題として、App Storeの制約などもある。App Storeを介さず、アプリが他のアプリをダウンロードすることは許可されていないため、これまでSNSでできたように、同じ画面に並ぶ複数のアプリの中からユーザーがそのときに遊びたいアプリのみを起動させることは不可能だ。しかし、「ユーザーがどのようなアプリで遊んだか」という情報はグリーのサーバが保有しており、ユーザーにゲーム履歴の一覧を表示することができるため、ユーザーはその一覧から遊びたいゲームを選ぶことで、携帯内にダウンロードされたアプリを起動できる仕組みになっている。

次のページ
グリーが考えるこれからのSNS

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
話題のあの人にインタビュー!連載記事一覧

もっと読む

この記事の著者

CodeZine編集部(コードジンヘンシュウブ)

CodeZineは、株式会社翔泳社が運営するソフトウェア開発者向けのWebメディアです。「デベロッパーの成長と課題解決に貢献するメディア」をコンセプトに、現場で役立つ最新情報を日々お届けします。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/5747 2011/02/10 10:16

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング