業務ソフトとiPhoneプラットホーム

2010年5月10日(月)
新居 雅行

ネイティブ開発とWeb開発の方向性

iPhone向けのアプリケーションには、ネイティブ・アプリケーションとWebアプリケーションがあります。後者の「Webアプリケーション」は、搭載ブラウザのSafariで稼働するタイプものを差しており、サーバー・アプリケーションということでありません。iPhoneの世界ではそういうものを「Webアプリ」ということが多いので、本稿でもその用語を使うことにします。

Webアプリについては、基本的にはHTML/CSS/JavaScriptといった仕組みで作るので、iPhoneだからという特殊性はあまりありません。画面サイズと入力デバイスの違いに気をつけるのが基本ですが、iPhone独自の仕様をうまく取り込むとより最適化されます。

例えば、画面幅、拡大縮小の動作、回転したときの動作、iPhone特有のイベントの処理を組み込みます。他の環境と共通に使うとなると特別な仕組みの組み込みは考えどころでもありますが、iPhone特有の機能はそんなに多くはありませんので、Appleの「Safari Dev Center」のサイトなどでチェックをしておくことをお勧めします。

このWebアプリは、iPhoneがアメリカで発売された2007年から使える手法で、Appleは主としてセキュリティ的な理由を掲げてネイティブ・アプリケーションの開発はできないようにしていました。しかしながら、2008年にSDKをリリースし、App Storeでの配布が始まった事で爆発的なブームになったことは記憶が新しいでしょう。

もちろん、ネイティブでないと作れないアプリケーションがあるのは確かですが、Webアプリへの注目が少ないのはなぜでしょうか。いろいろ理由はあるとしても、大きいのはApp Storeへの登録の有無があります。とりわけ、App Store開設当初だと、掲載すること自体がそれなりに目立ったので、不特定多数への配布には有利です。現状はもはや登録アプリが多いのでそういうメリットは少ないかもしれません。そして、業務アプリではWebアプリである方が都合がいい場合は多々あるでしょう。

まずはネイティブかWebかを考える

業務ソフトの場合、どういう順番でプランが立つかはケース・バイ・ケースですが、iPhoneで行くぞということになったら、次に考えるのはWebアプリなのか、ネイティブ・アプリなのかです。Webアプリのメリットはなんと言ってもクライアントに配布しなくてもいいという点で、管理の軽減があります。その一方で、機能制約がありますし、一番大きなポイントは通信が切れた場合に一切利用できなくなってしまうところです。

ネイティブ・アプリの場合は常に利用できるのがメリットですが、業務アプリではサーバにあるデータベースを使うことが恐らく前提になるので、通信が使えないときのケアは作り込む必要があり、それも単純には済まない場合もあるでしょう。いずれにしても、一長一短があり、慎重に結論を付けたいところです。本稿では、ネイティブ・アプリケーションとして作ることにします。しかしながら、Webアプリも作成できることは検討事項として忘れないようにしましょう。

ネイティブ・アプリケーションのことはこれからたっぷりと説明するので、Webアプリケーションの開発について簡単に解説しておきましょう。HTML/CSS/JavaScriptなので、もちろんエディタでも開発できますし、Eclipseなどでも開発は可能です。HTMLなどの開発結果をサーバーに置くでしょうから、iPhone実機上で都度都度デバッグするというやり方も可能です。

一方、Appleからは「Dashcode」というWebアプリケーションの開発ソフトがリリースされています。ページの開発を、コンポーネントを並べて行くようにできるというのがまずは1つのメリットとして挙げられます。

また、JavaScriptやCSSのライブラリが用意されていて、例えば処理中を示すぐるぐる回るギアのようなオブジェクトをドラッグするだけで使えるようになるなど、スクラッチから作る場合に大変な作業も、ある程度は軽減されます。そして、iPhoneシミュレータで動作させてのデバッグも可能です。

Dashcodeでの開発はもちろん検討すべきで、一度は使ってみる事はお勧めします。ただし、生成されるHTMLなどがちょっと独特なので、普段はコードを手で書いている人ほど戸惑うところは多いかもしれません。Dashcodeでラフに作って後はコードに手を入れるというのも、構成が複雑でやや大変です。まだまだこういったあたりもノウハウの蓄積が必要な段階です。

フリーランスのトレーナー、コンサルタント、プログラマー、ライター。MacやiPhoneを中心としたトレーニング、FileMaker、 Access、MySQLを軸にしたWeb系の開発などが主な業務。iPhoneアプリ「郵便番号検索」を開発し、App Store開設初日に掲載される。Apple認定トレーナー、Apple認定システムアドミニストレータ、Microsoft認定トレーナー、 FileMaker認定デベロッパー。著書に「iPhoneアプリケーションプログラミング」など。京都工芸繊維大学大学院修了。

連載バックナンバー

Think ITメルマガ会員登録受付中

Think ITでは、技術情報が詰まったメールマガジン「Think IT Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。

Think ITメルマガ会員のサービス内容を見る

他にもこの記事が読まれています