
ソフト移植のあれこれ
移植とは、ある環境で動くように作られたプログラムを、別の環境でも動かせるように作り変える作業のことです。ちょうど、外国語で書かれた本を別の言語に翻訳するように、プログラムを別の環境に合う形に変換します。例えば、携帯電話で遊べるゲームを、机の上のパソコンでも遊べるようにしたり、窓用の事務システムを林檎用のパソコンでも使えるようにしたりする作業が移植にあたります。
移植は、単純に内容を写して貼り付けるような作業ではありません。異なる環境に合わせて、プログラムの指示を書き換えたり、必要な部品を追加したりする必要があり、専門的な知識と技術が求められる複雑な作業です。まるで、異なる気候の土地で同じ作物を育てるために、土壌を改良したり、水やりの方法を変えたりするようなものです。
移植が必要となる背景には、様々な理由があります。新しい機種への対応や、より多くの利用者への提供、開発費用の削減、古い仕組みの延命などが挙げられます。例えば、新しい携帯電話が発売された際に、既存のゲームを対応させることで、より多くの人に遊んでもらえるようになります。また、古い事務システムを新しいパソコンで使えるようにすることで、システムの寿命を延ばし、買い替え費用を抑えることができます。
異なる環境は、計算機の心臓部や記憶装置の大きさ、基本的な規則、画面の細かさなど、様々な点で異なります。そのため、単純に内容を写しただけではプログラムは正常に動きません。移植作業では、これらの違いを一つ一つ丁寧に調べ、適切な修正を加えていく必要があります。場合によっては、元の指示を大幅に書き直す必要が生じることもあります。これは、家の間取りに合わせて家具の配置や大きさを変えるようなものです。
そのため、移植には、元のプログラムに対する深い理解と、移植先の環境に対する専門的な知識が欠かせません。移植作業は、専門家の技によって、プログラムを様々な環境で活かす、重要な役割を担っていると言えるでしょう。