コンピューターでの「移植」とは、ある機種で動いているプログラムを、別の機種でも動くように書き換えることです。
でもここでは、別のプログラミング言語への書き換えを指すと思ってください。同じパソコンを使います。
例えば、データベースソフトの Access を使って、VBA で書かれたプログラムがあるとします。ちゃんと動く状態のシステムです。
*VBAとは、Visual Basic for Applications のこと
このシステムを、他のプログラミング言語である JavaScript や Java、または PHP などで移植してみるのです。
データベースは、そのまま Access を使ってもいいし、MySQLなどに変えてみるのも勉強になります。
プログラムの移植に集中するためには、最初はデータベース部分にそのまま Access を使ったほうが簡単だと思います。
一旦プログラムが完成してから、MySQLに変更してみると良いでしょう。
既存のシステムを移植してみるメリットは、「イメージが明確なので作りやすい」ことです。
既に目の前に完成形(答え)があるので、当然ですよね。
同じ動きをするシステムを作ればいいだけです。ゼロから設計する必要はありません。
Access の VBA で書かれたプログラムは、もちろんそのままでは JavaScript で動きません。
変数の宣言の仕方が違うし、あらかじめ用意されている関数も違います。ユーザー定義関数や、基本的な構文も、ちょっと書き方が変わります。
さらに、同じ働きの関数でも、関数名の違いがあったり、使い方に違いがあることもあります。
もし同じ関数が無い場合は、自分で作ってみることも必要になります。
それらの違いを調べて、プログラムが動くように書き換えることで、実力が付くのです。
すると、これまで曖昧だったことが、より深く理解できるようになります。「そうだったのか!」と納得できる感覚があることでしょう。
また、プログラムを移植する過程で、プログラミング言語ごとの得意な点、不得意な点も見えてきます。
例えば Access は、簡単なシステムなら、ほとんどプログラミングすることなく、作れてしまいます。
システムのユーザー画面やクエリは GUIで組み立てるだけだし、フォームやレポートにデータを表示するのも簡単です。
ところが、同じ処理を JavaScript や PHP で行なおうとすると、手間がかかります。
ユーザー画面は HTML で記述しなければならないし、データを表示するためには、データベースに接続するプログラムを書かなければなりません。SQLの知識も必要です。
これらは全て、文字を入力する作業なので、結構面倒です。
画面構成など、データの表示の仕方も、工夫が必要になります。
逆に JavaScript や PHP は、インターネット上のデータを扱うことは得意です。
JavaScript は基本的にWebブラウザ上で動作するプログラミング言語だし、PHP はWebサーバー上で動かすことが多いからです。
インターネットに接続した環境で動かすことが前提なので、相性が良いのです。
また Access や VB はとても優れた開発ツールですが、使用するには購入しなければなりません。
それに対し、JavaScript は、Webブラウザさえあれば動作できる手軽さがあります。Java や PHPも、無償で入手することができます。
特にJavaは、利用範囲が広く、機種を問わずに動くメリットがあります。OSに依存しないので、将来的にも安心して利用できます。
以上のように、プログラミング言語ごとの特徴を理解しながら、移植することで、とても実力がアップします。
したがって、プログラミング初心者におすすめの学習方法です。プログラミングの基本を習得したら、次の段階として、ぜひ挑戦してみてください。
「移植は実際にどうやるの?」という方は、以下の順で当講座を学習してください。
1.Microsoft Access初心者入門講座
2.Access SQL初心者入門講座
3.Access VBA 初心者入門講座
4.JavaScript初心者入門講座
5.Java初心者入門講座
6.MySQL初心者入門講座
7.PHP初心者入門講座
同じシステムを、各プログラミング言語やデータベースで作るという構成になっているので、移植の勉強になります。
JavaScript からデータベースを扱えるようになると、結構用途が広がるので、面白いです。アイデア次第で、いろいろ活用できます。
私もインターネットで収集した情報を、データベースに蓄積し、分析して利用するのに使っています。
【ワンポイント】
*DAOやADOなどを使う場合は、Access でもデータベースに接続するプログラムを書く必要があります。
その方法は、「Access VBA 初心者入門講座」で解説しています。