対象となる端末の処理速度を基礎に
ネイティブアプリ開発でまず重要となるのは、ネイティブアプリの対象となるパソコンやモバイルなどの情報端末の処理速度や容量を確認する事です。これは容量や処理速度をいくらでも後付けできるパソコンではそれほど重要では無いのですが、サイズによって後付けのできないモバイルではより重要性の高い工程となります。いくら優れた機能を持ったネイティブアプリでも、対象となる情報端末の処理能力を超えてしまえばどうさせず、容量を超えてしまえばデータをインストールすることさえできません。膨大なデータをウェブ上のサーバーに移すこともできるWebアプリとはことなり、ネイティブアプリは対象となる情報端末でデータと処理を完結させることが必要不可欠なのです。端末の形態に合わせたユーザーインターフェース
そして情報端末のスペックの次に重要なのが、対象となる情報端末に合わせたユーザーインターフェースです。パソコンならばマウスやキーボードに合わせるのが常識ですが、モバイルなどの端末はテンキー入力かタッチパネル、中にはサイズを縮小したミニキーボードなど多彩な入力装置の種類があり、それぞれに合わせたユーザーフェースを用意しなければならず、なおかつ多くの使用者が無理なく使える使いやすさも追求しなければならないのです。マウスやキーボードならば、これまでのパソコン用のアプリケーション開発のノウハウが活かせますが、タッチパネルなどモバイル用のユーザーインターフェースはこれからようやく発展する段階であり、現状では個々人の柔軟な発想とセンスが問われることになります。
汎用か専用か
そしてネイティブアプリで重要となる最後のポイントが、そのアプリケーションが様々な情報端末で無理なく活用できる汎用性のあるアプリにするか、もしくは特定の情報端末でしか使用できない専用アプリにするかと言うことです。勿論処理速度や容量の問題はありますが、現在のプログラミング言語にはいくつかクロスプラットフォームというプラットフォームや端末の種類に左右されずに動作する実行環境を有している言語が開発されています。そのクロスプラットフォームを活用することで、パソコンでもモバイルでも同様に動作する汎用性の高いネイティブアプリを開発することも可能となっているのです。ただし、ネイティブアプリの目的によっては汎用性よりも、特性の端末でしか動作しない専用アプリにする方が、端末自体の機能を極限まで追求したアプリケーションを開発するのに有利となる場合があります。