アプリケーションを開発する際に、まず考えねばならないことは、利用する端末です。
その限定が、開発環境や言語の策定に直結します。
さて、その上で、利用端末が複数種類出てきた場合、端末のOSを考える必要が出てきます。
OSが1種類の場合は、開発すべきアプリケーション自体は1つでよくなります。しかし、端末によって違う画面サイズに対して相応しい表示をするためには、相対的に表示方法を指定することが必要になります。
また、端末によってスペックが違う場合、一番低いスペックに合わせる必要があります。メモリをたくさん使用しない方法を使う、大きな数字が伴う計算はさせないなどの工夫が必要になります。
OSが複数存在する場合、一つのアプリケーションを開発した後に、細かい微調整を加えることになるか、場合によっては他言語への移植が必要になってきます。
他言語への移植の場合は、文字の置換でできることがほとんどですが、細かい間違いがないように、細心の注意が必要必要になります。この手段を取る場合、アプリケーション作成には、複数の言語に精通したプログラマーが全体を監修するか、それができない場合は、元の言語の専門家と新しく書き直す言語の専門家の指示で作成していくことが理想的です。新旧両方のアプリケーションがどのような処理をしているのかを理解し、どの時点でおかしな書き方をしてしまっているかがわからないと、全く同じ機能を持ったものの作成ができなくなります。