よいプログラム書くためには、どうすればいいか? を簡単に書きます。
「1から10までの和を求めるプログラムを書け」 という命題にどう書くでしょう。
プログラムを習いたての人に依頼すると、perlだと以下のようなプログラムも多く見かけます。
#!/usr/bin/perl
use strict;
my $n=10;
my $s=0;
for(my $i=1;$i< =$n;$i++) {
$s+=$i;
}print “s=”,$s,”\n”;
このプログラムで間違いはありません。
でも、このように書くとnが少ない数であればよいのですが、数万や数億のオーダーになった場合や和を求めるだけでなく、多数の項目の平均などを求めようとした場合、ぐっと遅くなってきます。
プログラム上級者であれば、以下のようになります。
#!/usr/bin/perl
use strict;
my $n=10;
my $s=(1+$n)*$n/2;
print “s=”,$s,”\n”;
このように和の公式を使ってnの値によって実行速度に違いがないようにします。
要するに、よいプログラムを書くためには、perlやPHP、Javaなどの言語を学習するだけでは、上達しないということです。色々な知識を学んだ結果としてよいプログラムを書けるようになります。
プログラムを習いたての人は、色々な知識も学習するとよいですよ。