iPhoneヒューマンインターフェースガイドラインより。iOSベースのデバイスで動作するアプリケーション開発時の留意点で覚えておきたいことを書き出し。

-----■念頭に置くべきデバイスの特徴-----

<コンパクトな画面サイズ>
iOSベースのデバイスは、小さく、かつ高解像度の画面となるため、ユーザインターフェイスは重要なものに焦点を絞るようにする。

<メモリの制限>
メモリはiOSでは重要なリソースであり、メモリを管理することは非常に重要。iOS仮想メモリモデルにはディスクスワップスペースは含まれないため、デバイス上で利用可能なメモリより多くのメモリを割り当てないように注意する。

メモリ不足の状態が起こった場合、iOSは実行中のアプリケーションに警告を発し、問題が持続するとアプリケーションを終了させる場合がある。メモリ使用量の警告にすぐに対応し、タイミング良くメモリをクリーンアップするようにしておく。

<ユーザが目にするのは一度に1画面>
iOS環境とコンピュータ環境の最も大きな相違の1つは、ウインドウパラダイムである。モーダルビューの一部を例外として、ユーザがiOSベースのデバイス上で目にする画面は、一度に1つとなる。

iOSアプリケーションには、必要なだけ異なる画面を含めることができますが、それらの画面を順に見ることはできても同時に見ることはできない。

<ユーザが対話するのは一度に1つのアプリケーション>
フォアグラウンドに表示できるのは一度に1つのアプリケーションだけ。ユーザがあるアプリケーションから別のアプリケーションに切り替える場合、前のアプリケーションは終了される。

4.0より前のiOSでは、終了するアプリケーションはすぐにメモリから削除されていたが、iOS 4.0以降では、終了するアプリケーションはバックグラウンドに移行され、継続することも、しないこともできる。

この機能はマルチタスキングと呼ばれ、再起動されるか終了されるまで、アプリケーションをバックグラウンドに残しておくことができる。

ほとんどのアプリケーションは、バックグラウンドに移行すると一時停止状態になる。アプリケーションを再起動する場合、ユーザインターフェイスを再ロードすることなく、終了した時点からの実行の再開を簡単に行うことができる。

アプリケーションによっては、ユーザがフォアグラウンドで別のアプリケーションを実行している間、バックグラウンドでの実行を継続しなければならない場合がある。

たとえば、ユーザは別のアプリケーションを使っている間も、オーディオ再生アプリケーションに再生を継続することを求めると想定される。

----------------------------------------

メモリ周りとマルチタスキングはポイントかなと。WEBで調べてみると、iOS系アプリにはガベージコレクションが無いという記述もちらほら見かけるので、本来は基礎中の基礎ですが、いらないメモリをしっかりと開放することは重要ですね。
とりあえず現時点で整理している内容。

■携帯サイト開発における注意点

・対象端末の決定
 最初に必ずやる。最近は3G端末を対象とする場合が多い。
 また、例外端末も併せて決定する。
 (auだとキャッシュ容量が著しく少ない端末があったりする)

・画像関係
 使用できる画像のサイズ・形式に制限がある。通常はjpg、gif形式で横240pxとする。
 GIFアニメを作る場合、古い機種を考慮するなら2~3フレームに抑える(auは最大10フレームらしい)。

・記述方法
 3G端末以降を対象機種とするのであれば、XHTML(そうでないとDoCoMoでCSSを使えない)で記述する。
 古い機種まで対応するならHTMLで記述する。

・キャッシュ容量
 トータルで1ページ当たり100KB以内。auではテキスト部分が9KB以内という制限あり。

・その他PCサイトとの違い
 DoCoMoが外部CSSに対応していないため、3キャリア対応ならCSSは全て内部に記述。